Wer kann diesen Code lesen?

Von: , Frage gestellt am Mo, 22. Nov 2004

IF NOT ( NOT (T-MSG OF ACP11C03-DX-WPOFN OF
DECISION-IO-AREA(1 : 9) = '000000000') AND NOT
(L-MSG OF ACP11C03-DX-WPOFN OF DECISION-IO-AREA(1
: 6) = 'RABATT'))
PERFORM 1080-PARAGRAPH THRU 1080-PARAGRAPH-EXIT
ELSE
PERFORM 1160-PARAGRAPH THRU 1160-PARAGRAPH-EXIT

Habe ich gerade gefunden und bin bei der Fehlersuche.
Meine Vorstellung:
NOT NOT hebt sich gegenseitig auf, kann aber auch nicht sein,
wenn man glaubt, dass mein Vorgänger ein normaler Mensch war?

Danke für Rat!

Caro

14 Antworten zu dieser Frage

  1. Antwort von nach 12 Minuten 0 hilfreich
    Re: Wer kann diesen Code lesen?

    if !( !(dings1 == 0) && !(dings2 == "RABATT") )
    perform1
    else
    perform2

    Wärs in C-variante (sorry, musste umschreiben zur Lesbarkeit

    Also würde sich es wohl aufheben:
    if ( (dings1 == 0) && (dings2 == "RABATT") )
    perform1
    else
    perform2

    Falls nicht habe ich ein echtes Logik-Problem :)

    bye
    Christoph

    • Antwort von nach 14 Stunden 0 hilfreich
      Re^2: Wer kann diesen Code lesen?

      dann hat einer von uns ein logik problem (aber kein wunder so früh am morgen).
      ich würde eher behaupten, daß
      !(!A&&!B) entspricht A||B oder bin ich noch nicht richtig wach?

      tobias

  2. Antwort von nach 18 Minuten 0 hilfreich
    Re: Wer kann diesen Code lesen?

    Moin

    Das:

    IF NOT

    (NOT

    (T-MSG OF ACP11C03-DX-WPOFN OF DECISION-IO-AREA(1 : 9) = '000000000')

    AND NOT

    (L-MSG OF ACP11C03-DX-WPOFN OF DECISION-IO-AREA(1 6) = 'RABATT')

    )

    PERFORM 1080-PARAGRAPH THRU 1080-PARAGRAPH-EXIT
    ELSE
    PERFORM 1160-PARAGRAPH THRU 1160-PARAGRAPH-EXIT

    müsste dem entsprechen:
    if Not (not (Bedingung1) And not (Bedingung2))

    =

    if (not (Bedingung1) And not (Bedingung2)){
    }

    aber mit umgedrehten if-else-zweig

    =

    if ((Bedingung1) or (Bedingung2)){
    }

    aber mit wieder umgedrehten if-else-zweig... also mit dem orginal-if-else. NOT NOT hebt sich gegenseitig auf, kann aber auch nicht sein,
    wenn man glaubt, dass mein Vorgänger ein normaler Mensch war?
    ... alles eine Frage der Vorstellungskraft ... es gibt auch Leute die Brainfuck-code einfachso runtertippen.

    cu

  3. Antwort von nach 15 Stunden 0 hilfreich
    Danke und Sorry!

    Aber was ihr hier schreibt verstehe ich genauso wenig.
    Wenn ich richtig verstehe, weiss von euch auch niemand,
    was hier letztendlich rauskommt?

    Dank und Gruß
    Caro

    • Antwort von nach 15 Stunden 1 hilfreich
      Re: Danke und Sorry!

      hallo. Aber was ihr hier schreibt verstehe ich genauso wenig.
      erklärungsversuch auf deutsch:
      wenn die ersten neun zeichen des einen bereichs null sind, ODER die ersten sechs zeichen des anderen bereichs "RABATT" heißen, (oder beides gleichzeitg zutrifft) dann wird das ausgeführt, was in 1080-PARAGRAPH steht.
      ansonsten wird das ausgeführt, was in 1160-PARAGRAPH steht. Wenn ich richtig verstehe, weiss von euch auch niemand,
      was hier letztendlich rauskommt?
      nein. woher auch?

      gruß

      michael

      • Antwort von nach 16 Stunden 0 hilfreich
        Re^2: Danke und Sorry!

        Hallo Michael,

        bist du dir ganz sicher?

        Danke!

        Caro [Bei dieser Antwort wurde das Vollzitat nachträglich automatisiert entfernt]

        • Antwort von nach 18 Stunden 0 hilfreich
          Re^3: Danke und Sorry!

          Hallo Michael,

          bist du dir ganz sicher?

          Danke!

          Caro
          ja. oder hängen menschenleben davon ab? dann rechne ich NOCHMAL alles haarklein durch und schick dir ein notariell beglaubigtes protokoll :-)
          mal ernsthaft und rein interessehalber: welche fehler suchst du denn in welcher software?

          gruß

          michael

          • Antwort von nach 18 Stunden 0 hilfreich
            Re^4: Danke und Sorry!

            Ganz ehrlich gesagt dieses not not not...
            verstehe ich überhaupt nicht.
            Deshalb muss ich dir blind vertrauen :-)
            Als erstes hat der Entwickler den Fehler gesehen und korrigiert.
            Es ist jetzt ein Statement geworden, dass ich wieder verstehe.
            Also der Fehlerfall ist abgeschlossen.
            Aber trotzdem würde ich es gerne verstehen.
            Wo kann ich diese Regel nachlesen?

            Nochmal Danke!

            Caro

            PS die Postings unten, ist das Spaß oder sind das Professoren? [Bei dieser Antwort wurde das Vollzitat nachträglich automatisiert entfernt]

            • Antwort von nach 18 Stunden 0 hilfreich
              Re^5: Danke und Sorry!

              hallo. Ganz ehrlich gesagt dieses not not not...
              verstehe ich überhaupt nicht.
              NOT heißt einfach, daß die aussage dahinter negiert wird:
              eine bedingung trifft zu -> WAHR
              NOT (eine bedingung trifft zu) -> FALSCH
              bei mehreren bedingungen (wie in deinem fall) klammern beachten! Wo kann ich diese Regel nachlesen?
              googel mal nach: boole algebra de morgan
              da dürftest du einiges finden.
              "de morgan" ist weiter oben schon mal gefallen. nach dem typ sind ein paar gesetze benannt, die für boolesche algebra gelten.
              bei fragen meldest du dich einfach wieder. PS die Postings unten, ist das Spaß oder sind das Professoren?
              das ist ernst gemeint, teilweise korrekt, und stammt u.a. von programmierern.

              gruß

              michael



Keine passende Antwort gefunden? Jetzt eigene Frage stellen!