Announcement

Collapse
No announcement yet.

Programmieraufgabe Abgabesystem

Collapse
X
  • Filter
  • Time
  • Show
Clear All
new posts

  • Programmieraufgabe Abgabesystem

    Ich bekomme vom Abgabesystem die Rückmeldung, dass Testfall 9 und 11 zu einer NullPointerException führen. Wie soll ich jetzt bitte herausfinden wo der auftritt? Weil mit der Meldung vom Abgabesystem kann ich nichts anfangen. Da steht ja nicht einmal eine Zeilennummer dabei.. Ich würde mir einen Stacktrace wünschen weil dann wüsste ich wo ich beginnen soll zu suchen.
    Code:
    0009:ERR Ausnahme "java.lang.NullPointerException"
    Bitte um Rückmeldung.
    Last edited by haidelber; 09-04-2012, 12:53.

  • #2
    Bzgl Testfall 9 könntest du mal versuchen bei deinem Programm das entfernen der Wurzel in verschiedenen Fällen zu testen.
    Zumindest bei mir hat sich nämlich 9 in dem Zusammenhang gemeldet

    Edit: Seh grad in meinen Abgaben, dass Testfall 11 ebenfalls auf die gleiche root-änderung reagiert hat. Dürfte also wenn 9 und 11 ned klappen echt ein heißer Tipp sein.
    Last edited by Ezreef; 09-04-2012, 16:11.

    Comment


    • #3
      du kannst dir selbst testfälle basteln die einer nach dem anderen alle möglichen ausführungszweige durchtesten, so hab ich meine bugs getötet
      EVC Tutor SS16

      Comment


      • #4
        danke für den hinweis.. is halt blöd wenn man die balanciermethode aufruft mit null als AvlNode
        es ist zwar erhlich gesagt lächerlich das da beim abgabesystem der stacktrace ausgeblendet wird aber egal..

        Comment


        • #5
          naja, du könntest dir ein
          Code:
          try
          {
            // ...
          }
          catch(Exception e)
          {
            e.printStackTrace();
          }
          in deine methode zum debuggen einbauen, oder?

          Thomas

          Comment


          • #6
            man könnte, aber erstens tuts ne einfache if-bedingung, und zweitens wärs der absolute performance killer, drittens sollte eine exception einen fehler behandeln ... das ist aber eigentlich kein fehler weil es ja völlig legitim ist das dieser fall autritt
            EVC Tutor SS16

            Comment


            • #7
              Originally posted by DDoS View Post
              man könnte, aber erstens tuts ne einfache if-bedingung, und zweitens wärs der absolute performance killer, drittens sollte eine exception einen fehler behandeln ... das ist aber eigentlich kein fehler weil es ja völlig legitim ist das dieser fall autritt
              ich denke du hast das falsch aufgefasst, ich meinte nicht das man pokemon-exceptions verwenden sollte, falls das so verstanden wurde, NICHT MACHEN!
              in dem fall vom abgabesystem wird aber afair stderr verworfen und du musst dir den output auf stdout ausgeben (was afair nicht verworfen wird)
              es ging in meiner antwort auch nicht darum eine if-bedingung einzubauen welche bestimmte fälle behandelt sondern den fehler zu finden (wo er auftritt)

              Thomas

              Comment


              • #8
                omg tut mir leid, total falsch verstanden, ist sicher eine gute idee um an den stack trace zu kommen
                EVC Tutor SS16

                Comment


                • #9
                  Weiß vielleicht wer was es für testfälle sind bei 9 und 11?

                  Comment


                  • #10
                    Für alle die Probleme mit Testfall 9 und 11 bzw. 5 und 11 haben,
                    überlegt euch mal diese Zeile:

                    Code:
                    if (q != null && q == root && q.left == null && q.right == null)

                    Comment


                    • #11
                      Hallo!
                      Könnte hier jemand bitte einen Testfall angeben, der die selbe NullPointerException wie 0009 und 0011 wirft? Ich kann die Fehler zwar mit der "Pokemonexception"von oben abfangen, aber ich komm einfach nicht drauf, wo genau bei mir der Fehler liegt. Kann mir einfach nicht vorstellen, wo/wieso bei mir ein null-AvlNode rotiert werden würde.

                      Und mich würde interessieren, was man sich dabei denkt, den StackTrace im Abgabesystem nicht anzuzeigen. Ich spiel doch nicht "Wo ist Walter?" in meinem Code -_-

                      EDIT: Habs jetzt auch gefunden...Nacher schlägt man sich irgendwie aufn Kopf. Wer immer noch sucht, macht mal eine Instanz mit:

                      Code:
                      #insert 
                      1
                      #remove 
                      1
                      2
                      Last edited by ossi_c; 21-04-2012, 23:17.
                      ProgOS Tutor SS14

                      Comment

                      Working...
                      X