ich Informatik studiere (Fernstudium) und bin verwirrt über eine „zusätzliche Informationen Frage“, die im Lehrbuch erscheint, aber die hat keine Antwort. Es geht um den linearen Suchalgorithmus und die Kurzschlussauswertung.Linear Suchen und Short Circuit Bewertung (Laufzeitfehler)
Der Algorithmus für eine lineare Suche in dem Buch geschrieben wird, wie folgt:
Zeiger = 0
während des Zeiger < LengthOfList UND Liste [pointer] = zu:
------ eine hinzufügen auf Zeiger
ENDWHILE
IF Zeiger> = LengthOfList THEN:
------- PRINT ("Item ist nicht in der Liste")
ELSE
------- PRINT (“ Artikel ist am Ort " + Zeiger)
ENDIF
In der zusätzlichen Info-Box es über Kurzschluss Auswertung spricht und wie, wenn es mehr Teile von Booleschen Operatoren den Computer verknüpft werten nur die zweite Bedingung, wenn es notwendig ist. Also bekomme ich das mit Bedingung 1 UND Bedingung 2 (bei Verwendung der Kurzschlussauswertung) Bedingung 2 wird nicht ausgewertet, wenn Bedingung 1 falsch ist.
aber dann fragt
„Können Sie die Laufzeitfehler erkennen, die auftreten können, wenn Kurzschlussauswertung nicht in der Linie im Einsatz war:
während der Zeiger < LengthOfList UND Liste [pointer] = Gesucht wurde nach "
Ich habe eine Antwort gesucht und gesucht und habe den Algorithmus auf Papier mit verschiedenen Elementen in den letzten 2 Wochen immer wieder durchgelaufen, aber ich kann einfach nicht verstehen, was der Laufzeitfehler sein könnte . Könnte jemand bitte sehen, ob sie diesen Fehler erkennen und mir erklären können? Danke vielmals.
wird hier eine bestimmte Ausnahme ausgelöst? Zum Beispiel eine Null-Null-Wahrnehmung. oder ist es ein Problem mit der Ausgabe? –