Σκοπός. Εργαστήριο 6 Εντολές Επανάληψης

Σχετικά έγγραφα
Σκοπός. Εργαστήριο 6 Εντολές Επανάληψης Τα Εργαστηριακά Προγράμματα. Η δομή Επιλογής στη PASCAL. H δομή Επανάληψης στη PASCAL. Η εντολή επανάληψης for

Η ΔΟΜΗ ΕΠΑΝΑΛΗΨΗΣ Εντολές Επανάληψης REPEAT UNTIL, FOR, WHILE

TO ΥΠΟΠΡΟΓΡΑΜΜΑ ΣΥΝΑΡΤΗΣΗ

Σκοπός. Εργαστήριο 5 Εντολές Επιλογής

Σκοπός. Αλγεβρικοί και Λογικοί Υπολογισμοί στη PASCAL

Εισαγωγή στο Προγραμματισμό για Μηχανολόγους Οδηγός Προετοιμασίας για τη Τελική Εξέταση

Εισαγωγή στο Προγραμματισμό με τη PASCAL & τη Matlab Εξαμηνιαία Εργασία 2014 Μετατρέποντας AC σε DC Τάση Μέρος Β : Πορεία Εργασίας

Εργαστήριο 10 Πίνακες. Πίνακες. Η έννοια της δόμησης δεδομένων στη PASCAL. Σκοπός

Δομή Επανάληψης. Κεφάλαιο 7 Mike Trimos

ΠΡΟΤΕΙΝΟΜΕΝΑ ΘΕΜΑΤΑ ΔΟΜΗΜΕΝΟΥ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ Γ ΕΠΑΛ

Αλγοριθμική & Δομές Δεδομένων- Γλώσσα Προγραμματισμού Ι (PASCAL) (PASCAL ) Εντολές Ελέγχου & Επανάληψης

Εντολή Δεδομένα Περιεχόμενα μετά την εκτέλεση 1 read(x) 122 x= 2 read(a,b,c) a= b= c= 3 read(d,e)

2. β. Συνθήκη ή επιλογή. 4. δ. Υποπρόγραμμα. 5. ε. ιαδικασία εισόδου ή εξόδου

Σχολικό Βιβλίο - Κεφάλαιο 7 ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ ΜΕ PASCAL ΠΑΡΟΥΣΙΑΣΗ 13

Σκοπός. Προγραμματίζοντας τον Arduino ΙΙ Εντολή Εκχώρησης & Εντολές. Συλλογή & Επεξεργασία Δεδομένων. Πρόγραμμα. Εντολές Επεξεργασίας Δεδομένων

Προβλήματα, αλγόριθμοι, ψευδοκώδικας

ΜΑΘΗΜΑ / ΤΑΞΗ : ΔΟΜΗΜΕΝΟΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ / Γ ΕΠΑΛ ΣΕΙΡΑ: ΗΜΕΡΟΜΗΝΙΑ: 27/01/2013

ΓΛΩΣΣΑ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ PASCAL

ΚΕΦΑΛΑΙΟ 9 ΒΑΣΙΚΕΣ ΕΝΤΟΛΕΣ

4. Επιλογή και Επανάληψη

2. β. Συνθήκη ή επιλογή. 4. δ. Υποπρόγραμμα. 5. ε. ιαδικασία εισόδου ή εξόδου

Επαναληπτικές Διαδικασίες

Εργαστήριο 9 Συναρτήσεις στη PASCAL. Η έννοια του κατακερματισμού. Συναρτήσεις. Σκοπός

ΚΕΦΑΛΑΙΟ 1ο 3ο. ΚΕΦΑΛΑΙΟ 5ο 6ο. ΚΕΦΑΛΑΙΟ 7ο. Δομημένος Προγραμματισμός - Γενικές Ασκήσεις Επανάληψης

ΔΟΜΗΜΕΝΟΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ

ΑΠΑΝΤΗΣΕΙΣ. H διαδικασία ανεύρεσης λογικών λαθών περιλαμβάνει : β- Σωστό. Διαπίστωση του είδους του λάθους γ- Σωστό δ- Λάθος

ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ ΥΠΟΛΟΓΙΣΤΩΝ & ΥΠΟΛΟΓΙΣΤΙΚΗ ΦΥΣΙΚΗ

ΠΑΝΕΠΙΣΤΗΜΙΟ ΠΕΙΡΑΙΩΣ ΤΜΗΜΑ ΒΙΟΜΗΧΑΝΙΚΗΣ ΙΟΙΚΗΣΗΣ ΚΑΙ ΤΕΧΝΟΛΟΓΙΑΣ

Στη C++ υπάρχουν τρεις τύποι βρόχων: (a) while, (b) do while, και (c) for. Ακολουθεί η σύνταξη για κάθε μια:

Αλγοριθμική & Δομές Δεδομένων- Γλώσσα Προγραμματισμού Ι (PASCAL)

Ψευδοκώδικας. November 7, 2011

Εισαγωγή στην πληροφορική

Γραπτές εξετάσεις στο μάθημα: ΔΟΜΗΜΕΝΟΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ (Θ) Εισηγητής: Γεωργίου Χρήστος ΘΕΜΑΤΑ & ΑΠΑΝΤΗΣΕΙΣ. Β. Χαρακτήρας(Αλφαριθμητικά)

ΠΡΟΤΕΙΝΟΜΕΝΑ ΘΕΜΑΤΑ-ΦΡΟΝΤΙΣΤΗΡΙΟ ΑΚΑΔΗΜΑΪΚΟ ΕΠΑΛ- ΚΑΝΙΓΓΟΣ 13- ΤΗΛ

Τμήμα Μηχανολόγων Μηχανικών Πανεπιστήμιο Θεσσαλίας ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ Η/Υ. Δομή Επανάληψης. Ιωάννης Λυχναρόπουλος Μαθηματικός, MSc, PhD

ΑΠΑΝΤΗΣΕΙΣ ΘΕΜΑ Α A1. 2-Λάθος 3-Λάθος 4-Σωστό 5-Λάθος A2. integer. real. Boolean. char. string A3.

ΔΙΑΓΩΝΙΣΜΑ ΣΤΗΝ Α.Ε.Π.Π. Γ ΤΕΧΝΟΛΟΓΙΚΗΣ. Όνομα:.. Βαθμός: /100

Pascal, απλοί τύποι, τελεστές και εκφράσεις

ΑΡΧΗ 1ΗΣ ΣΕΛΙ ΑΣ ΝΕΟ ΚΑΙ ΠΑΛΑΙΟ ΣΥΣΤΗΜΑ

ΚΕΦΑΛΑΙΟ 10 ΕΝΤΟΛΕΣ ΕΠΙΛΟΓΗΣ (ή εντολές Ελέγχου και Επιλογής ή εντολές Επιλογής και Απόφασης)

ΚΕΝΤΡΙΚΗ ΟΡΓΑΝΩΤΙΚΗ ΕΠΙΤΡΟΠΗ 8 ου ΠΑΝΕΛΛΗΝΙΟΥ ΔΙΑΓΩΝΙΣΜΟΥ ΠΛΗΡΟΦΟΡΙΚΗΣ 1996 ΠΡΟΚΑΤΑΡΚΤΙΚΗ ΦΑΣΗ ΠΑΝΕΛΛΗΝΙΟΥ ΔΙΑΓΩΝΙΣΜΟΥ ΘΕΜΑΤΑ ΓΥΜΝΑΣΙΟΥ

ΑΝΑΠΤΥΞΗ ΕΦΑΡΜΟΓΩΝ ΣΕ ΠΡΟΓΡΑΜΜΑΤΙΣΤΙΚΟ ΠΕΡΙΒΑΛΛΟΝ ΓΕΝΙΚΟΥ ΛΥΚΕΙΟΥ 2012

Η Δομή Επανάληψης. Εισαγωγή στην δομή επανάληψης Χρονική διάρκεια: 3 διδακτικές ώρες

Αναφορά (1/2) Μπορούμε να ορίσουμε μια άλλη, ισοδύναμη αλλά ίσως πιο σύντομη, ονομασία για ποσότητα (μεταβλητή, σταθερή, συνάρτηση, κλπ.

Θέματα Προγραμματισμού Η/Υ

ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ ΥΠΟΛΟΓΙΣΤΩΝ & ΥΠΟΛΟΓΙΣΤΙΚΗ ΦΥΣΙΚΗ

Μορφοποίηση της εξόδου

Μονάδες 4. β. x=20 και y=10

Επιλογή και επανάληψη. Λογική έκφραση ή συνθήκη

Ερωτήσεις πολλαπλής επιλογής - Κεφάλαιο 2. Α1. Ο αλγόριθμος είναι απαραίτητος μόνο για την επίλυση προβλημάτων πληροφορικής

Βασικές Έννοιες Αλγορίθμων Τι είναι αλγόριθμος

Να γράψετε τα αποτελέσματα αυτού του αλγόριθμου για Χ=13, Χ=9 και Χ=22. Και στις 3 περιπτώσεις το αποτέλεσμα του αλγορίθμου είναι 1

ΔΟΜΗΜΕΝΟΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ

Εισαγωγή στην πληροφορική

Οι εντολές ελέγχου της ροής ενός προγράμματος.

Προγραμματισμός PASCAL

Αποτελέσματα προόδου

ΑΝΑΠΤΥΞΗ ΕΦΑΡΜΟΓΩΝ ΣΕ ΠΡΟΓΡΑΜΜΑΤΙΣΤΙΚΟ ΠΕΡΙΒΑΛΛΟΝ ΤΕΧΝΟΛΟΓΙΚΗΣ ΚΑΤΕΥΘΥΝΣΗΣ (ΚΥΚΛΟΥ ΠΛΗΡΟΦΟΡΙΚΗΣ & ΥΠΗΡΕΣΙΩΝ) 2012 ÈÅÌÅËÉÏ ΕΚΦΩΝΗΣΕΙΣ

Παράδειγμα 2. Λύση & Επεξηγήσεις. Τέλος_επανάληψης Εμφάνισε "Ναι" Τέλος Α2

ΤΡΙΩΡΗ ΓΡΑΠΤΗ ΔΟΚΙΜΑΣΙΑ

8 FORTRAN 77/90/95/2003

ΚΕΦΑΛΑΙΟ 8 Η ΓΛΩΣΣΑ PASCAL

Εισαγωγή στο προγραμματισμό με τη PASCAL Οδηγός Προετοιμασίας για τη Τελική Εξέταση

ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ ΥΠΟΛΟΓΙΣΤΩΝ Κεφάλαιο 10 : Εντολές επιλογής και αποφάσεων

α. Να συμπληρώσετε τις επόμενες εντολές εκχώρησης, ώστε τα κενά κελιά του πίνακα να αποκτήσουν τις επιθυμητές τιμές.

ΑΡΧΗ 1ΗΣ ΣΕΛΙ ΑΣ ΠΑΝΕΛΛΑ ΙΚΕΣ ΕΞΕΤΑΣΕΙΣ ΗΜΕΡΗΣΙΩΝ ΕΠΑΓΓΕΛΜΑΤΙΚΩΝ ΛΥΚΕΙΩΝ (ΟΜΑ Α Β ) ΚΑΙ ΜΑΘΗΜΑΤΩΝ ΕΙ ΙΚΟΤΗΤΑΣ

ΠΑΝΕΠΙΣΤΗΜΙΟ AΙΓΑIΟΥ & ΑΕΙ ΠΕΙΡΑΙΑ Τ.Τ. Τμήματα Ναυτιλίας και Επιχειρηματικών Υπηρεσιών & Μηχ. Αυτοματισμού ΤΕ. Εισαγωγή στη Python

Βρόχοι. Εντολή επανάληψης. Το άθροισμα των αριθμών 1 5 υπολογίζεται με την εντολή. Πρόβλημα. Πώς θα υπολογίσουμε το άθροισμα των ακέραιων ;

ΑΡΧΗ 1ης ΣΕΛΙΔΑΣ ΕΞΕΤΑΖΟΜΕΝΟ ΜΑΘΗΜΑ : ΑΝΑΠΤΥΞΗ ΕΦΑΡΜΟΓΩΝ ΣΕ ΠΡΟΓΡΑΜΜΑΤΙΣΤΙΚΟ ΠΕΡΙΒΑΛΛΟΝ ΤΑΞΗ : Γ ΛΥΚΕΙΟΥ ΣΠΟΥΔΕΣ ΟΙΚΟΝΟΜΙΑΣ & ΠΛΗΡΟΦΟΡΙΚΗΣ

- Αναπαράσταση ακέραιας τιµής : - Εύρος ακεραίων : - Ακέραιοι τύποι: - Πράξεις µε ακεραίους (DIV - MOD)

Αλγοριθμική & Δομές Δεδομένων- Γλώσσα Προγραμματισμού Ι (PASCAL)

Εισαγωγή στο Προγραμματισμό με τη PASCAL & τη Matlab Εξαμηνιαία Εργασία 2015 Μετατρέποντας AC σε DC Τάση Περισσότερες Επεξηγήσεις

ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ ΜΕ ΤΟ ΚΙΤ ΡΟΜΠΟΤΙΚΗΣ LEGO MINDSTORMS EV3

ΑΝΑΠΤΥΞΗ ΕΦΑΡΜΟΓΩΝ ΤΕΧΝ/ΚΗΣ ΚΑΤΕΥΘΥΝΣΗΣ - Γ ΛΥΚΕΙΟΥ

i 1 Όσο i <> 100 επανάλαβε i i + 2 Γράψε A[i] Τέλος_επανάληψης

Εισαγωγή στον Προγραμματισμό

1. Πότε χρησιμοποιούμε την δομή επανάληψης; Ποιες είναι οι διάφορες εντολές (μορφές) της;

ΠΕΡΙΕΧΟΜΕΝΑ. Εντολές επιλογής Εντολές επανάληψης

ΕΙΣΑΓΩΓΗ ΣΤΟΥΣ ΑΛΓΟΡΙΘΜΟΥΣ ΚΑΙ ΣΤΟΝ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟ ΠΑΝΕΠΙΣΤΗΜΙΟ ΑΙΓΑΙΟΥ ΤΜΗΜΑ ΠΟΛΙΤΙΣΜΙΚΗΣ ΤΕΧΝΟΛΟΓΙΑΣ ΚΑΙ ΕΠΙΚΟΙΝΩΝΙΑΣ. Διδάσκουσα Δρ Β.

Δομές Ακολουθίας- Επιλογής - Επανάληψης. Δομημένος Προγραμματισμός

ΕΚΦΩΝΗΣΕΙΣ ΘΕΜΑ Α. β. Οι πληροφορίες είναι δεδομένα τα οποία δεν έχουν υποστεί επεξεργασία.

Ανακτήθηκε από την ΕΚΠΑΙΔΕΥΤΙΚΗ ΚΛΙΜΑΚΑ ΑΡΧΗ 1ΗΣ ΣΕΛΙ ΑΣ

ΕΝΤΟΛΕΣ ΕΠΑΝΑΛΗΨΗΣ. for (παράσταση_1; παράσταση_2; παράσταση_3) εντολή επόμενη εντολή

Προγραμματισμός PASCAL

Χρησιμοποιείται για να αποφασίσει το πρόγραμμα αν θα κάνει κάτι σε ένα σημείο της εκτέλεσής του, εξετάζοντας αν ισχύει ή όχι μια συνθήκη.

μεταβλητής Χ Χ ΑΛΗΘΗΣ Χ Χ 7 > 4 Χ ΨΕΥ ΗΣ Μονάδες 10

ΠΑΝΕΠΙΣΤΗΜΙΟ ΘΕΣΣΑΛΙΑΣ ΣΧΟΛΗ ΘΕΤΙΚΩΝ ΕΠΙΣΤΗΜΩΝ ΤΜΗΜΑ ΠΛΗΡΟΦΟΡΙΚΗΣ

Αλγόριθμοι. Βασικές έννοιες ΤΕΛΟΣ

ιαφάνειες παρουσίασης #4

ΤΕΛΙΚΟ ΕΠΑΝΑΛΗΠΤΙΚΟ ΔΙΑΓΩΝΙΣΜΑ

8.4. Δραστηριότητες - ασκήσεις

Δομημένος Προγραμματισμός. Τμήμα Επιχειρηματικού Σχεδιασμού και Πληροφοριακών Συστημάτων

Άσκηση 1. Α. Υπολογίστε χωρίς να εκτελέσετε κώδικα FORTRAN τα παρακάτω: Ποιά είναι η τελική τιμή του Z στα παρακάτω κομμάτια κώδικα FORTRAN:

A. Να γράψετε τον αριθμό της κάθε μιας από τις παρακάτω προτάσεις και δίπλα. το γράμμα Σ, εάν είναι σωστή, ή το γράμμα Λ, εάν είναι λανθασμένη.

Συλλογή & Επεξεργασία Δεδομένων Εργαστήριο 2 USB και Σειριακή Επικοι- νωνία Σ Σειριακή Επικοινωνία

Α1. Στον προγραµµατισµό χρησιµοποιούνται δοµές δεδοµένων. 1. Τι είναι δυναµική δοµή δεδοµένων; Μονάδες 3 2. Τι είναι στατική δοµή δεδοµένων;

Μονάδες 12 ΑΡΧΗ 1ΗΣ ΣΕΛΙΔΑΣ

Στην εντολή while η επανάληψη συνεχίζεται όσο η λογική έκφραση έχει τιμή false.

Συλλογή & Επεξεργασία Δεδομένων Εργαστήριο 8. Μετρώντας Επιτάχυνση με το Accelerόμετρο (ADXL 335) Σύστημα Συλλογής & Επεξεργασίας Μετρήσεων

Πληροφορική 2. Αλγόριθμοι

Transcript:

Εργαστήριο 6 Εντολές Επανάληψης Η δομή Επιλογής στη PASCAL H δομή Επανάληψης στη PASCAL. Ρεύμα Εισόδου / Εξόδου.. Ρεύμα Εισόδου / Εξόδου. To πρόγραμμα γραφικών gnuplot. Γραφικά στη PASCAL. Σκοπός

6.1 ΕΠΙΔΙΩΞΗ ΤΗΣ ΕΡΓΑΣΙΑΣ Σκοπός της άσκησης είναι να εξετάσουμε τις εντολές επανάληψης. Η επιλογή και η επανάληψη είναι βασικές λειτουργίες της επεξεργασίας δεδομένων από ένα πρόγραμμα. Οι δύο αυτές λειτουργίες μαζί με / στη βάση της εκτέλεσης αλγεβρικών και λογικών πράξεων από τον υπολογιστή αποτελούν το σύνολο των εργαλείων της επεξεργασίας δεδομένων. Κάθε πρόγραμμα που γράφουμε στη PASCAL χρησιμοποιεί αυτές τις εντολές. Ακόμα γενικότερα, κάθε υπολογισμός ή επεξεργασία δεδομένων που μπορεί ο υπολογιστής να εκτελέσει μπορεί να περιγραφεί, μέσα από τις εντολές επιλογής, επανάληψης, τις αλγεβρικές και λογικές πράξεις. Έτσι, αυτές οι εντολές αποτελούν ένα πλήρες σύνολο εντολών, μέσα από το οποίο μπορούμε να προσδιορίσουμε κάθε δυνατό υπολογισμό στον υπολογιστή. Στα μέχρι τώρα προγράμματα, εξετάσαμε την επικοινωνία του προγράμματος με τον έξω κόσμο. Δηλαδή, αυτές τις λειτουργίες που περιλαμβάνουν την Είσοδο (δεδομένων στο πρόγραμμα) και την Έξοδο (των αποτελεσμάτων της επεξεργασίας αυτών των δεδομένων από το πρόγραμμα). Γενικεύσαμε αυτές τις λειτουργίες από τις κατά συνθήκη συσκευές εισόδου / εξόδου, ώστε να περιλαμβάνουν την είσοδο δεδομένων από ένα άλλο πρόγραμμα και την έξοδο δεδομένων και αποτελεσμάτων σε άλλα προγράμματα. Εξετάσαμε ακόμα τη λειτουργία της επιλογής από ένα πρόγραμμα, μέσα από την εντολή επιλογής που επιτρέπει σε ένα πρόγραμμα να λαμβάνει αποφάσεις, να μπορεί δηλαδή να επιλέγει να εκτελεί μία από διαφορετικές λειτουργίες που περιγράφονται από διαφορετικές ομάδες εντολών στο πρόγραμμα, στη βάση μίας συνθήκης. Η επανάληψη περιλαμβάνει την εκτέλεση μία ομάδας εντολών περισσότερες από μία φορές, Σ αυτή την άσκηση εξετάζουμε πως ορίζουμε αυτή τη λειτουργία σ ένα πρόγραμμα τις εντολές δηλαδή που χρησιμοποιούμε για να προσδιορίσουμε την επανάληψη μίας ομάδας εντολών σ ένα πρόγραμμα. Εξετάζουμε ακόμα τη πρακτική εφαρμογή / τη χρησιμότητα αυτής της λειτουργίας σ ένα πρόγραμμα, μέσα από παραδείγματα πρακτικών εφαρμογών. 6.2 ΣΥΝΟΠΤΙΚΗ ΘΕΩΡΙΑ Εντολές Επανάληψης στη PASCAL Οι μέχρι τώρα εντολές της PASCAL παρείχαν τη δυνατότητα της εισόδου (READ) και της αποθήκευσης των δεδομένων στη μνήμη, προκειμένου να επιτελεστεί η πρόσβαση και η επεξεργασία αυτών των δεδομένων απο τον υπολογιστή. Οι (έως τώρα) εντολές της PASCAL περιλάμβαναν ακόμα την εντολή εξόδου (WRITE) για την εμφάνιση των αποτελεσμάτων, την εντολή εκχώρησης (:=) για την αποθήκευση των ενδιάμεσων αποτελεσμάτων σε συγκεκριμμένες τοποθεσίες στη μνήμη του υπολογιστή, προκειμένου αυτά να χρησιμοποιηθούν σε παραπέρα υπολογισμούς και τις εντολές ελέγχου ή επιλογής (IF THEN ELSE και CASE). Οι εντολές επιλογής (IF THEN ELSE και CASE) παρέχουν στο πρόγραμμα τη δυνατότητα να αποφασίσει (ή να επιλέξει) μεταξύ εναλλακτικών ενεργειών στην επεξεργασία των δεδομένων, επιτρέποντας στη «ροή» του προγράμματος να επιλέξει να ακολουθήσει διαφορετικούς κλάδους του προγράμματος κατά την εκτέλεσή του, δηλαδή εναλλακτικές ομάδες εντολών που επιτελούν εναλλακτικές ενέργειες στα εξωτερικά δεδομένα του προγράμματος. 2

Η εντολή επανάληψης εξυπηρετεί ένα διαφορετικό σκοπό: την επαναληπτική εκτέλεση μιάς ή περισσότερων ενεργειών. Η ανάγκη να επαναλάβουμε πολλές φορές ένα βήμα ή στάδιο σ έναν αλγόριθμο εμφανίζεται πολύ συχνά και σε πάρα πολλά προβλήματα και εφαρμογές που περιλαμβάνουν τη ταξινόμηση ή τη κατηγοριοποίηση δεδομένων, την οργάνωση και την ανεύρεση πληροφοριών σε βάσεις δεδομένων, τα λειτουργικά συστήματα. Οταν για παράδειγνα, ψάχνουμε το κατάλογο μιας βιβλιοθήκης για βιβλία σε κάποιο θέμα, το πρόγραμμα που εκτελεί ανεύρεση θα πρέπει αρχικά να συγκρίνει το θέμα που ψάχνουμε με καθεμία απο τις γενικές κατηγορίες θεμάτων και μετά με τίτλους βιβλίων που είναι καταχωρημένοι και υπάρχουν σε σχετικές θεματικές κατηγορίες. Η ενέργεια που επαναλαμβάνεται είναι η σύγκριση του θέματος πρώτα με τις γενικές κατηγορίες θεμάτων, ώστε να βρεθεί η σχετική θεματική κατηγορία και μετά με τίτλους βιβλίων σ αυτή τη κατηγορία, ώστε να βρεθούν τα σχετικότερα βιβλία. Η ανάγκη επανάληψης μιας πράξης, ή βήματος ενός αλγορίθμου εμαφανίζεται τόσο συχνά και είναι τόσο απαραίτητη στο προγραμματισμό ώστε να σχεδιαστούν και να αναπτυχθούν εντολές επανάληψης που επιτρέπουν την επανάληψη του όποιου τμήματος του κώδικα ενός προγράμματος. Η PASCAL διαθέτει 3 εντολές που μπορουν να χρησιμοποιηθούν για την επαναληπτική εκτέλεση του όποιου τμήματος κώδικα. Οι εντολές αυτές είναι οι For, While και Repeat until. Οι εντολές επανάληψης, η δομή, η χρήση τους και παραδείγματα της χρήσης τους είναι το αντικείμενο του Κεφαλαίου 5, της PASCAL, Σπύρος Πανέτσος, σελ. 121 133. Συνοπτικά η μορφή αυτών των εντολών είναι: 6.2.1 Η ΕΝΤΟΛΗ FOR Μεταβλητή ελέγχου ή Μετρητής, μεταβλητή του τύπου INTEGER, CHAR, BOOLEAN For i := αρχική τιμή to τελική τιμή do begin Εντολή 1; Εντολή 2; Εντολή ν Η εκτέλεση των εντολών μέσα στη for επαναλαμβάνεται για end; Χρησιμοποιούμε την εντολή For όταν γνωρίζουμε ακριβώς πόσες φορές πρέπει να επαναληφθεί μία εντολή, ή ένα κομμάτι προγράμματος. Οι εντολές Εντολή 1, 3

Εντολή 2,..., Εντολή ν που περιέχονται στη For εκτελούνται για κάθε τιμή της μεταβλητής ελέγχου i, ξεκινώντας από την αρχική τιμή. Μετά από κάθε επαναληπτική εκτέλεση της ομάδας Εντολή 1, Εντολή 2,..., Εντολή ν, η τιμή της μεταβλητής i, αυξάνεται κατά 1 και συγκρίνεται με τη τελική τιμή. Όσο η τιμή της i είναι μικρότερη ή ίση της τελικής τιμής η εκτέλεση των Εντολή 1, Εντολή 2,..., Εντολή ν επαναλαμβάνεται. Όταν, μετά από επαναληπτικές εκτελέσεις των Εντολή 1, Εντολή 2,..., Εντολή ν, η τιμή της i υπερβεί (γίνει μεγαλύτερη) της τελικής τιμής, η εντολή For σταματά να εκτελείται και η εκτέλεση του προγράμματος συνεχίζεται με την αμέσως επόμενη της For εντολής. 6.2.2 H ΕΝΤΟΛΗ WHILE Η γενική μορφή της while είναι: while λογική συνθήκη do begin Εντολή 1; Εντολή 2; Η εκτέλεση των εντολών μέσα στο while do επαναλαμβάνεται για όσο η συνθήκη ισχύει Εντολή ν end; Επόμενη εντολή; H επανάληψη καθορίζεται από τη λογική συνθήκη. Εάν η συνθήκη ισχύει, τότε η ακολουθία Εντολή 1, Εντολή 2,..., Εντολή ν εκτελείται και η συνθήκη επανεξετάζεται. Έτσι, η ακολουθία Εντολή 1, Εντολή 2,..., Εντολή ν εκτελείται συνέχεια εφόσον η συνθήκη είναι αληθής. Όταν η συνθήκη παίρνει τη λογική τιμή 0 (ψευδής), τότε σταματά η εκτέλεση της while και η εκτέλεση του προγράμματος μεταφέρεται στη επόμενη εντολή μετά τη while. Πρόγραμμα 7.1 Δυναμικά Συστήματα Ελεύθερη Πτώση. Μία σφαίρα που υποθέτουμε ότι έχει μοναδιαία μάζα (m = 1), αφήνεται να πέσει από κάποιο αρχικό ύψος h 0 από το έδαφος. Γράψτε ένα πρόγραμμα στη PASCAL που να υπολογίζει τη ταχύτητα v και το ύψος h της σφαίρας από το έδαφος, σε διαφορετικές χρονικές στιγμές t, της ελεύθερης πτώσης της, μέχρι να φτάσει στο έδαφος. Στην αρχική θέση (t = 0), η αρχική ταχύτητα v 0 και το αρχικό ύψος h 0, απ όπου η σφαίρα αφήνεται να πέσει, είναι v(0) = 0 και h 0 = 2 m. Οι εξισώσεις της ελεύθερης πτώσης ενός αντικειμένου, υποθέτοντας μοναδιαία μάζα 4

και αγνοώντας την αντίσταση του αέρα είναι: a = dv/ dt = - g και v = dh / dt όπου a είναι η επιτάχυνση του αντικειμένου, g = 9.81 m/sec 2 είναι η επιτάχυνση της βαρύτητας, v είναι η ταχύτητα του αντικειμένου και h είναι το ύψος της σφαίρας από το έδαφος. Ανάλυση του προγράμματος Ολοκληρώνοντας τις παραπάνω εξισώσεις, παίρνουμε: v = -g t + v 0 h = - ½ g t 2 + h 0 Έτσι, για να υπολογίσουμε τη ταχύτητα v(t) και την απόσταση h(t) σε διαφορετικές χρονικές στιγμές t = 1, 2, 3,, 10 sec της ελεύθερης πτώσης του αντικειμένου, θα πρέπει να αντικαταστήσουμε αυτές τις τιμές χρόνου και να υπολογίσουμε τους παραπάνω τύπους, για κάθε τιμή t = 1, 2, 3,, 10 sec. Επομένως, ο υπολογισμός της ταχύτητας v(t) και της απόστασης y(t) της ελεύθερης πτώσης ενός αντικειμένου, σε διαφορετικές χρονικές στιγμές t = 1, 2, 3,, 10 sec αυτής της πτώσης, είναι μία διαδικασία που περιλαμβάνει την επανάληψη μία; ενέργειας: τον υπολογισμό των παραπάνω τύπων, για διαφορετικές τιμές χρόνου. Μπορούμε εύκολα να περιγράψουμε αυτή τη λειτουργία (την επανάληψη του υπολογισμού των τύπων της ελεύθερης πτώσης, για διαφορετικές τιμές του χρόνου) σ ένα πρόγραμμα, χρησιμοποιώντας την εντολή επανάληψης. Γενικά, όποτε χρειάζεται να προσδιορίσουμε σ ένα πρόγραμμα την επανάληψη μίας λειτουργίας, μπορούμε να χρησιμοποιούμε την εντολή επανάληψης, περιγράφοντας / ορίζοντας: Βήμα 1: Υπολόγισε το ύψος (h) και τη ταχύτητα (v) της σφαίρας τη χρονική στιγμή t = 0. Βήμα 2: Υπολόγισε το ύψος (h) και τη ταχύτητα (v) της σφαίρας την επόμενη χρονική στιγμή t := t + 0.1 xρησιμοποιώντας τους τύπους: v = g * t; h = (1/2) * g * (t * t) + h0; Βήμα 3: Εκτύπωσε τις τιμές 5 του ύψους και της ταχύτητας, ή ή t

program freefall; const g = 9.81; var v, v0 : real; t, h, h0 : real; begin t:= 0.0; v0 := 0.0; write('h0 = '); readln(h0); h := h0; writeln('t v h'); while ( h > 0.0 ) do begin t := t + 0.1; v := g*t; h := h0 - (0.5 * v * t); writeln(t:3:1, ' ', v:5:2, ' ', h:4:2); end; readln; end. 1. Τη λειτουργία ή τις λειτουργίες που πρέπει να επαναληφθούν και 2. Πόσες φορές πρέπει να επαναληφθούν. 6

Έτσι, για να προσδιορίσουμε σ ένα πρόγραμμα την επανάληψη του υπολογισμού των τύπων της ελεύθερης πτώσης, για διαφορετικές τιμές του χρόνου, μπορούμε να χρησιμοποιήσουμε την εντολή επανάληψης. Όλο το πρόγραμμα που υπολογίζει την ελεύθερη πτώση της σφαίρας παριστάνεται στην Εικόνα 2. Το πρόγραμμα στην Εικόνα 2 μπορεί να ακολουθεί τη κίνηση της σφαίρας, δηλαδή να υπολογίζει τη ταχύτητα και το ύψος της σφαίρας από το έδαφος, κάθε χρονική στιγμή από τη αρχή της πτώσης της. Λίγο πριν η σφαίρα φτάσει στο έδαφος, όταν φτάσει σε ένα συγκεκριμένο ύψος από το έδαφος, το πρόγραμμα μπορεί να ενεργοποιήσει το κινητήρα που λειτουργεί (ανοίγει και κλείνει) το χέρι του ρομπότ, ώστε το ρομπότ να μπορέσει να πιάσει τη σφαίρα. Πρόγραμμα 7.3 Γράψτε ένα πρόγραμμα που να διαβάζει από την οθόνη έναν θετικό ακέραιο Ν και να υπολογίζει και να εκτυπώνει το άθροισμα των μονών ακέραιων από 1 έως Ν. Αλγόριθμος Βήμα 1: Διάβασε έναν θετικό ακέραιο Ν; Βήμα 2: Άθροισμα = 1; Βήμα 3: Εάν με n συμβολίσουμε τον τρέχοντα ακέραιο, υπολόγισε τον επόμενο μονό ακέραιο n + 2; Βήμα 4: Εξετάζουμε εάν o επόμενος μονός είναι μικρότερος ή ίσος του N. Τότε τον προσθέτουμε στοπ άθροισμα, δηλαδή: Άθροισμα := Άθροισμα + τρέχον μονός ακέραιος Βήμα 5: Επαναλαμβάνουμε τα βήματα 3-4, μέχρι ο επόμενος μονός ακέραιος να είναι μεγαλύτερος του Ν Βήμα 6: Εκτυπώνουμε τη τιμή της μεταβλητής Άθροισμα που λειτουργεί σαν αθροιστής. Πρόγραμμα 7.4 Γράψτε ένα πρόγραμμα που να διαβάζει από την οθόνη μία συμβολοσειρά μεταξύ αποστρόφων, να τυπώνει τους χαρακτήρες της και να υπολογίζει και να εκτυπώνει το πλήθος των χαρακτήρων αυτής της συμβολοσειράς. Επεξηγήσεις 7

Η συμβολοσειρά δεν θα βρίσκεται κατ ανάγκη στην αρχή των δεδομένων. Μπορεί να υπάρχουν άλλοι χαρακτήρες πριν ή μετά από αυτή τη συμβολοσειρά. Επίσης, η συμβολοσειρά μπορεί να είναι κενή, δηλαδή μπορεί να μην εμφανίζεται στα δεδομένα συμβολοσειρά μεταξύ αποστρόφων. Η απόστροφος, σαν τιμή μίας μεταβλητής συμβολίζεται με \ και θα πρέπει να τοποθετηθεί μεταξύ δύο αποστρόφων. Πρόγραμμα 7.5 Εμφυτευμένη Επανάληψη Σκακιέρα. Γράψτε ένα πρόγραμμα που να διαβάζει από την οθόνη έναν θετικό ακέραιο Ν και να χρησιμοποιεί μία εμφυτευμένη επανάληψη για να εκτυπώσει στην οθόνη μία Ν Ν σκακιέρα από κενά και αστερίσκους, όπως στο παρακάτω σχήμα. 8

ΕΡΓΑΣΤΗΡΙΟ 6 Εισαγωγή στο Προγραμματισμό με τη PASCAL & τη MATLAB Εντολές Επανάληψης Όνομα: Ενότητα 1: Θεωρητικό Μέρος 1. Η λειτουργία της εντολής επανάληψης σ ένα πρόγραμμα, είναι: (α) Να επαναλαμβάνει διαρκώς, χωρίς τέλος, μία λειτουργία του προγράμματος. (β) Να ελέγχει διαρκώς μία συνθήκη, εκτελώντας ή όχι μία εντολή του προγράμματος, στη βάση αυτής της συνθήκης. (γ) Να επαναλαμβάνει την εκτέλεση των εντολών ενός προγράμματος, μέχρι να εκπληρωθεί μία συνθήκη. (δ) Να επαναλαμβάνει μία ομάδα εντολών ενός προγράμματος, στη βάση μίας συνθήκης. 2. Η συνθήκη στην εντολή επανάληψης while: (α) Μπορεί μόνον να είναι μία απλή συνθήκη που συγκρίνει δύο αριθμούς. (β) Μπορεί να εξετάζει σχέσεις ισότητας ή ανισότητας μόνον μεταξύ αριθμητικών τιμών. (γ) Μπορεί να συγκρίνει όχι μόνο αριθμητικές τιμές, αλλά χαρακτήρες και κείμενο. (δ) Μπορεί να συγκρίνει μόνο ακέραιες τιμές.. 3. Με την εντολή for: (α) Μπορούμε να επαναλαμβάνουμε την εκτέλεση εντολών ενός προγράμματος, αλλά θα πρέπει να ξέρουμε πόσες φορές θα πρέπει να επαναληφθούν αυτές οι εντολές, όταν γράφουμε το πρόγραμμα. (β) Μπορούμε να επαναλαμβάνουμε την εκτέλεση των εντολών ενός προγράμματος ορισμένες φορές, αλλά δεν χρειάζεται να ξέρουμε πόσες φορές θα επαναληφθούν αυτές οι εντολές, όταν γράφουμε το πρόγραμμα. (γ) Μπορούμε να επαναλαμβάνουμε την εκτέλεση μίας ομάδας εντολών ενός προγράμματος, ορισμένες φορές, στη βάση μίας συνθήκης. 9

(δ) Μπορούμε να επαναλαμβάνουμε την εκτέλεση μίας ομάδας εντολών ενός προγράμματος, τόσες φορές, όσες καθορίζονται από μία συνθήκη. 4. Ποια είναι η βασική χρησιμότητα της εντολής επανάληψης σ ένα πρόγραμμα. Γιατί δηλαδή, η δυνατότητα της επανάληψης ορισμένων εντολών ενός προγράμματος μπορεί να είναι απαραίτητη σ ένα πρόγραμμα? 5. Γράψτε ένα πρόγραμμα για να υπολογίζει τις τιμές της συνάρτησης f (x) = 1/3x 3 4x 2 + 15x + 3 για τιμές του x από 1 έως 12. 6. Μία ενδιαφέρουσα εφαρμογή των υπολογιστών είναι η σχεδίαση γραφημάτων που ονομάζονται ιστογράμματα. Γράψτε ένα πρόγραμμα που να διαβάζει έναν αριθμό από την οθόνη, ανάμεσα στο 1 και το 30. Το πρόγραμμα θα πρέπει να εκτυπώνει αυτό το αριθμό και δίπλα στον αριθμό, τόσους συνεχόμενους αστερίσκους, όσους η τιμή του συγκεκριμένου αριθμού. Για παράδειγμα, αν το πρόγραμμα διαβάσει από την οθόνη τον αριθμό 9, τότε θα πρέπει να εκτυπώσει: 9 ********* Αν διαβάσει τον αριθμό 12, τότε θα πρέπει να εκτυπώσει: 12 ************ 10

7. Τροποποιείστε το παραπάνω πρόγραμμα ώστε να διαβάζει μέχρι 10 αριθμούς, ανάμεσα στο 1 και το 30. Για κάθε αριθμό, το πρόγραμμα θα πρέπει να εκτυπώνει μία γραμμή που θα περιέχει τόσους συνεχόμενους αστερίσκους, όσους η τιμή του συγκεκριμένου αριθμού. 8. Γράψτε ένα πρόγραμμα που να στρίβει ένα νόμισμα 10 φορές και να εκτυπώνει τα αποτελέσματα. 9. Γράψτε ένα πρόγραμμα που να διαβάζει από την οθόνη μία συμβολοσειρά μεταξύ αποστρόφων, να τυπώνει τους χαρακτήρες της και να υπολογίζει και να εκτυπώνει το πλήθος των χαρακτήρων αυτής της συμβολοσειράς. Επεξηγήσεις Η συμβολοσειρά δεν θα βρίσκεται κατ ανάγκη στην αρχή των δεδομένων. Μπορεί να υπάρχουν άλλοι χαρακτήρες πριν ή μετά από αυτή τη συμβολοσειρά. Επίσης, η συμβολοσειρά μπορεί να είναι κενή, δηλαδή μπορεί να μην εμφανίζεται στα δεδομένα συμβολοσειρά μεταξύ αποστρόφων. Η απόστροφος, σαν τιμή μίας μεταβλητής συμβολίζεται με \ και θα πρέπει να τοποθετηθεί μεταξύ δύο αποστρόφων. 11

10. Γράψτε ένα πρόγραμμα για να διαβάζει τις τιμές που έχουν καταγραφεί από ένα αισθητήρα και να υπολογίζει και να εκτυπώνει τη μέγιστη, την ελάχιστη και τη μέση τιμή αυτών των δεδομένων. Οι μετρήσεις από τον αισθητήρα έχουν τη παρακάτω μορφή: 0.0 132.5 1.0 147.2 2.0 148.5 3.0 157.3 4.0 163.2 5.0 158.2 6.0 169.3 7.0 148.2 8.0 137.6 9.0 135.9 <Ctrl-Z> H πρώτη στήλη παριστάνει χρονικές στιγμές (t) και η δεύτερη τις τιμές ταχύτητας (v), για τις αντίστοιχες χρονικές στιγμές. Η εισαγωγή των δεδομένων τερματίζεται, πατώντας το χαρακτήρα Ctrl-Z. 11. Σκακιέρα. Γράψτε ένα πρόγραμμα που να διαβάζει από την οθόνη έναν θετικό ακέραιο Ν και να χρησιμοποιεί μία εμφυτευμένη επανάληψη για να εκτυπώσει στην οθόνη μία Ν Ν σκακιέρα από κενά και αστερίσκους, όπως στο παρακάτω σχήμα. 12. Επτάρια Γράψτε ένα πρόγραμμα που να διαβάζει έναν τετραψήφιο ακέραιο αριθμό και να υπολογίζει και να εκτυπώνει πόσες φορές επαναλαμβάνεται το 7, σ αυτό τον αριθμό. 12