Το πρόβλημα των Read και Readln

Οι εντολές (υποπρογράμματα) Read και Readln της γλώσσας προγραμματισμού Pascal χρησιμοποιούνται για την εισαγωγή των δεδομένων του προγράμματος.

Ποιά είναι όμως η διαφορά τους με απλά λόγια;

Η διαφορά τους έγκειται στο πως διαχειρίζονται τα πλεονάζοντα δεδομένα που τους παρέχονται στην ίδια γραμμή.

Η εντολή Read διαβάζει τιμές για όλες τις παραμέτρους της από τα αριστερά προς τα δεξιά και αν υπάρχουν επιπλέον δεδομένα στην ίδια γραμμή, αυτά θα είναι διαθέσιμα στην αμέσως επόμενη εντολή Read ή Readln (εφόσον αυτή υπάρχει).
Αν υποθέσουμε ότι σε ένα πρόγραμμα έχουμε σε κάποιο σημείο τις εντολές:

  Read(a, b, c);
  Read(d, e);
  Writeln(a, b, c, d, e);

όπου a, b, c, d, e μεταβλητές ακεραίου τύπου (Integer). Αν δώσουμε για δεδομένα τους αριθμούς 1 2 3 4 5 στην ίδια γραμμή και πατήσουμε το πλήκτρο Enter τότε, θα εκτελεστούν ΚΑΙ οι δύο εντολές Read και στις πέντε μεταβλητές a, b, c, d, e θα τοποθετηθούν αντίστοιχα οι αριθμοί 1 2 3 4 5. Στη συνέχεια, θα εκτελεστεί η εντολή Writeln η οποία θα εμφανίσει στην έξοδο τα 12345.

Η εντολή Readln τώρα, διαβάζει τιμές για όλες τις παραμέτρους της από τα αριστερά προς τα δεξιά και αν υπάρχουν επιπλέον δεδομένα στην ίδια γραμμή, αυτά παραβλέπονται! Η αμέσως επόμενη εντολή Read ή Readln (εφόσον αυτή υπάρχει) θα διαβάσει τα δεδομένα από την επόμενη γραμμή (μετά το Enter).
Αν υποθέσουμε ότι σε ένα πρόγραμμα έχουμε σε κάποιο σημείο τις εντολές:

  Readln(a, b, c);
  Read(d, e);
  Writeln(a, b, c, d, e);

όπου a, b, c, d, e μεταβλητές ακεραίου τύπου (Integer). Αν δώσουμε για δεδομένα τους αριθμούς 1 2 3 4 5 στην ίδια γραμμή και πατήσουμε το πλήκτρο Enter τότε, στις πρώτες τρεις μεταβλητές a, b, c θα τοποθετηθούν αντίστοιχα οι αριθμοί 1 2 3, οι επόμενοι δύο αριθμοί της γραμμής 4, 5 θα ΑΓΝΟΗΘΟΥΝ και το πρόγραμμα θα ζητάει με την εντολή Read(d, e) την εισαγωγή ακόμη δύο αριθμών.

Μια άλλη διαφορά είναι ότι η εντολή Read χωρίς παραμέτρους δε σταματά τη ροή του προγράμματος σε αντίθεση με την εντολή Readln η οποία όταν δεν έχει παραμέτρους σταματά τη ροή του προγράμματος έως ότου πατηθεί το πλήκτρο Enter.

Advertisements

Posted on 28/01/2012, in Γλώσσα Pascal, Δομημένος Προγραμματισμός, Θεωρία and tagged . Bookmark the permalink. Σχολιάστε.

Σχολιάστε

Εισάγετε τα παρακάτω στοιχεία ή επιλέξτε ένα εικονίδιο για να συνδεθείτε:

Λογότυπο WordPress.com

Σχολιάζετε χρησιμοποιώντας τον λογαριασμό WordPress.com. Αποσύνδεση / Αλλαγή )

Φωτογραφία Twitter

Σχολιάζετε χρησιμοποιώντας τον λογαριασμό Twitter. Αποσύνδεση / Αλλαγή )

Φωτογραφία Facebook

Σχολιάζετε χρησιμοποιώντας τον λογαριασμό Facebook. Αποσύνδεση / Αλλαγή )

Φωτογραφία Google+

Σχολιάζετε χρησιμοποιώντας τον λογαριασμό Google+. Αποσύνδεση / Αλλαγή )

Σύνδεση με %s

Αρέσει σε %d bloggers: