Καλημέρα σας
Σε περίπτωση που σε κώδικα υπάρχει λάθος που παραβιάζει την περατότητα
π.χ. ΔΙΑΒΑΣΕ χ
ΟΣΟ χ <> 0 ΕΠΑΝΑΛΑΒΕ
ΓΡΑΨΕ χ
ΤΕΛΟΣ_ΕΠΑΝΑΛΗΨΗΣ
Τι είδους λάθος είναι;
α. Λάθος κατά την υλοποίηση
β. Λάθος κατά την εκτέλεση
γ. Λογικό λάθος
Η απάντηση που προσωπικά θα έδινα είναι η β, αν και με προβληματίζει το γεγονός ότι ο κώδικας δεν τερματίζει αντικανονικά, δεν τερματίζει ποτέ, οπότε ο χρήστης θα αναγκαστεί να τον τερματίσει με έναν άλλο τρόπο. Ποια είναι η δική σας άποψη;
Λάθος κατά την εκτέλεση όπως είπες θα συνέβαινε μόνο αν το πρόγραμμα τερματιζόταν αντικανονικά. Άρα είναι "γ" χωρίς να είναι "β".
Το "α" τι διαφορά έχει από το "γ";
Δες λίγο και την εικόνα σε αυτό το μήνυμα: https://alkisg.mysch.gr/steki/index.php?topic=7966.msg87761#msg87761
Το λάθος που περιγράφεις ανήκει στην κίτρινη περιοχή. Είναι λογικό λάθος που δεν προκαλεί λάθος χρόνου εκτέλεσης.
Αν ήταν λογικό λάθος που να προκαλούσε ταυτόχρονα και λάθος εκτέλεσης (και "β" και "γ"), τότε θα άνηκε στην πράσινη περιοχή.
Ευχαριστώ και καλή σου μέρα
το θεμα συζητήθηκε και το καλοκαίρι
τα λογικά λάθη είναι εκείνα που κατά την παρουσία τους, το πρόγραμμα εκτελείται και παράγει λανθασμένη (όxι την επιθυμητή) έξοδο για την επίλυση του προβλήματος. Οι ατέρμονες βρόχοι δεν το κάνουν αυτό, όχι συνήθως. Το πρόγραμμα δεν εκτελείται κανονικά.
Άλλωστε, υπάρχουν και περιπτώσεις που οι ατέρμονες βρόχοι έχουν υλοποιηθεί από τον ίδιο τον προγραμματιστή και δεν είναι λάθος κώδικας αλλά διεργασίες του συστήματος.
Στην περίπτωση της ΑΕΠΠ, ο ατέρμων βρόχος είναι λάθος και δεν οδηγεί σε κώδικα που εκτελείται, ούτε παράγει έξοδο. Προσωπικά δεν θεωρώ συνεπές να διακριθεί η κατηγοριοποίηση με βάση τις συνέπειες στον εκτελούμενο κώδικα (αν είναι logical error ή run time error). Γι αυτό κατά τη γνώμη μου, αποτελεί λάθος κατά την εκτέλεση, όπως και η καθοριστικότητα.
Οι αναφορές στο Διαδίκτυο για debugging δεν αναφέρονται καθαρά σε λογικά λάθη ή semantic errors (άλλωστε δεν είναι πάντοτε ίδιο context με αυτό της ΑΕΠΠ), ούτε και στο νέο σχολικό βιβλίο οι συγγραφείς πήραν θέση.
Παράθεση από: Παναγιώτης Τσιωτάκης στις 18 Δεκ 2019, 08:21:08 ΜΜ
το θεμα συζητήθηκε και το καλοκαίρι
Συζητήθηκε, αλλά αν καταλαβαίνω σωστά, πλήρης συμφωνία δεν υπήρξε...
Τι λάθος πιστεύετε ότι είναι το παρακάτω:
Εισαγωγή ενός γράμματος κατά την ανάγνωση ενός ακεραίου αριθμού;
Λάθος χρόνου εκτέλεσης 100%
Καλησπέρα λαθος κατά το πέρασμα παραμέτρων σε υποπρόγραμμα πχ άλλοι τυποι πραγματικών και τυπικών παραμέτρων είναι και αυτό λάθος κατά την εκτέλεση;
Συντακτικό