Ερωτήσεις και απαντήσεις στα θέματα του κανονισμού κατάρτισης

Μέγεθος: px
Εμφάνιση ξεκινά από τη σελίδα:

Download "Ερωτήσεις και απαντήσεις στα θέματα του κανονισμού κατάρτισης"

Transcript

1 Ερωτήσεις και απαντήσεις στα θέματα του κανονισμού κατάρτισης 4 Φεβρουαρίου Ομάδα Α - Ερωτήσεις Γενικών Γνώσεων 1. (ΕΓΓ.11) Τι εννοούμε με τον όρο πρόβλημα; (Ενότητα 1.1 Βιβλίου) Με τον όρο πρόβλημα εννοείται μια κατάσταση η οποία χρήζει αντιμετώπισης, απαιτεί λύση, η δε λύση της δεν είναι γνωστή, ούτε προφανής. 2. (ΕΓΓ.12) Σε τι αναφερόμαστε με τον όρο Δομή Προβλήματος ; (Ενότητα 1.3 Βιβλίου) Με τον όρο δομή ενός προβλήματος αναφερόμαστε στα συστατικά του μέρη, στα επιμέρους τμήματα που το αποτελούν καθώς επίσης και στον τρόπο που αυτά τα μέρη συνδέονται μεταξυ τους. Η δομή ενός προβλήματος μπορεί να αναπαρασταθεί με τη διαγραμματική απεικόνιση (σελίδες 10 και 11 του βιβλίου). 3. (ΕΓΓ.13) Σε ποιες κατηγορίες διακρίνονται τα προβλήματα με κριτήριο τη δυνατότητα επίλυσής τους; (Ενότητα 1.5 Βιβλίου, σελίδα 16) Διακρίνονται σε επιλύσιμα, ανοικτά και άλυτα. Τα επιλύσιμα είναι εκείνα για τα οποία έχει ήδη διατυπωθεί λύση ή είναι τόσο σαφής η σχέση τους με άλλα ήδη λυμένα προβλήματα που μπορούμε να τα θεωρήσουμε ότι η λύση τους είναι προφανής. Τα ανοικτά είναι προβλήματα για τα οποία δεν έχει δοθεί ακόμα λύση αλλά είναι υπό έρευνα. Τα άλυτα είναι προβλήματα για τα οποία έχει αποδειχθεί ότι δεν υπάρχει λύση. 4. (ΕΓΓ.14) Σε ποιες κατηγορίες διακρίνονται τα επιλύσιμα προβλήματα με κριτήριο το βαθμό δόμησης των λύσεών τους; (Ενότητα 1.5 Βιβλίου, σελίδα 17) Διακρίνονται σε δομημένα, ημιδομημένα και αδόμητα. Δομημένα είναι εκείνη για τα οποία η λύση βρίσκεται με μια αυτοματοποιημένη διαδικασία. Ημιδομημένα είναι εκείνα στα οποία η λύση αναζητάται μέσα σε ένα εύρος πιθανών λύσεων και αφήνεται στον άνθρωπο η δυνατότητα επιλογής ανάμεσά τους. Αδόμητα είναι τα προβλήματα των οποίων οι λύσεις δεν μπορούν να δομηθούν και καθοριστικό παράγοντα στη λύση τους παίζει η ανθρώπινη δημιουργικότητα και διαίσθηση. 5. (ΕΓΓ.15) Σε ποιες κατηγορίες διακρίνονται τα προβλήματα με κριτήριο το είδος επίλυσης που επιζητούν; 1

2 (Ενότητα 1.5 Βιβλίου, σελίδα 17) Απόφασης, υπολογιστικά και βελτιστοποίησης. Στα προβλήματα απόφασης αναζητούμε μια θετική ή αρνητική απάντηση (ναι/όχι). Στα υπολογιστικά πρέπει να εκτελεστούν κάποια υπολογιστικά βήματα για να βρεθεί η λύση και στα βελτιστοποίησης αναζητούμε μία λύση η οποία να είναι η καλύτερη δυνατή σύμφωνα με κάποια κριτήρια. 6. (ΕΓΓ.16) Ποιες ενέργειες/διαδικασίες περιλαμβάνει η ανάλυση ενός προβλήματος; (Ενότητα 1.4, σελίδα 16) Κατανόηση, ανάλυση, επίλυση. Κατανόηση όπου απαιτείται η σωστή και πλήρης αποσαφήνιση των δεδομένων και των ζητούμενων του προβλήματος. Ανάλυση, όπου το αρχικό πρόβλημα διασπάται σε άλλα επιμέρους απλούστερα προβλήματα. Επίλυση, όπου υλοποιείται η λύση του προβλήματος μέσω της λύσης των επιμέρους προβλήματων. 7. (ΕΓΓ.17) Να αναφέρετε τις πιο συνηθισμένες τεχνικές σχεδίασης αλγορίθμων. Οι πιο συνηθισμένες τεχνικές είναι η διαίρει και βασίλευε, ο δυναμικός προγραμματισμός και η άπληστη μέθοδος. Στη διαίρει και βασίλευε το αρχικό σύνθετο πρόβλημα διασπάται σε μικρότερα επιμέρους προβλήματα της ίδιας φύσης με το αρχικό αλλά μικρότερα σε μέγεθος. Ένα παράδειγμα τέτοιας μεθόδου είναι η δυαδική αναζήτηση στην οποία η αναζήτηση ενός στοιχείου σε έναν πίνακα ανάγεται στην αναζήτηση του στοιχείου στο πάνω ή κάτω μισό του πίνακα. Αυτή η προσέγγιση εντάσσεται στη top-down μεθοδολογία, από πάνω προς τα κάτω δηλαδή από το σύνθετο στο απλό. (σελίδα 85 βιβλίου). Στο δυναμικό προγραμματισμό αρχικά επιλύονται μικρότερα σε μέγεθος άρα απλούστερα στιγμιότυπα του αρχικού προβλήματος και μέσω της σύνθεσης αυτών επιχειρείται η επίλυση του αρχικού συνθετότερου προβλήματος. Στη σελίδα 87 του βιβλίου παρουσιάζεται η μέθοδος και σχετικά παραδείγματα. Στην άπληστη μέθοδο επιχειρείται σε κάθε βήμα επίλυσης του προβλήματος η επιλογή που φαίνεται καλύτερη εκείνη τη στιγμή χωρίς να γίνεται προσπάθεια συνολικής θεώρησης του προβλήματος. Σε πολλές περιπτώσεις αυτή η προσέγγιση οδηγεί στην καλύτερη δυνατή λύση. Η μέθοδος παρουσιάζεται αναλυτικά στη σελίδα 90 του βιβλίου. 8. (ΕΓΓ.18) Τι εννοούμε με τον όρο αλγόριθμος και τι με τον όρο πρόγραμμα; (Ενότητα 2.1, σελίδα 25) Αλγόριθμος είναι μια πεπερασμένη σειρά ενεργειών, αυστηρά καθορισμένων και εκτελέσιμων σε πεπερασμένο χρόνο, που στοχεύουν στην επίλυση ενός προβλήματος. Πρόγραμμα είναι η αδιάσπαστη ενότητα ενός αλγορίθμου και των δομών δεδομένων που αυτός απαιτεί υλοποιημένα σε μορφή εκτελέσιμη από έναν υπολογιστή. 9. (ΕΓΓ.19) Ποια τα χαρακτηριστικά ενός αλγορίθμου; (Ενότητα 2.1 σελίδες 25-26) Είσοδος, έξοδος, καθοριστικότητα, περατότητα, αποτελεσματικότητα. 2

3 Είσοδος Καμία, μία ή περισσότερες τιμές δεδομένων πρέπει να δίνονται ως είσοδος σε κάποιον αλγόριθμο. Περίπτωση που δεν δίνονται τιμές εισόδου στον αλγόριθμο παρουσιάζονται όταν τα δεδομένα προκύπτουν από γεννήτριες τυχαιων αριθμων, ανάγνωση αρχείων ή άλλες πηγές. Έξοδος Κάθε αλγόριθμος παράγει κάποια αποτελέσματα. Καθοριστικότητα Τα βήματα ενός αλγορίθμου πρέπει να είναι σαφώς καθορισμένα (όχι αμφίσημα ή σχετικά με υποκειμενικές εκτιμήσεις). Περατότητα Ένας αλγόριθμος πρέπει να τερματίζεται μετά από πεπερασμένο χρόνο. Αποτελεσματικότητα Κάθε μεμονωμένη εντολή ενός αλγορίθμου πρέπει να είναι απλή, δηλαδή άμεσα εκτελέσιμη από έναν υπολογιστή. 10. (ΕΓΓ.20) Με ποιους τρόπους πραγματοποιείται η περιγραφή ενός αλγορίθμου; (Ενότητα 2.3, σελίδα 28) Ελεύθερο κείμενο, διαγραμματικές τεχνικές, φυσική γλώσσα, κωδικοποίηση. Ελεύθερο κείμενο δηλαδή περιγραφή σε μία ανθρώπινη γλώσσα. Είναι η πιο ανεπεξέργαστη και αδόμητη μέθοδος περιγραφής για αυτό και εγκυμονεί κινδύνους σχετικά με την αποτελεσματικότητα που αναφέρεται στην παραπάνω ερώτηση δηλαδή τη δυνατότητα εκτέλεσης από έναν υπολογιστή. Διαγραμματικές τεχνικές δηλαδή σχηματική παρουσίαση εκτέλεσης ενός αλγορίθμου. Ένα παράδειγμα διαγραμματικής τεχνικής είναι και τα διαγράμματα ροής. Οι διαγραμματικές τεχνικές δε χρησιμοποιούνται ιδαίτερα λόγω του ότι δεν είναι άμεση η διαδικασία μετατροπής τους σε εκτελέσιμο κώδικα. Φυσική γλώσσα με την οποία περιγράφονται τα βήματα εκτέλεσης του αλγορίθμου. Η μέθοδος είναι προτιμότερη από το ελεύθερο κείμενο αλλα ακόμα η χρησιμοποίηση φυσικής γλώσσας εγκυμονεί τον κίνδυνο ασάφειας οπότε μπορεί να παραβιάζει την αρχή της καθοριστικότητας που αναφέρεται παραπάνω. Κωδικοποίηση δηλαδή η περιγραφή ενός αλγορίθμου με κάποια μορφή κώδικα ο οποίος μπορεί να μετατραπεί με κάποιο περισσότερο ή λιγότερο άμεσο τρόπο σε μορφή εκτελέσιμη από υπολογιστή. Σε αυτήν την κατηγορία εμπίπτουν οι γλώσσες προγραμματισμού αλλά και οι ψευδογλώσσες εφόσον είναι αυστηρά καθορισμένες και συμβατές με το υπολογιστικό μοντέλο. 11. (ΕΓΓ.21) Τι ονομάζουμε δομή δεδομένων; (Ενότητα 3.2, σελίδα 54) Δομή δεδομένων είναι ένα σύνολο αποθηκευμένων δεδομένων που υφίστανται επεξεργασία από ένα σύνολο λειτουργιών. 12. (ΕΓΓ.22) Ποιες οι βασικές λειτουργίες επί των δομών δεδομένων; (Ενότητα 3.2, σελίδες 54-55) Προσπέλαση, εισαγωγή, διαγραφή, αναζήτηση, ταξινόμηση, αντιγραφή, συγχώνευση, διαχωρισμός. 3

4 2 Ομάδα Β - Ερωτήσεις Ειδικών γνώσεων Τα προγράμματα που αναφέρονται εδώ βρίσκονται και σε ηλεκτρονική μορφή στο syros.aegean.gr/users/quasi/iek/tep/pascal/programmata/pisto.zip 1. Να γραφεί αλγόριθμος που να διαβάζει 3 ακέραιους αριθμούς που παριστάνουν την ώρα, τα λεπτά και τα δευτερόλεπτα που έχουν περάσει από τα μεσάνυχτα (ώρα μηδέν) και να εμφανίζει το σύνολο των δευτερολέπτων. 1: Αλγόριθμος Ώρες 2: Διάβασε hours 3: Διάβασε minutes 4: Διάβασε seconds 5: total hours minutes 60 + seconds 6: Τύπωσε total 7: Τέλος Ώρες 2. Να σχεδιασθεί ο αλγόριθμος εύρεσης του μικρότερου στοιχείου από πίνακα 100 στοιχείων. 1: Αλγόριθμος Μικρότερο 2: Δεδομένα // p // 3:! Ο πίνακας p περιέχει 100 στοιχεία 4: min p[1] 5: Για i από 2 μέχρι 100 6: Αν p[i] < min τότε 7: min p[i] 8: Τέλος_αν 9: Τέλος_επανάληψης 10: Τύπωσε min 11: Τέλος Μικρότερο 3. Να σχεδιασθεί ο αλγόριθμος εύρεσης του αθροίσματος των στοιχείων δισδιάστατου πίνακα Περιγραφή της δομής του δισδιάστατου πίνακα μπορείτε να βρείτε στις σημειώσεις σχετικές με τις δομές δεδομένων. Υποθέτοντας ότι έχουμε έναν πίνακα p με m γραμμές και n στήλες, ο αλγόριθμος αρχικοποιεί τη μεταβλητή total στην οποία θα αποθηκευτεί το άθροισμα και σαρώνει μέσω δύο βρόχων επανάληψης (ένας για τις γραμμές και ένας για τις στήλες) τα στοιχεία του πίνακα αθροίζοντάς τα. 1: Αλγόριθμος Άθροισμα 2-διάστατου πίνακα 2: Δεδομένα // p // 3:! Ο πίνακας p έχει m γραμμές, n στήλες 4: total 0 5: Για i από 1 μέχρι m 6: Για j από 1 μέχρι n total p[i,j] 4

5 7: Τέλος_επανάληψης 8: Τέλος_επανάληψης 9: Αποτελέσματα // total // 10: Τέλος Άθροισμα 2-διάστατου πίνακα 4. Να σχεδιασθεί ο αλγόριθμος εισαγωγής στοιχείου σε στοίβα Δείτε τη σχετική ενότητα στις σημειώσεις (Ενότητα `δομές δεδομένων', υποενότητα 'στοίβα'). 5. Να σχεδιασθεί ο αλγόριθμος εξαγωγής στοιχείου από στοίβα Δείτε τη σχετική ενότητα στις σημειώσεις (Ενότητα `δομές δεδομένων', υποενότητα 'στοίβα'). 6. Να σχεδιασθεί ο αλγόριθμος εισαγωγής στοιχείου σε ουρά Δείτε τη σχετική ενότητα στις σημειώσεις (Ενότητα `δομές δεδομένων', υποενότητα 'ουρά'). 7. Να σχεδιασθεί ο αλγόριθμος εξαγωγής στοιχείου από ουρά Δείτε τη σχετική ενότητα στις σημειώσεις (Ενότητα `δομές δεδομένων', υποενότητα 'ουρά'). 8. Να σχεδιασθεί ο αλγόριθμος εισαγωγής στοιχείου σε λίστα Δείτε τη σχετική ενότητα στις σημειώσεις (Ενότητα `δομές δεδομένων', υποενότητα 'λίστες'). 9. Να σχεδιαθεί ο αλγόριθμος γραμμικής αναζήτησης Δείτε τη σχετική ενότητα στις σημειώσεις (Ενότητα `δομές δεδομένων', υποενότητα 'πίνακες'). 10. Να σχεδιασθεί ο αλγόριθμος αναζήτησης της φυσαλίδας Δεν υπάρχει αλγόριθμος αναζήτησης φυσαλίδας. Υπάρχει αλγόριθμος ταξινόμησης της φυσαλίδας. Δείτε τη σχετική ενότητα στις σημειώσεις (Ενότητα `δομές δεδομένων', υποενότητα 'πίνακες'). 11. Να γραφεί σε γλώσσα Pascal πρόγραμμα που θα διαβάζει αριθμούς μέχρις ότου το άθροισμά τους να γίνει μεγαλύτερο από ένα δεδομένο αριθμό από ένα δεδομένο αριθμό που θα εισάγεται από το πληκτρολόγιο 1 program pistob11; 2 var 3 total: integer; { To a8roisma } 4 limit: integer; { To orio pou 8a dwsei o xrnstns } 5 a: integer; 6 begin 7 write('dwse mou to orio: '); 8 readln(limit); 9 10 total := 0; 11 repeat 12 write(' Dwse evav ari8mo: '); 13 readln(a); 14 total := total + a; 5

6 15 writeln('to a8roisma eivai ', total); 16 until total > limit; 17 end. 12. Να γραφεί σε γλώσσα Pascal πρόγραμμα το οποίο να διαβάζει τα στοιχεία ενός μονοδιάστατου πίνακα (10 στοιχείων), να βρίσκει το μικρότερο και το μεγαλύτερο στοιχείο του πίνακα καθώς και τις θέσεις τους στον πίνακα και να τα τυπώνει στην οθόνη με το κατάλληλο μήνυμα 1 program pistob12; 2 var 3 p: array [1..10] of integer; { O pivakas } 4 mik, meg: integer; { To mikrotero kai megalytero } 5 mikindex, megindex: integer; { Oi 8eseis toys stov pivaka } 6 i: integer; 7 8 begin 9 for i := 1 to 10 do 10 begin 11 write(' Dwse to yp ari8mov ', i, ' stoixeio: '); 12 readln(p[i]); 13 end; mik := p[1]; 16 meg := p[1]; 17 mikindex := 1; 18 megindex := 1; for i := 2 to 10 do 21 begin 22 if p[i] < mik then 23 begin 24 mik := p[i]; 25 mikindex := i; 26 end 27 else if p[i] > meg then 28 begin 29 meg := p[i]; 30 megindex := i; 31 end; 32 end; writeln('to mikrotero stoixeio eivai to ', mik, ' sth 8esn ', mikindex); 35 writeln('to megalytero stoixeio eivai to ', meg, ' sth 8esn ', megindex); 36 end. 6

7 13. Να γραφεί σε γλώσσα Pascal πρόγραμμα που να διαβάζει το επώνυμο και το βαθμό κάθε μαθητή, να ταξινομεί τους μαθητές κατά φθίνουσα σειρά βαθμολογίας και να τυπώνει τα επώνυμά τους κατά την ταξινόμηση που προέκυψε (οι βαθμολογίες είναι διαφορετικές) Το πρόγραμμα χρησιμοποιεί δύο πίνακες, έναν για την αποθήκευση των επώνυμων (eponyma) και έναν για τις βαθμολογίες (bathmoi). Στις γραμμές πραγματοποιείται εισαγωγή των στοιχείων σε αυτούς τους πίνακες από το χρήστη. Στη συνέχεια (γραμμές 22-37) οι πίνακες ταξινομούνται με τη μέθοδο της φυσαλίδας. Στη γραμμή 26 γίνεται ο έλεγχος για το αν έναν βαθμός είναι μεγαλύτερος από τον προηγούμενό του. Σε αυτήν την περίπτωση πρέπει να γίνει ανταλλαγή μεταξύ τους (γραμμές 28-30). Επίσης όμως πρέπει να γίνει και ανταλλαγή των αντίστοιχων επωνύμων (γραμμές 32-34) έτσι ώστε η κάθε θέση του πίνακα βαθμών να αντιστοιχεί στο σωστό επώνυμο στον πίνακα επωνύμων. 1 program pistob13; 2 3 var 4 i, j: integer; 5 eponyma: array [1..10] of string; 6 bathmoi: array [1..10] of integer; 7 m: integer; 8 cstr: string; 9 cint: integer; begin 12 write(' Posoi eivai oi ma8ntes?'); 13 readln(m); 14 for i := 1 to m do 15 begin 16 write('dwse to epwnymo toy ma8ntn No#', i, ': '); 17 readln( eponyma[i]); 18 write('dwse to ba8mo toy ma8ntn No#', i, ': '); 19 readln( bathmoi[i]); 20 end; for i := 2 to m do 23 begin 24 for j := m downto i do 25 begin 26 if bathmoi[j] > bathmoi[j-1] then 27 begin 28 cint := bathmoi[j-1]; 29 bathmoi[j-1] := bathmoi[j]; 30 bathmoi[j] := cint; cstr := eponyma[j-1]; 33 eponyma[j-1] := eponyma[j]; 34 eponyma[j] := cstr; 7

8 35 end; 36 end; 37 end; for i := 1 to m do 40 writeln( eponyma[i]); 41 end. 14. Να γραφεί σε γλώσσα Pascal πρόγραμμα που θα διαβάζει τρεις αριθμούς και θα βρίσκει το μεγαλύτερο 1 program pistob14; 2 var 3 a, b, c: integer; 4 maxab: integer; 5 6 begin 7 write(' Dose ton proto arithmo: '); readln(a); 8 write(' Dose ton deutero arithmo: '); readln(b); 9 write(' Dose ton trito arithmo: '); readln(c); { Bres tov megalytero apo toys a kai b } 12 if a > b then 13 maxab := a 14 else 15 maxab := b; { Kai meta sygkrive ton me ton c } 18 if maxab > c then 19 writeln(' Megalyteros eivai o ', maxab) 20 else 21 writeln(' Megalyteros eivai o ', c); 22 end. 15. Να γραφεί σε γλώσσα Pascal πρόγραμμα που θα διαβάζει αριθμούς μέχρις ότου να διαβαστεί ο αριθμός 0 (μηδέν) και θα εμφανίζει το σύνολο και το μέσο όρο των εισαχθέντων αριθμών 1 program pistob15; 2 var 3 total: integer; { To a8roisma twv arithmon } 4 plithos: integer; { To plithos toys } 5 a: integer; 6 8

9 7 begin 8 total := 0; 9 plithos := 0; repeat 12 write(' Dose evav arithmo: '); 13 readln(a); 14 if a <> 0 then 15 begin 16 total := total + a; 17 plithos := plithos + 1; 18 end; 19 until a = 0; if total <> 0 then 22 begin 23 writeln(' Edoses ', plithos, ' arithmous'); 24 writeln('o mesos oros toys eivai ', ( total / plithos ):2:2); 25 end; 26 end. 16. Να γραφεί σε γλώσσα Pascal πρόγραμμα το οποίο θα υπολογίζει το άθροισμα των περιττών αριθμών από 1-99 (s= ) 1 program pistob16; 2 var 3 total: integer; { To athroisma } 4 i: integer; 5 begin 6 total := 0; 7 for i := 1 to 99 step 2 do 8 total := total + i; 9 writeln('to a8roisma eivai ', total); 10 end. 17. Να γραφεί σε γλώσσα Pascal πρόγραμμα που θα διαβάζει δύο αριθμούς από το πληκτρολόγιο και θα υπολογίζει το άθροισμα όλων των αριθμών από τον μικρότερο εκ των δύο έως και τον μεγαλύτερο εκ των δύο (π.χ. για τους αριθμούς 5,3 το αποτέλεσμα είναι = 12) 1 program pistob17; 2 var 3 a, b, c : integer; { Oi dyo arithmoi } 4 total: integer; { To athroisma } 9

10 5 6 begin 7 write(' Dose ton proto arithmo: '); readln(a); 8 write(' Dose ton deutero arithmo: '); readln(b); 9 10 { An o protos eivai megalyteros, allakse tn seira } 11 if a > b then 12 begin 13 c := a; 14 a := b; 15 b := c; 16 end; while a <= b do 19 begin 20 total := total + a; 21 a := a + 1; 22 end; 23 writeln('to athroisma einai ', total); 24 end. 18. Να γραφεί σε γλώσσα Pascal πρόγραμμα που θα διαβάζει 20 αριθμούς από το πληκτρολόγιο και θα εμφανίζει χωριστά το άθροισμα και το πλήθος των αρνητικών και το άθροισμα και το πλήθος των θετικών (ο μηδέν να θεωρηθεί θετικός) 1 program pistob18; 2 var 3 negtotal, postotal: integer; { Arvntiko kai thetiko athroisma } 4 negnum, posnum: integer; { Plithos arvntikwv kai thetikwv } 5 i, a: integer; 6 7 begin 8 for i := 1 to 20 do 9 begin 10 write('dose ton No#', i, ' arithmo: '); readln(a); 11 if a >= 0 then 12 begin 13 posnum := posnum + 1; 14 postotal := postotal + a; 15 end 16 else 17 begin 18 negnum := negnum + 1; 19 negtotal := negtotal + a; 20 end; 10

11 21 end; writeln(' Edoses ', posnum, ' thetikous me athroisma ', postotal); 24 writeln(' Edoses ', negnum, ' arvntikous me athroisma ', negtotal); 25 end. 19. Να γραφεί σε γλώσσα Pascal συνάρτηση που θα δέχεται ως όρισμα ακέραια αριθμητική τιμή που θα αντιπροσωπεύει έτος και θα επιστρέφει 1 αν το έτος είναι δίσεκτο ή διαφορετικά 0. (Δίσεκτο θεωρείται α. όταν εκφράζει αιώνα και διαιρείται ακριβώς με το 400 β. αν δεν εκφράζει αιώνα και διαιρείται ακριβώς με το 4). 1 program pistob19; 2 3 function disekto(year: integer): integer; 4 begin 5 if year mod 100 = 0 then 6 begin 7 if year mod 400 = 0 then 8 disekto := 1 9 else 10 disekto := 0; 11 end 12 else 13 begin 14 if year mod 4 = 0 then 15 disekto := 1 16 else 17 disekto := 0; 18 end; 19 end; 20. Να γραφεί σε γλώσσα Pascal πρόγραμμα που θα διαβάζει απ το πληκτρολόγιο το μισθό ενός υπαλλήλου (π.χ ευρώ) και θα εμφανίζει την ανάλυση στα υπάρχοντα νομίσματα (π.χ. 1763: 3 των 500, 2 των εκατό, ένα των 50, ένα των 10 και 3 του ενός 1 program pistob20; 2 const 3 numall = 9; 4 var 5 {-- Ta nomismata poy yparxoyn stnv agora --} 6 banknotes: array[1.. numall] of integer = 7 (1, 2, 5, 10, 20, 50, 100, 200, 500); 8 {-- Posa nomismata apo tnv ka8e katngoria 8a parei --} 9 pay: array[1.. numall] of integer; 11

12 10 current: integer; 11 misthos, ypoloipo: integer; i: integer; 14 begin 15 writeln(' Dose to mistho: '); 16 readln( misthos); for i := 1 to numall do 19 pay[i] := 0; ypoloipo := misthos; 22 {-- 3 ekivame apo to megalytero dynato nomisma --} 23 current := numall; 24 while ( current > 0) and ( ypoloipo > 0) do 25 begin 26 if banknotes[ current] <= ypoloipo then 27 begin 28 pay[ current] := pay[ current] + 1; 29 ypoloipo := ypoloipo - banknotes[ current]; 30 end 31 else 32 current := current - 1; 33 end; {-- Ektyposi apotelesmatos --} 36 writeln('8a parei:'); 37 for current := numall downto 1 do 38 begin 39 if pay[ current] > 0 then 40 writeln(pay[ current], ' nomismata twv ', banknotes[ current], ' eurw'); 41 end; 42 end. 21. Ποιοι είναι οι τύποι δεδομένων της Pascal; Να αναφέρετε παραδείγματα. Οι βασικοί τύποι της standard Pascal είναι οι integer, real, boolean, char. Υπάρχουν και οι λεγόμενοι δομημένοι τύποι που χρησιμοποιούν τους βασικούς για να φτιάξουν άλλους πιο σύνθετους. Οι δομημένοι τύποι είναι οι πίνακες (array), εγγραφές (record), σύνολα (set), αρχεία (file) και δείκτες (pointers). Μερικά παραδείγματα βασικών τύπων: integer a := 5;, b := 5 mod 2;. real a := 5.2;, b := 1e-2;, c := a / b; boolean a := true;, b := false, a := (5 > 2); char c := 'a';, c := char(97); 12

13 22. Ποια είναι η δομή ενός γενικού προγράμματος Pascal; Η δομή ενός προγράμματος είναι γενικά η παρακάτω: 1 program program_name( files); 2 label 3 { labels }; 4 const 5 { constants } 6 type 7 { types } 8 var 9 { variables } { procedures and functions } begin 14 { statements } 15 end. Η δήλωση program δηλώνει το όνομα του προγράμματος και προαιρετικά μέσα σε παρενθέσεις τα αρχεία που αυτό χρησιμοποιεί. Ακολουθούν τα τμήματα για τις δηλώσεις των labels (ετικέτες), constants (σταθερές), types (τύποι) και variables (μεταβλητές). Ακολουθούν τα υποπρογράμματα (functions και procedures) και τέλος το κύριο μπλοκ του προγράμματος. label Στις ετικέτες μπορούμε να δηλώσουμε ονόματα χωρισμένα με κόμματα. Τα ονόματα αυτά μπορούμε να τα βάλουμε ακολουθούμενα από μία άνω-κάτω τελεία σε οποιαδήποτε γραμμή του προγράμματος και να κατευθύνουμε τη ροή του προγράμματος προς τα εκεί με μία ενοτλή goto. Η εντολή goto είναι περιτή στον προγραμματισμό και καλό είναι να αποφεύγεται γιατί οδηγεί σε δυσνόητα, μη-δομημένα και επιρρεπή σε λάθη προγράμματα. const Σε αυτό το τμήμα δηλώνονται οι σταθερές του προγράμματος σε μορφή name = value;, που έχει ως αποτέλεσμα η σταθερά name να έχει την τιμη value. Παραδείγματα σταθερών είναι τα pi = ;, array\_size = 20;, alpha = 'a';. type Σε αυτό το τμήμα δηλώνονται από τον προγραμματιστή νέοι τύποι με το συντακτικό newtype = existingtype; που έχουν ως αποτέλεσμα να ορισθεί ένα νέο όνομα τύπου newtype το οποίο να σημαίνει existingtype. Π.χ. smallarray = array[1..10] of integer;, int = integer;, bigarray = array[ ];. Τα νέα ονόματα τύπων που δηλώνονται από το χρήστη με αυτόν τον τρόπο μπορούν να χρησιμοποιηθούν όπως και οι ενσωματωμένοι τύποι της Pascal σε δηλώσεις μεταβλητών. var Σε αυτό το τμήμα δηλώνονται οι μεταβλητές του προγράμματος και οι αντίστοιχοι τύποι τους σε μορφή name: type1; με αποτέλεσμα τη δέσμευση μνήμης για μία μεταβλητή με όνομα name και τύπου type1 ή name1, name2,..., namen: type2 με αποτέλεσμα τη δέσμευση μνήμης για τις μεταβλητές name1, name2 κτλ και τύπο type2. Ως όνομα τύπου μπορεί να δηλωθεί είτε ένας ενσωματωμένος τύπος της Pascal είτε κάποιος τύπος δηλωμένος από τον προγραμματιστή στο τμήμα type του προγράμματος. 13

14 23. Να αναφέρετε τι είναι η συνάρτηση (function) και τι διαδικασία (procedure) στην Pascal. Ποιες οι διαφορές τους; Οι συναρτήσεις (functions) και οι διαδικασίες (prodedures) είναι υποπρογράμματα στην Pascal. Πρόκειται δηλαδή για ομάδες εντολών που αντιστοιχίζονται σε ένα όνομα. Η συμπεριφορά τους είναι παραμετρική, δηλαδή υπάρχει η δυνατότητα να δέχονται παραμέτρους η τιμή των οποίων επηρεάζει τον ακριβή τρόπο εκτέλεσης των εντολών. Οι παράμετροι στον ορισμό ενός υποπρογράμματος ονομάζονται τυπικά ορίσματα. Τα υποπρογράμματα μπορούν να κληθούν από άλλα τμήματα του προγράμματος με απλή αναφόρα του ονόματός τους και με τις κατάλληλες παραμέτρους που σε αυτήν την περίπτωση ονομάζονται πραγματικά ορίσματα. Τα ορίσματα μπορεί να δίνονται κατ' αξία (by value) ή κατ' όρισμα (by reference). Στη δεύτερη περίπτωση, το όνομα του αντίστοιχου τυπικού ορίσματος δηλώνεται ως var παράμετρος. H διαφορά είναι ότι οι κατ' αξία παράμετροι είναι τοπικές μεταβλητές του υποπρογράμματος οι οποίες αρχικοποιούνται ως αντίγραφα της πραγματικής παραμέτρου ενώ οι κατ' όρισμα παράμετροι είναι αναφορές στις πραγματικές παραμέτρους. Ως συνέπεια, ένα υποπρόγραμμα μπορεί να μεταβάλλει τις πραγματικές παραμέτρους εκείνου που το καλεί αν αυτές δίνονται κατ' όρισμα ενώ δεν μπορεί όταν δίνονται κατ' αξία. Σε κάθε υποπρόγραμμα μπορούν να δηλώνονται τοπικές μεταβλητές. Ένα παράδειγμα ορισμού διαδικασίας και της αντίστοιχης κλήσης φαίνεται παρακάτω. Στη γραμμή 1 δηλώνουμε μία procedure με όνομα p και δύο τυπικές παραμέτρους a και b. Η a είναι τύπου integer και η τιμή της μεταβιβάζεται κατ' αξία (by value) ενώ η b είναι τύπου real και μεταβιβάζεται κατ' όρισμα. Επίσης δηλώνεται και η τοπική μεταβλητή x στη γραμμή 3. Στη γραμμή 5 μπορούν να τοποθετηθούν οι όποιες εντολές περιλαμβάνει το υποπρόγραμμα. Στη γραμμή 6 φαίνεται μία κλήση του υποπρογράμματος p. Τα πραγματικά ορίσματα c και d πρέπει να συμφωνούν σε πλήθος και τύπο με τα τυπικά ορίσματα. Το υποπρόγραμμα p μπορεί να μεταβάλλει την τιμή της d γιατί αυτή αντιστοιχεί στη var παράμετρο b υποπρογράμματος αλλά όχι την a. 1 procedure p(a: integer; var b: real); 2 var 3 x: integer; 4 begin 5 {-- Edo einai oi entoles toy ypoprogrammatos --} 6 end; 7 p(c, d); Όλα τα παραπάνω ισχύουν και για τις functions στην Pascal μόνο που αυτές μπορούν και επιστρέφουν κάποια τιμή. Μία function φαίνεται παρακάτω. Στη γραμμή 1, μετά τη λίστα ορισμάτων πρέπει να δηλωθεί ο τύπος της επιστρεφόμενης τιμής. Προκειμένου να επιστραφεί κάποια τιμή του ανάλογου τύπου, πρέπει να αποδοθεί στο όνομα της συνάρτησης όπως στη γραμμή 6. Η κλήση της συνάρτησης πραγματοποιείται στη γραμμή 8 όπως και στην περίπτωση των procedure μόνο που εφόσον υπάρχει επιστρεφόμενη τιμή, αυτή μπορεί να χρησιμοποιηθεί σε οποιαδήποτε επιτρεπτή για αυτόν τον τύπο λειτουργία όπως π.χ. να αποδοθεί σε μία μεταβλητή αντίστοιχου τύπου. 1 function f(a: integer; var b: real): integer; 2 var 14

15 3 x: integer; 4 begin 5 {-- Edo einai oi entoles toy ypoprogrammatos --} 6 f := kapoia integer timi; 7 end; 8 e := f(c, d); 24. Να γραφεί σε Pascal πρόγραμμα που θα εξάγει το ΜΚΔ μεταξύ δύο θετικών ακεραίων. Στις γραμμές 6-9 το πρόγραμμα ζητάει από το χρήστη να δώσει τους δύο αριθμούς στο πληκτρολόγιο. Το πρόγραμμα για να δουλέψει πρέπει ο πρώτος να είναι μεγαλύτερος από το δεύτερο οπότε αν ο χρήστης τους δώσει ανάποδα, το πρόγραμμα τους αντάλλαζει (γραμμές 11-16). Στη συνέχεια, στις γραμμές εφαρμόζει τον αλγόριθμο του Ευκλείδη για να βρει το ΜΚΔ το οποίο και τυπώνει στη γραμμή program pistob24; 2 var 3 a, b, c: integer; 4 5 begin 6 write(' Dose ton proto arithmo: '); 7 readln(a); 8 write(' Dose ton deutero arithmo: '); 9 readln(b); if a > b then 12 begin 13 c := a; 14 a := b; 15 b := c; 16 end; repeat 19 c := a mod b; 20 a := b; 21 b := c; 22 until c = 0; writeln('o MKD eivai o ', a); 25 end. 25. Να γραφεί σε Pascal πρόγραμμα που θα προσθέτει δύο κλάσματα. Θα πρέπει να γίνει ο έλεγχος των παρονομαστών ώστε να είναι διάφοροι του 0. Το πρόγραμμα αρχικά ζητάει τον αριθμητή και τον παρονομαστή του πρώτου και του δεύτερου κλάσματος (γραμμές 52-55). Για το σκοπό αυτό καλείται η procedure inputfrac (γραμμές 8-18) η οποία ελέγχει ώστε οι παρονομαστές να μην είναι μηδέν. Οι αριθμητές του 15

16 πρώτου και του δεύτερου κλάσματος αποθηκεύονται στις μεταβλητές ar1 και ar2 αντίστοιχα. Ανάλογα και οι παρονομαστές στις μεταβλητές par1 και par2. Από την άλγεβρα γνωρίζουμε ότι για να προσθέσουμε δύο κλάσματα αρχικά πρέπει να τα κάνουμε ομώνυμα. Για να γίνει αυτό πολλαπλασιάζουμε τους όρους κάθε κλάσματος με έναν κατάλληλο πολλαπλασιαστή. Ο πολλαπλασιαστής για το πρώτο κλάσμα είναι ίσος με το πηλίκο του ΜΚΔ των παρονομαστών προς τον παρονομαστή του δεύτερου κλάσματος. Αντίστοιχα ο πολλαπλασιαστής για το δεύτερο κλάσμα είναι ίσος με το πηλίκο του ΜΚΔ των παρονομαστών προς το παρονομαστή του πρώτου κλάσματος. Το αποτέλεσμα θα είναι τα δύο κλάσματα να έχουν τον ίδιο παρονομαστή (ίσο με το ΕΚΠ των παρονομαστών). Το άθροισμα είναι το κλάσμα που έχει αριθμητή, το άθροισμα των αριθμητών και παρονομαστή το νέο κοινό παρονομαστή των δύο κλασμάτων. Στις γραμμές ορίζεται η συνάρτηση υπολογισμού του ΜΚΔ. Στις γραμμές υπολογίζονται οι πολλαπλασιαστές mult1 και mult2 για τα δύο κλάσματα. Στις γραμμές οι όροι των κλασμάτων πολλαπλασιάζονται με τους αντίστοιχους πολλαπλασιαστές προκειμένου να γίνουν ομώνυμα. Στις γραμμές 67, 68 υπολογίζονται ο αριθμητής και ο παρονομαστής του αθροίσματος και τέλος το αποτέλεσμα τυπώνεται στη γραμμή 70 ¹. 1 program pistob25; 2 3 { Eisagwgi toy arithmiti kai toy parovomasti evos klasmatos apo to 5 plnktrologio. H diadikasia gia tov parovomastn syvexizetai mexri 6 va dw8ei mn mndevikos } 8 procedure inputfrac(var ar, par: integer); 9 begin 10 write(' Dose ton arithmiti: '); 11 readln(ar); 12 repeat 13 write(' Dose ton paronomasti: '); 14 readln(par); 15 if par = 0 then 16 writeln('o parovomastns dev mporei va eivai 0. 3 avaprospathise.'); 17 until par <> 0; 18 end; { Epistrefei to MKD dyo akeraiwv } function mkd(a, b: integer): integer; 25 var 26 c: integer; ¹Το πρόγραμμα μπορεί να γίνει αρκετά πιο σύντομο υπολογίζοντας απευθείας τον αριθμητή και παρονομαστή του αποτελέσματος χωρίς να πραγματοποιηθεί ρητά η αναγωγή των δύο κλασμάτων. Οι γραμμές μπορούν να γίνουν κάπως έτσι ar := ar1 * mult1 + ar2 * mult2; par := par1 * mult1; 16

17 27 begin 28 if a > b then 29 begin 30 c := a; 31 a := b; 32 b := c; 33 end; repeat 36 c := a mod b; 37 a := b; 38 b := c; 39 until c = 0; mkd := a; 42 end; var 45 { Arithmites kai parovomastes twv klasmatwv 1 kai 2 } 46 ar1, par1, ar2, par2: integer; 47 { Arithmitis kai parovomastis toy apotelesmatos } 48 ar, par: integer; 49 m: integer; { MKD } 50 mult1, mult2: integer; { Pollaplasiastes } 51 begin 52 writeln(' Dose to proto klasma'); 53 inputfrac(ar1, par1); 54 writeln(' Dose to deutero klasma'); 55 inputfrac(ar2, par2); m := mkd( par1, par2); 58 mult1 := par2 div m; 59 mult2 := par1 div m; ar1 := ar1 * mult1; 62 par1 := par1 * mult1; ar2 := ar2 * mult2; 65 par2 := par2 * mult2; ar := ar1 + ar2; 68 par := par2; writeln('to athroisma eivai ', ar, '/', par); 71 end. 17

18 26. Να γραφεί σε Pascal πρόγραμμα που θα κάνει τις βασικές πράξεις μεταξύ δύο κλασμάτων Το πρόγραμμα χρησιμοποιεί τις συναρτήσεις και τεχνικές που αναφέρθηκαν και στα προγούμενα προγράμματα. Παραλείπουμε την περιγραφή τους για συντομία. Το πρόγραμμα ζητάει όπως και στα προηγούμενα ερωτήματα τους όρους δύο κλασμάτων από το πληκτρολόγιο. Στη συνέχεια (γραμμές 71-81) τυπώνει ένα μενού και ζητάει από το χρήστη να δώσει ποια πράξη θέλει να γίνει στα κλάσματα. Στη συνέχεια σε μία case (γραμμές 83-88) καλεί την κατάλληλη συνάρτηση ανάλογα με τι ζήτησε ο χρήστης. Χρειάζονται μόνο δύο συναρτήσεις, πρόσθεσης και πολλαπλασιασμού, και όχι τέσσερις γιατί η αφαίρεση είναι πρόσθεση του αντιθέτου και η διαίρεση πολλαπλασιασμός με τον αντίστροφο. 1 program pistob26; 2 3 { Eisagwgi toy arithmiti kai toy parovomasti evos klasmatos apo to 5 plnktrologio. H diadikasia gia tov parovomastn syvexizetai mexri 6 va dw8ei mn mndevikos } 8 procedure inputfrac(var ar, par: integer); 9 begin 10 write(' Dose ton arithmiti: '); readln( ar); 11 repeat 12 write(' Dose ton paronomasti: '); readln( par); 13 if par = 0 then 14 writeln('o parovomastns dev mporei va eivai 0. 3 avaprospathise.'); 15 until par <> 0; 16 end; { Epistrefei to MKD dyo akeraiwv } function mkd(a, b: integer): integer; 23 var 24 c: integer; 25 begin 26 if a > b then 27 begin c := a; a := b; b := c; end; repeat 30 c := a mod b; a := b; b := c; 31 until c = 0; mkd := a; 34 end; {

19 37 Prosthesi klasmatwv } 39 procedure addfrac(ar1, par1, ar2, par2: integer; var ar, par: integer); 40 var 41 m: integer; 42 mult1, mult2: integer; 43 begin 44 m := mkd( par1, par2); 45 mult1 := par2 div m; 46 mult2 := par1 div m; ar := ar1 * mult1 + ar2 * mult2; 49 par := par1 * mult1; 50 end; procedure multfrac(ar1, par1, ar2, par2: integer; var ar, par: integer); 53 begin 54 ar := ar1 * ar2; 55 par := par1 * par2; 56 end; var 59 { Arithmites kai parovomastes twv klasmatwv 1 kai 2 } 60 ar1, par1, ar2, par2: integer; 61 { Arithmitis kai parovomastis toy apotelesmatos } 62 ar, par: integer; 63 choice: integer; { epilogn sto mevou } 64 begin 65 writeln(' Dose to proto klasma'); 66 inputfrac(ar1, par1); 67 writeln(' Dose to deutero klasma'); 68 inputfrac(ar2, par2); {---- MENU ----} 71 repeat 72 writeln(' Diale3e pra3n'); 73 writeln('1. Prosthesi'); 74 writeln('2. Afairesn'); 75 writeln('3. Pollaplasiasmos'); 76 writeln('4. Diairesn'); 77 write(' Dwse tnv epilogn sou: '); 78 readln( choice); 79 if ( choice < 1) or ( choice > 4) then 80 writeln('apo 1 ews 4. 3 avaprospa8nse.'); 81 until ( choice >= 1) and ( choice <= 4); 82 19

20 83 case choice of 84 1: addfrac(ar1, par1, ar2, par2, ar, par); 85 2: addfrac(ar1, par1, -ar2, par2, ar, par); 86 3: multfrac(ar1, par1, ar2, par2, ar, par); 87 4: multfrac(ar1, par1, par2, ar2, ar, par); 88 end; writeln('to athroisma eivai ', ar, '/', par); 91 end. 27. Να γραφεί σε Pascal πρόγραμμα που θα κάνει απλοποίηση ενός κλάσματος. Η διαδικασία απλοπλοίησης ενός κλάσματος συνίσταται στον υπολογισμό του ΜΚΔ του αριθμητή και του παρονομαστή και στη διαίρεση και των δύο με αυτό. Το παρακάτω πρόγραμμα ζητάει από το χρήστη τον αριθμητή και τον παρονομαστή ενός κλάσματος. Η procedure inputfrac υλοποιεί τη διαδικασία μεριμνώντας για να μη δοθεί το μηδέν ως παρονομαστής. Στις γραμμές καλούνται αυτά τα υποπρογράμματα και στη συνέχεια αριθμητής και παρονομαστής διαιρούνται με το ΜΚΔ. Στη γραμμή 53 τυπώνεται το αποτέλεσμα. function mkd υπολογίζει το ΜΚΔ αριθμητή και παρονομαστή. 1 program pistob28; 2 3 { Eisagwgi toy arithmiti kai toy parovomasti evos klasmatos apo to 5 plnktrologio. H diadikasia gia tov parovomastn syvexizetai mexri 6 va dw8ei mn mndevikos } 8 procedure inputfrac(var ar, par: integer); 9 begin 10 write(' Dose ton arithmiti: '); 11 readln(ar); 12 repeat 13 write(' Dose ton paronomasti: '); 14 readln(par); 15 if par = 0 then 16 writeln('o parovomastns dev mporei va eivai 0. 3 avaprospathise.'); 17 until par <> 0; 18 end; { Epistrefei to MKD dyo akeraiwv } function mkd(a, b: integer): integer; 25 var 26 c: integer; 27 begin 20

21 28 if a > b then 29 begin 30 c := a; 31 a := b; 32 b := c; 33 end; repeat 36 c := a mod b; 37 a := b; 38 b := c; 39 until c = 0; mkd := a; 42 end; var 45 ar, par: integer; 46 m: integer; 47 begin 48 inputfrac(ar, par); 49 m := mkd(ar, par); 50 ar := ar div m; 51 par := par div m; writeln('to aplopoinmevo klasma eivai ', ar, '/', par); 54 end. 28. Αναπτύξτε ένα πρόγραμμα σε γλώσσα Pascal με το οποίο μια συνδεδεμένη λίστα ακεραίων θα διασπάται σε δύο λίστες: Η πρώτη θα περιλαμβάνει τους θετικούς αριθμούς της αρχικής λίστας και η δεύτερη τους αρνητικούς. Η αρχική λίστα θα εισάγεται από το πληκτρολόγιο. Μία σωστή λύση είναι η παρακάτω. Θεωρώ ότι είναι νωρίς για εσάς να ασχοληθείτε με τα εργαλεία που χρησιμοποιούνται σε αυτήν (records, δυναμική δέσμευση μνήμης). Καλύτερα αφήστε την για το επόμενο εξάμηνο. 1 program pistob28; 2 3 type 4 nodeptr = ^node; 5 node = record 6 n: integer; 7 next: nodeptr; 8 end; 9 10 procedure print_list(node: nodeptr); 11 begin 21

22 12 while node <> nil do 13 begin 14 write(node^.n, ' '); 15 node := node ^. next; 16 end; 17 writeln; 18 end; procedure insert_list(a: integer; var h: nodeptr); 21 var 22 newnode: nodeptr; 23 begin 24 new( newnode); 25 newnode ^. n := a; 26 newnode ^. next := h; 27 h := newnode; 28 end; var 31 head: nodeptr; 32 headthetikoi: nodeptr; 33 headarnitikoi: nodeptr; 34 np: nodeptr; 35 a: integer; 36 begin 37 head := nil; 38 writeln(' Dose mou toys ari8mous (0 gia telos)'); 39 repeat 40 write('->' ); 41 readln(a); 42 if a <> 0 then 43 insert_list(a, head); 44 until a = 0; headthetikoi := nil; 47 headarnitikoi := nil; np := head; 50 while node <> nil do 51 begin 52 a := np ^. n; 53 if a < 0 then 54 insert_list(a, headarnitikoi) 55 else 56 insert_list(a, headthetikoi); 57 np := np ^. next; 22

23 58 end; writeln(' Oloi oi ari8moi'); 61 print_list(head); 62 writeln('oi arvntikoi ari8moi'); 63 print_list( headarnitikoi); 64 writeln('oi thetikoi ari8moi'); 65 print_list( headthetikoi); 66 end. 29. Να γραφεί πρόγραμμα σε Pascal που θα ταξινομεί κατ αύξουσα σειρά ένα μονοδιάστατο πίνακα 10 ακεραίων. Πρόκειται για απλή εφαρμογή της ταξινόμησης της φυσαλίδας. Για λόγους ευκολίας τα στοιχεία του πίνακα δίνονται τυχαία (γραμμή 8). Θα μπορούσαν να ζητηθούν και από το πληκτρολόγιο με μία εντολή readln(p[i]);. 1 program pistob29; 2 var 3 p: array [1..10] of integer; 4 i, j, c: integer; 5 6 begin 7 for i := 1 to 10 do 8 p[i] := random (100); 9 10 for i := 2 to 10 do 11 for j := 10 downto i do 12 if p[j] < p[j-1] then 13 begin 14 c := p[j]; 15 p[j] := p[j-1]; 16 p[j-1] := c; 17 end; for i := 1 to 10 do 20 write(p[i], ' '); 21 writeln; 22 end. 30. Να γραφεί πρόγραμμα σε Pascal που θα διαβάζει τα στοιχεία δισδιάστατου πίνακα 5Χ5 και θα υπολογίζει και τυπώνει τα αθροίσματα των στοιχείων κάθε γραμμής του. Είναι γνωστό το πώς αθροίζουμε τα στοιχεία ενός πίνακα. Αρχικά μηδενίζουμε τη μεταβλητή στην οποία θα αποθηκευθεί το άθροισμα και στη συνέχεια διατρέχουμε με ένα βρόχο for τα στοιχεία τα πίνακα ένα προς ένα προσθέτοντας κάθε ένα από αυτά στη μεταβλητή του αθροίσματος. Αυτό γίνεται στο παρακάτω πρόγραμμα στις γραμμές 17 έως 20 για τη γραμμή 23

24 i. Προκειμένου να γίνει αυτό για κάθε μία γραμμή του πίνακα οι εντολές περικλείονται μέσα σε ένα βρόχο for (γραμμή 15) ο οποίος διατρέχει τις γραμμές του πίνακα δίνοντας στη μεταβλητή i τις τιμές από το ένα έως το 5. Στις γραμμές 8-13 ζητούνται τα στοιχεία του πίνακα από το πληκτρολόγιο. 1 program pistob30; 2 var 3 p: array[1..5, 1..5] of integer; 4 sum: integer; 5 i, j: integer; 6 7 begin 8 for i := 1 to 5 do 9 for j := 1 to 5 do 10 begin 11 write('dose to stoixeio [', i, ',', j, '] toy pinaka'); 12 readln(p[i,j]); 13 end; for i := 1 to 5 do 16 begin 17 sum := 0; 18 for j := 1 to 5 do 19 sum := sum + p[i,j]; 20 writeln('to athroisma tns grammis ', i, ' eivai ', sum); 21 end; 22 end. 31. Να γραφεί πρόγραμμα σε Pascal που θα διαβάζει χαρακτήρα προς χαρακτήρα ένα ορισμένο κείμενο και θα υπολογίζει και τυπώνει τη συχνότητα εμφάνισης κάθε γράμματος. Το πρόγραμμα αποθηκεύει το πλήθος των εμφανίσεων κάθε γράμματος σε δύο πίνακες έναν για τα πεζά και έναν για τα κεφαλαία (γραμμές 3-4). Η Pascal επιτρέπει τη χρησιμοποιήση οποιουδήποτε βαθμωτού τύπου δεδομένων ως δείκτη σε έναν πινακα και έτσι στους πίνακες αυτούς αντί για ακέραιοι δείκτες χρησιμοποιούνται οι ίδιοι οι χαρακτήρες που θέλουμε να μετρήσουμε, δηλαδή 'a'..'z' στον πρώτο και 'A'..'Z' στο δεύτερο. Η πρόθεση είναι το στοιχείο syxpeza['a'] να περιέχει το πλήθος των εμφανίσεων του χαρακτήρα 'a' κοκ. Στις γραμμές 8-11 γίνεται αρχικοποίηση στο μηδέν των μετρητών εμφανίσεων του κάθε γράμματος. Η ανάγνωση των χαρακτήρων γίνεται στις γραμμές σε ένα repeat-until βρόχο ο οποίος επαναλαμβάνεται μέχρι να ισχύσει η συνάρτηση eof (τέλος αρχείου). Σε περιβάλλοντα Windows ο χρήστης πρέπει να πατήσει Ctrl+Z ενώ σε UNIX Ctrl+D για να δηλώσει το τέλος του κειμένου. Στις γραμμές γίνεται η αύξηση του κατάλληλου μετρητή. Αν ο χαρακτήρας είναι πεζός ισχύει η συνθήκη της γραμμής 15 και αυξάνεται ο αντίστοιχος μετρητής του πίνακα syxpeza και αντίστοιχα γίνεται για τα κεφαλαία στις γραμμές Τέλος γίνεται η εμφάνιση των αποτελεσμάτων στην οθόνη. Στις γραμμές εμφανίζονται τα αποτελέσματα για τους πεζούς χαρακτήρες. Επειδή τα αποτελέσματα και για τους 26 χαρακτήρες του αλφαβήτου δεν 24

25 χωράνε σε μία γραμμή, το if της γραμμής 24 αλλάζει γραμμή στην οθόνη μετά το 'k' και το 'u'. Αντίστοιχα τυπώνονται οι μετρήσεις για τους κεφαλαίους στις γραμμές program pistob31; 2 var 3 syxpeza: array['a'..'z'] of integer; 4 syxkefalaia: array['a'..'z'] of integer; 5 c: char; 6 7 begin 8 for c := 'a' to 'z' do 9 syxpeza[c] := 0; 10 for c := 'A' to 'Z' do 11 syxkefalaia[c] := 0; repeat 14 read(c); 15 if (c >= 'a') and (c <= 'z') then 16 syxpeza[c] := syxpeza[c] else if (c >= 'A') and (c <= 'Z') then 18 syxkefalaia[c] := syxkefalaia[c] + 1; 19 until eof; for c := 'a' to 'z' do 22 begin 23 write(c, ':', syxpeza[c]:3, ' '); 24 if (c = 'k') or (c = 'u') then 25 writeln; 26 end; 27 writeln; for c := 'A' to 'Z' do 30 begin 31 write(c, ':', syxkefalaia[c]:3, ' '); 32 if (c = 'K') or (c = 'U') then 33 writeln; 34 end; 35 writeln; 36 end. 32. Να γραφεί πρόγραμμα σε Pascal που με τη χρήση της αναδρομής υπολογίζει το παραγοντικό των 10 πρώτων ακεραίων αριθμών. (Υπόδειξη: το παραγοντικό ενός αριθμού είναι το γινόμενο του αριθμού επί όλων των αριθμών μέχρι τον αριθμό αυτό, όπου k! = k (k 1)! και 0! = 1). Το πρόγραμμα είναι απλώς μια μετατροπή του αλγορίθμου που δίνεται στη σελίδα 69 του 25

26 βιβλίου. Η διαφορά του έγκειται στο ότι τυπώνει το παραγοντικό για κάθε αριθμό². 1 program pistob32; 2 3 function factorial(n: integer): LongInt; 4 begin 5 if n = 0 then 6 begin 7 factorial := 1; 8 writeln(' Paragovtiko(', n, ') = ', factorial); 9 end 10 else 11 begin 12 factorial := n * factorial(n-1); 13 writeln(' Paragovtiko(', n, ') = ', factorial); 14 end; 15 end; var 18 number: integer; 19 begin 20 factorial (10); 21 end. ²Σημειώστε ότι η συνάρτηση factorial δεν επιστρέφει integer αλλά LongInt. Ο λόγος είναι ότι στη standard Pascal ο τύπος integer δεν επαρκεί για να αποθηκεύσει την τιμή 10! καθώς έχει εύρος μέχρι την τιμή και το 10! είναι αρκετά μεγαλύτερο. Υποθέτω ότι στην πιστοποίηση δε θα υπάρχει πρόβλημα να γράψει κανείς απλώς integer 26

Pascal. 15 Νοεμβρίου 2011

Pascal. 15 Νοεμβρίου 2011 Pascal 15 Νοεμβρίου 011 1 Procedures σε Pascal Στην Pascal μπορούμε να ορίσουμε διαδικασίες (procedures). Αυτές είναι ομάδες εντολών οι οποίες έχουν ένα όνομα. Γράφοντας το όνομα μιας διαδικασίας μπορούμε

Διαβάστε περισσότερα

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

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

Διαβάστε περισσότερα

Εντολές ελέγχου ροής if, for, while, do-while

Εντολές ελέγχου ροής if, for, while, do-while Εντολές ελέγχου ροής if, for, while, do-while 1 Μαρτίου 014 1 Εντολές εκτέλεσης υπό συνθήκη Μπορούμε να εκτελέσουμε εντολές της γλώσσας σε περίπτωση που κάποια συνθήκη ισχύει χρησιμοποιώντας την εντολή

Διαβάστε περισσότερα

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

TO ΥΠΟΠΡΟΓΡΑΜΜΑ ΣΥΝΑΡΤΗΣΗ Μάθημα 7 - Υποπρογράμματα Εργαστήριο 11 Ο TO ΥΠΟΠΡΟΓΡΑΜΜΑ ΣΥΝΑΡΤΗΣΗ Βασικές Έννοιες: Υποπρόγραμμα, Ανάλυση προβλήματος, top down σχεδίαση, Συνάρτηση, Διαδικασία, Παράμετρος, Κλήση συνάρτησης, Μετάβαση

Διαβάστε περισσότερα

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

Εντολή Δεδομένα Περιεχόμενα μετά την εκτέλεση 1 read(x) 122 x= 2 read(a,b,c) 133 244 355 a= b= c= 3 read(d,e) 166 277 3888 ΕΡΩΤΗΣΕΙΣ 1. Να αναφέρετε μερικά από τα ιδιαίτερα χαρακτηριστικά της Pascal. 2. Ποιο είναι το αλφάβητο της Pascal; 3. Ποια είναι τα ονόματα-ταυτότητες και σε τι χρησιμεύουν; 4. Σε τι χρησιμεύει το συντακτικό

Διαβάστε περισσότερα

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

Pascal, απλοί τύποι, τελεστές και εκφράσεις Pascal, απλοί τύποι, τελεστές και εκφράσεις 15 Νοεμβρίου 2011 1 Γενικά Στην standard Pascal ορίζονται τέσσερις βασικοί τύποι μεταβλητών: integer: Παριστάνει ακέραιους αριθμούς από το -32768 μέχρι και το

Διαβάστε περισσότερα

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

- Αναπαράσταση ακέραιας τιµής : - Εύρος ακεραίων : - Ακέραιοι τύποι: - Πράξεις µε ακεραίους (DIV - MOD) Η Γλώσσα Pascal Χαρακτηριστικά Τύποι Δεδοµένων Δοµή προγράµµατος 1. Βασικές έννοιες Χαρακτηριστικά της γλώσσας Pascal Γλώσσα προγραµµατισµού Συντακτικό Σηµασιολογία Αλφάβητο της γλώσσας Pascal (Σύνολο

Διαβάστε περισσότερα

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

ΚΕΦΑΛΑΙΟ 8 Η ΓΛΩΣΣΑ PASCAL 8.1. Εισαγωγή ΚΕΦΑΛΑΙΟ 8 Η ΓΛΩΣΣΑ PACAL Πως προέκυψε η γλώσσα προγραμματισμού Pascal και ποια είναι τα γενικά της χαρακτηριστικά; Σχεδιάστηκε από τον Ελβετό επιστήμονα της Πληροφορικής Nicklaus Wirth to

Διαβάστε περισσότερα

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

Σχολικό Βιβλίο - Κεφάλαιο 7 ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ ΜΕ PASCAL ΠΑΡΟΥΣΙΑΣΗ 13 Σχολικό Βιβλίο - Κεφάλαιο 7 ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ ΜΕ PASCAL ΠΑΡΟΥΣΙΑΣΗ 13 ΙΣΤΟΡΙΚΑ Παρουσιάστηκε το 1970 από το Niklaus Wirth Προγενέστερη γλώσσα ήταν η Algol 60 Είναι δομημένη γλώσσα προγραμματισμού υψηλού

Διαβάστε περισσότερα

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

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

Διαβάστε περισσότερα

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

Βασικές Έννοιες Αλγορίθμων Τι είναι αλγόριθμος Βασικές Έννοιες Αλγορίθμων Τι είναι αλγόριθμος Παραδείγματα αλγορίθμων: Η παρασκευή ενός κέικ Η εύρεση του μέγιστου κοινού διαιρέτη δύο αριθμών Η εκκίνηση ενός αυτοκινήτου Η πρωινή προετοιμασία για το

Διαβάστε περισσότερα

2ο σετ σημειώσεων. 1 Εντολές εκτέλεσης υπό συνθήκη. 19 Μαρτίου 2012

2ο σετ σημειώσεων. 1 Εντολές εκτέλεσης υπό συνθήκη. 19 Μαρτίου 2012 ο σετ σημειώσεων 19 Μαρτίου 01 1 Εντολές εκτέλεσης υπό συνθήκη Μπορούμε να εκτελέσουμε εντολές της γλώσσας σε περίπτωση που κάποια συνθήκη ισχύει χρησιμοποιώντας την εντολή if. Συντάσσεται ως εξής: 1 if

Διαβάστε περισσότερα

Pascal. 26 Οκτωβρίου 2011

Pascal. 26 Οκτωβρίου 2011 Pascal 6 Οκτωβρίου 011 1 Procedures σε Pascal Στην Pascal μπορούμε να ορίσουμε διαδικασίες (procedures). Αυτές είναι ομάδες εντολών οι οποίες έχουν ένα όνομα. Γράφοντας το όνομα μιας διαδικασίας μπορούμε

Διαβάστε περισσότερα

ΜΑΗΣ 2007 - ΕΞΕΤΑΣΤΙΚΟ ΔΟΚΙΜΙΟ

ΜΑΗΣ 2007 - ΕΞΕΤΑΣΤΙΚΟ ΔΟΚΙΜΙΟ ΜΑΗΣ 2007 - ΕΞΕΤΑΣΤΙΚΟ ΔΟΚΙΜΙΟ ΟΔΗΓΙΕΣ: ΝΑ ΑΠΑΝΤΗΣΕΤΕ ΣΕ ΟΛΕΣ ΤΙΣ ΕΡΩΤΗΣΕΙΣ. Το εξεταστικό δοκίμιο αποτελείται από δύο Ενότητες Α και Β. ΕΝΟΤΗΤΑ Α - Αποτελείται από δέκα (10) ερωτήσεις. Κάθε ορθή απάντηση

Διαβάστε περισσότερα

8. Η δημιουργία του εκτελέσιμου προγράμματος γίνεται μόνο όταν το πηγαίο πρόγραμμα δεν περιέχει συντακτικά λάθη.

8. Η δημιουργία του εκτελέσιμου προγράμματος γίνεται μόνο όταν το πηγαίο πρόγραμμα δεν περιέχει συντακτικά λάθη. 1ΗΣ ΣΕΛΙΔΑΣ ΤΕΛΙΚΟ ΕΠΑΝΑΛΗΠΤΙΚΟ ΔΙΑΓΩΝΙΣΜΑ 2015 Γ ΓΕΝΙΚΟΥ ΛΥΚΕΙΟΥ ΕΞΕΤΑΖΟΜΕΝΟ ΜΑΘΗΜΑ: ΑΝΑΠΤΥΞΗ ΕΦΑΡΜΟΓΩΝ ΣΕ ΠΡΟΓΡΑΜΜΑΤΙΣΤΙΚΟ ΠΕΡΙΒΑΛΛΟΝ ΤΕΧΝΟΛΟΓΙΚΗΣ ΚΑΤΕΥΘΥΝΣΗΣ (ΚΥΚΛΟΣ ΠΛΗΡΟΦΟΡΙΚΗΣ ΚΑΙ ΥΠΗΡΕΣΙΩΝ) ΣΥΝΟΛΟ

Διαβάστε περισσότερα

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

Η ΔΟΜΗ ΕΠΑΝΑΛΗΨΗΣ Εντολές Επανάληψης REPEAT UNTIL, FOR, WHILE ΕΡΓΑΣΤΗΡΙΟ 7 Ο Η ΔΟΜΗ ΕΠΑΝΑΛΗΨΗΣ Εντολές Επανάληψης REPEAT UNTIL, FOR, WHILE Βασικές Έννοιες: Δομή Επανάληψης, Εντολές Επανάληψης (For, While do, Repeat until), Αλγόριθμος, Αθροιστής, Μετρητής, Παράσταση

Διαβάστε περισσότερα

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

Σου προτείνω να τυπώσεις τις επόμενες τέσσερις σελίδες σε ένα φύλο διπλής όψης και να τις έχεις μαζί σου για εύκολη αναφορά. AeppAcademy.com facebook.com/aeppacademy Γεια. Σου προτείνω να τυπώσεις τις επόμενες τέσσερις σελίδες σε ένα φύλο διπλής όψης και να τις έχεις μαζί σου για εύκολη αναφορά. Καλή Ανάγνωση & Καλή Επιτυχία

Διαβάστε περισσότερα

Ενότητα 3: «Εισαγωγή στην Αλγοριθμική και στον Προγραμματισμό: loops, subroutines, tables»

Ενότητα 3: «Εισαγωγή στην Αλγοριθμική και στον Προγραμματισμό: loops, subroutines, tables» ενισχυτική διδασκαλία Ενότητα 3: «Εισαγωγή στην Αλγοριθμική και στον Προγραμματισμό: loops, subroutines, tables» Χ. Σκουρλάς cskourlas@teiath.gr 2015-16 Επαναλήψεις - Loops, Διαδικασίες - procedures, Συναρτήσεις

Διαβάστε περισσότερα

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

ΓΛΩΣΣΑ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ PASCAL ΓΛΩΣΣΑ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ PASCAL ΓΕΝΙΚΗ ΔΟΜΗ ΠΡΟΓΡΑΜΜΑΤΟΣ Program Ονομα_προγραμματος; «πρόγραμμα» Πρόγραμμα 1 Program Lesson1_Program1; Write('Hello World!!!'); {σχόλια} Επεξήγηση Προγράμματος Program Lesson1_Program1;

Διαβάστε περισσότερα

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

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

Διαβάστε περισσότερα

3ο σετ σημειώσεων - Πίνακες, συμβολοσειρές, συναρτήσεις

3ο σετ σημειώσεων - Πίνακες, συμβολοσειρές, συναρτήσεις 3ο σετ σημειώσεων - Πίνακες, συμβολοσειρές, συναρτήσεις 5 Απριλίου 01 1 Πίνακες Είδαμε ότι δηλώνοντας μία μεταβλητή κάποιου συγκεκριμένου τύπου δεσμεύουμε μνήμη κατάλληλη για να αποθηκευτεί μία οντότητα

Διαβάστε περισσότερα

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

ΑΝΑΠΤΥΞΗ ΕΦΑΡΜΟΓΩΝ ΣΕ ΠΡΟΓΡΑΜΜΑΤΙΣΤΙΚΟ ΠΕΡΙΒΑΛΛΟΝ. 1 ο ΚΕΦΑΛΑΙΟ ΑΝΑΠΤΥΞΗ ΕΦΑΡΜΟΓΩΝ ΣΕ ΠΡΟΓΡΑΜΜΑΤΙΣΤΙΚΟ ΠΕΡΙΒΑΛΛΟΝ 1 ο ΚΕΦΑΛΑΙΟ 1) Τι είναι πρόβλημα (σελ. 3) 2) Τι είναι δεδομένο, πληροφορία, επεξεργασία δεδομένων (σελ. 8) 3) Τι είναι δομή ενός προβλήματος (σελ. 8)

Διαβάστε περισσότερα

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

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

Διαβάστε περισσότερα

Εισαγωγή - Βασικές έννοιες. Ι.Ε.Κ ΓΛΥΦΑΔΑΣ Τεχνικός Τεχνολογίας Internet Αλγοριθμική Ι (Ε) Σχολ. Ετος A Εξάμηνο

Εισαγωγή - Βασικές έννοιες. Ι.Ε.Κ ΓΛΥΦΑΔΑΣ Τεχνικός Τεχνολογίας Internet Αλγοριθμική Ι (Ε) Σχολ. Ετος A Εξάμηνο Εισαγωγή - Βασικές έννοιες Ι.Ε.Κ ΓΛΥΦΑΔΑΣ Τεχνικός Τεχνολογίας Internet Αλγοριθμική Ι (Ε) Σχολ. Ετος 2012-13 A Εξάμηνο Αλγόριθμος Αλγόριθμος είναι μια πεπερασμένη σειρά ενεργειών, αυστηρά καθορισμένων

Διαβάστε περισσότερα

ΑΕΠΠ Ερωτήσεις θεωρίας

ΑΕΠΠ Ερωτήσεις θεωρίας ΑΕΠΠ Ερωτήσεις θεωρίας Κεφάλαιο 1 1. Τα δεδομένα μπορούν να παρέχουν πληροφορίες όταν υποβάλλονται σε 2. Το πρόβλημα μεγιστοποίησης των κερδών μιας επιχείρησης είναι πρόβλημα 3. Για την επίλυση ενός προβλήματος

Διαβάστε περισσότερα

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

ΚΕΦΑΛΑΙΟ 1ο 3ο. ΚΕΦΑΛΑΙΟ 5ο 6ο. ΚΕΦΑΛΑΙΟ 7ο. Δομημένος Προγραμματισμός - Γενικές Ασκήσεις Επανάληψης ΚΕΦΑΛΑΙΟ 1ο 3ο 1. Συμπληρώστε τα κενά με τη λέξη που λείπει. α. Ένα πρόβλημα το χωρίζουμε σε άλλα απλούστερα, όταν είναι ή όταν έχει τρόπο επίλυσης. β. Η επίλυση ενός προβλήματος προϋποθέτει την του. γ.

Διαβάστε περισσότερα

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

ΕΙΣΑΓΩΓΗ ΣΤΟΥΣ ΑΛΓΟΡΙΘΜΟΥΣ ΚΑΙ ΣΤΟΝ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟ ΠΑΝΕΠΙΣΤΗΜΙΟ ΑΙΓΑΙΟΥ ΤΜΗΜΑ ΠΟΛΙΤΙΣΜΙΚΗΣ ΤΕΧΝΟΛΟΓΙΑΣ ΚΑΙ ΕΠΙΚΟΙΝΩΝΙΑΣ. Διδάσκουσα Δρ Β. ΕΙΣΑΓΩΓΗ ΣΤΟΥΣ ΑΛΓΟΡΙΘΜΟΥΣ ΚΑΙ ΣΤΟΝ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟ ΠΑΝΕΠΙΣΤΗΜΙΟ ΑΙΓΑΙΟΥ ΤΜΗΜΑ ΠΟΛΙΤΙΣΜΙΚΗΣ ΤΕΧΝΟΛΟΓΙΑΣ ΚΑΙ ΕΠΙΚΟΙΝΩΝΙΑΣ Διδάσκουσα Δρ Β. Καβακλή Χειμερινό Εξάμηνο 2001 1 Program cinema (input, output);

Διαβάστε περισσότερα

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

Προγραμματισμός PASCAL Προγραμματισμός PASCAL 1 PASCAL Η PASCAL σχεδιάστηκε από τον Worth το 1968 στη Ζυρίχη, αρχικά σαν εργαλείο για τη διδασκαλία προγραμματισμού. Είναι γλώσσα για σειριακό προγραμματισμό. 2 Απλή και εύκολη

Διαβάστε περισσότερα

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

ΑΠΑΝΤΗΣΕΙΣ ΘΕΜΑ Α A1. 2-Λάθος 3-Λάθος 4-Σωστό 5-Λάθος A2. integer. real. Boolean. char. string A3. ΑΡΧΗ 1ΗΣ ΣΕΛΙΔΑΣ Γ ΤΑΞΗ ΕΠΑΛ (ΟΜΑΔΑ Α ) & ΜΑΘΗΜΑΤΩΝ ΕΙΔΙΚΟΤΗΤΑΣ ΕΠΑΛ (ΟΜΑΔΑ Β ) ΘΕΜΑ Α A1. ΚΥΡΙΑΚΗ 16/04/2014- ΕΞΕΤΑΖΟΜΕΝΟ ΜΑΘΗΜΑ: ΔΟΜΗΜΕΝΟΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ ΣΥΝΟΛΟ ΣΕΛΙΔΩΝ: ΔΕΚΑΠΕΝΤΕ (15) ΑΠΑΝΤΗΣΕΙΣ 1-Σωστό

Διαβάστε περισσότερα

Κεφάλαιο 2 ο Βασικές Έννοιες Αλγορίθμων (σελ )

Κεφάλαιο 2 ο Βασικές Έννοιες Αλγορίθμων (σελ ) Κεφάλαιο 2 ο Βασικές Έννοιες Αλγορίθμων (σελ. 25 48) Τι είναι αλγόριθμος; Γ ΛΥΚΕΙΟΥ Αλγόριθμος είναι μία πεπερασμένη σειρά ενεργειών, αυστηρά καθορισμένων και εκτελέσιμων σε πεπερασμένο χρονικό διάστημα,

Διαβάστε περισσότερα

Pascal. 1 Γλώσσες προγραμματισμού. 21 Οκτωβρίου 2011

Pascal. 1 Γλώσσες προγραμματισμού. 21 Οκτωβρίου 2011 Pascal 21 Οκτωβρίου 2011 1 Γλώσσες προγραμματισμού Οι μικροεπεξεργαστές των υπολογιστών μπορούν μεταξύ άλλων να εκτελούν αριθμητικές και λογικές πράξεις και να διαβάζουν και γράφουν στη μνήμη του υπολογιστή.

Διαβάστε περισσότερα

ΒΑΣΙΚΟΙ ΤΥΠΟΙ ΔΕΔΟΜΕΝΩΝ

ΒΑΣΙΚΟΙ ΤΥΠΟΙ ΔΕΔΟΜΕΝΩΝ Η ΓΛΩΣΣΑ PASCAL ΒΑΣΙΚΟΙ ΤΥΠΟΙ ΔΕΔΟΜΕΝΩΝ Απλοί ή στοιχειώδης Τ.Δ. Ακέραιος τύπος Πραγματικός τύπος Λογικός τύπος Χαρακτήρας Σύνθετοι Τ.Δ. Αλφαριθμητικός 1. Ακέραιος (integer) Εύρος: -32768 έως 32767 Δήλωση

Διαβάστε περισσότερα

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

Δομή Επανάληψης. Κεφάλαιο 7 Mike Trimos Δομή Επανάληψης Κεφάλαιο 7 Mike Trimos Δομή Επανάληψης Η Διαδικασία αυτή ονομάζεται Βρόγχος ή Επανάληψη (Loop) και η εντολή ή το σύνολο των εντολών που επαναλαμβάνονται ονομάζεται Σώμα της Δομής. Η γλώσσα

Διαβάστε περισσότερα

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

Προβλήματα, αλγόριθμοι, ψευδοκώδικας Προβλήματα, αλγόριθμοι, ψευδοκώδικας October 11, 2011 Στο μάθημα Αλγοριθμική και Δομές Δεδομένων θα ασχοληθούμε με ένα μέρος της διαδικασίας επίλυσης υπολογιστικών προβλημάτων. Συγκεκριμένα θα δούμε τι

Διαβάστε περισσότερα

Ανάπτυξη Εφαρμογών σε Προγραμματιστικό Περιβάλλον. Διάρκεια 3 ώρες. Όνομα... Επώνυμο... Βαθμός...

Ανάπτυξη Εφαρμογών σε Προγραμματιστικό Περιβάλλον. Διάρκεια 3 ώρες. Όνομα... Επώνυμο... Βαθμός... 1 Ανάπτυξη Εφαρμογών σε Προγραμματιστικό Περιβάλλον Διάρκεια 3 ώρες Στοιχεία Μαθητή: Όνομα... Επώνυμο... Βαθμός... 2 Θεμα Α (30%) Α1 ΣΩΣΤΟ - ΛΑΘΟΣ 1. Ένα υποπρόγραμμα δεν μπορεί να κληθεί περισσότερες

Διαβάστε περισσότερα

Σημειώσεις για πρόοδο στο εργαστήριο

Σημειώσεις για πρόοδο στο εργαστήριο Σημειώσεις για πρόοδο στο εργαστήριο 5 Απριλίου 2012 1. Γράψτε πρόγραμμα το οποίο τυπώνει τους αριθμούς από 1 έως 10 σε μία γραμμή τον καθένα. 3 int i; 4 for (i = 0; i < 10; ++i) 5 printf("%d\n", i); 6

Διαβάστε περισσότερα

2 ΟΥ και 7 ΟΥ ΚΕΦΑΛΑΙΟΥ

2 ΟΥ και 7 ΟΥ ΚΕΦΑΛΑΙΟΥ ΑΝΑΠΤΥΞΗ ΕΦΑΡΜΟΓΩΝ ΣΕ ΠΡΟΓΡΑΜΜΑΤΙΣΤΙΚΟ ΠΕΡΙΒΑΛΛΟΝ ΕΠΙΜΕΛΕΙΑ: ΜΑΡΙΑ Σ. ΖΙΩΓΑ ΚΑΘΗΓΗΤΡΙΑ ΠΛΗΡΟΦΟΡΙΚΗΣ ΘΕΩΡΙΑ 2 ΟΥ και 7 ΟΥ ΚΕΦΑΛΑΙΟΥ ΒΑΣΙΚΕΣ ΕΝΝΟΙΕΣ ΑΛΓΟΡΙΘΜΩΝ και ΔΟΜΗ ΑΚΟΛΟΥΘΙΑΣ 2.1 Να δοθεί ο ορισμός

Διαβάστε περισσότερα

10. Με πόσους και ποιους τρόπους μπορεί να αναπαρασταθεί ένα πρόβλημα; 11. Περιγράψτε τα τρία στάδια αντιμετώπισης ενός προβλήματος.

10. Με πόσους και ποιους τρόπους μπορεί να αναπαρασταθεί ένα πρόβλημα; 11. Περιγράψτε τα τρία στάδια αντιμετώπισης ενός προβλήματος. 1. Δώστε τον ορισμό του προβλήματος. 2. Σι εννοούμε με τον όρο επίλυση ενός προβλήματος; 3. Σο πρόβλημα του 2000. 4. Σι εννοούμε με τον όρο κατανόηση προβλήματος; 5. Σι ονομάζουμε χώρο προβλήματος; 6.

Διαβάστε περισσότερα

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

ΕΚΦΩΝΗΣΕΙΣ ΘΕΜΑ Α. β. Οι πληροφορίες είναι δεδομένα τα οποία δεν έχουν υποστεί επεξεργασία. ΑΡΧΗ 1ΗΣ ΣΕΛΙΔΑΣ Γ ΤΑΞΗ ΕΠΑΛ (ΟΜΑΔΑ Α ) & ΜΑΘΗΜΑΤΩΝ ΕΙΔΙΚΟΤΗΤΑΣ ΕΠΑΛ (ΟΜΑΔΑ Β ) ΘΕΜΑ Α ΚΥΡΙΑΚΗ 16/04/2014- ΕΞΕΤΑΖΟΜΕΝΟ ΜΑΘΗΜΑ: ΔΟΜΗΜΕΝΟΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ ΣΥΝΟΛΟ ΣΕΛΙΔΩΝ: ΕΝΝΕΑ (9) ΕΚΦΩΝΗΣΕΙΣ Α1. Να χαρακτηρίσετε

Διαβάστε περισσότερα

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

ΔΙΑΓΩΝΙΣΜΑ ΠΡΟΣΟΜΟΙΩΣΗΣ ΑΝΑΠΤΥΞΗ ΕΦΑΡΜΟΓΩΝ ΣΕ ΠΡΟΓΡΑΜΜΑΤΙΣΤΙΚΟ ΠΕΡΙΒΑΛΛΟΝ ΔΙΑΓΩΝΙΣΜΑ ΠΡΟΣΟΜΟΙΩΣΗΣ ΑΝΑΠΤΥΞΗ ΕΦΑΡΜΟΓΩΝ ΣΕ ΠΡΟΓΡΑΜΜΑΤΙΣΤΙΚΟ ΠΕΡΙΒΑΛΛΟΝ ΘΕΜΑ 1 (Α) Σημειώστε δίπλα σε κάθε πρόταση «Σ» ή «Λ» εφόσον είναι σωστή ή λανθασμένη αντίστοιχα. 1. Τα συντακτικά λάθη ενός προγράμματος

Διαβάστε περισσότερα

Επιλέξτε Σωστό ή Λάθος για καθένα από τα παρακάτω:

Επιλέξτε Σωστό ή Λάθος για καθένα από τα παρακάτω: Επιλέξτε Σωστό ή Λάθος για καθένα από τα παρακάτω: 1ο ΓΕΛ Καστοριάς Βασικές Έννοιες Αλγορίθμων Δομή Ακολουθίας (κεφ. 2 και 7 σχολικού βιβλίου) 1. Οι μεταβλητές αντιστοιχίζονται από τον μεταγλωττιστή κάθε

Διαβάστε περισσότερα

Πρόβλημα 29 / σελίδα 28

Πρόβλημα 29 / σελίδα 28 Πρόβλημα 29 / σελίδα 28 Πρόβλημα 30 / σελίδα 28 Αντιμετάθεση / σελίδα 10 Να γράψετε αλγόριθμο, οποίος θα διαβάζει τα περιεχόμενα δύο μεταβλητών Α και Β, στη συνέχεια να αντιμεταθέτει τα περιεχόμενά τους

Διαβάστε περισσότερα

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

ΠΡΟΤΕΙΝΟΜΕΝΑ ΘΕΜΑΤΑ ΔΟΜΗΜΕΝΟΥ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ Γ ΕΠΑΛ ΠΡΟΤΕΙΝΟΜΕΝΑ ΘΕΜΑΤΑ ΔΟΜΗΜΕΝΟΥ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ Γ ΕΠΑΛ ΘΕΜΑ Α Α.1 Να χαρακτηρίσετε σωστή (Σ) ή λανθασμένη (Λ) καθεμία από τις παρακάτω προτάσεις (Μονάδες 10) 1. Ένας αλγόριθμος μπορεί να έχει άπειρα βήματα

Διαβάστε περισσότερα

Α1. Χαρακτηρίστε τις παρακάτω προτάσεις ως σωστές ή λανθασμένες.

Α1. Χαρακτηρίστε τις παρακάτω προτάσεις ως σωστές ή λανθασμένες. Ημερομηνία: 15/04/15 Διάρκεια διαγωνίσματος: 180 Εξεταζόμενο μάθημα: Προγραμματισμός Γ Λυκείου Υπεύθυνος καθηγητής: Παπαδόπουλος Πέτρος ΘΕΜΑ Α Α1. Χαρακτηρίστε τις παρακάτω προτάσεις ως σωστές ή λανθασμένες.

Διαβάστε περισσότερα

Προγραμματισμός Η/Υ Ι (Χρήση της C) 6 η Θεωρία ΜΟΝΟΔΙΑΣΤΑΤΟΙ ΠΙΝΑΚΕΣ

Προγραμματισμός Η/Υ Ι (Χρήση της C) 6 η Θεωρία ΜΟΝΟΔΙΑΣΤΑΤΟΙ ΠΙΝΑΚΕΣ Προγραμματισμός Η/Υ Ι (Χρήση της C) 6 η Θεωρία ΜΟΝΟΔΙΑΣΤΑΤΟΙ ΠΙΝΑΚΕΣ Σκοπός του μαθήματος Σκοπός του παρόντος μαθήματος είναι να μάθετε να κάνετε εισαγωγή δεδομένων σε πίνακες και περαιτέρω επεξεργασία

Διαβάστε περισσότερα

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

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

Διαβάστε περισσότερα

ΕΡΩΤΗΣΕΙΣ ΑΞΙΟΛΟΓΗΣΗΣ

ΕΡΩΤΗΣΕΙΣ ΑΞΙΟΛΟΓΗΣΗΣ Α) Να γράψετε στο τετράδιό σας τον αριθμό κάθε πρότασης και δίπλα το γράμμα "Σ", αν είναι σωστή, ή το γράμμα "Λ", αν είναι λανθασμένη. (Μονάδες 25) 1. Ένα αδόμητο πρόβλημα είναι ταυτόχρονα και ανοικτό

Διαβάστε περισσότερα

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

ΑΠΑΝΤΗΣΕΙΣ. H διαδικασία ανεύρεσης λογικών λαθών περιλαμβάνει : β- Σωστό. Διαπίστωση του είδους του λάθους γ- Σωστό δ- Λάθος ΑΡΧΗ 1ΗΣ ΣΕΛΙΔΑΣ Γ ΤΑΞΗ ΕΠΑΛ (ΟΜΑΔΑ Α ) & ΜΑΘΗΜΑΤΩΝ ΕΙΔΙΚΟΤΗΤΑΣ ΕΠΑΛ (ΟΜΑΔΑ Β ) ΤΕΤΑΡΤΗ 08/04/2015 - ΕΞΕΤΑΖΟΜΕΝΟ ΜΑΘΗΜΑ: ΔΟΜΗΜΕΝΟΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ ΣΥΝΟΛΟ ΣΕΛΙΔΩΝ: ΟΚΤΩ (8) ΘΕΜΑ Α ΑΠΑΝΤΗΣΕΙΣ Α1. Α2. α-

Διαβάστε περισσότερα

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

Αλγόριθμοι. Βασικές έννοιες ΤΕΛΟΣ Αλγόριθμοι Βασικές έννοιες ΤΕΛΟΣ Κριτήρια πληρότητας Είσοδος Έξοδος Καθοριστικότητα Περατότητα Αποτελεσματικότητα 04/01/09 βασικές έννοιες Αλγορίθμων 2 Σκοπιές μελέτης αλγορίθμων Υλικού Η ταχύτητα εκτέλεσης

Διαβάστε περισσότερα

Ενδεικτικές Ερωτήσεις Θεωρίας

Ενδεικτικές Ερωτήσεις Θεωρίας Ενδεικτικές Ερωτήσεις Θεωρίας Κεφάλαιο 2 1. Τι καλούμε αλγόριθμο; 2. Ποια κριτήρια πρέπει οπωσδήποτε να ικανοποιεί ένας αλγόριθμος; 3. Πώς ονομάζεται μια διαδικασία που δεν περατώνεται μετά από συγκεκριμένο

Διαβάστε περισσότερα

Επικοινωνία:

Επικοινωνία: Σπύρος Ζυγούρης Καθηγητής Πληροφορικής Επικοινωνία: spzygouris@gmail.com Πως ορίζεται ο τμηματικός προγραμματισμός; Πρόγραμμα Εντολή 1 Εντολή 2 Εντολή 3 Εντολή 4 Εντολή 5 Εντολή 2 Εντολή 3 Εντολή 4 Εντολή

Διαβάστε περισσότερα

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

Αλγοριθμική & Δομές Δεδομένων- Γλώσσα Προγραμματισμού Ι (PASCAL) (PASCAL ) Μεταβλητές- Τύποι- Τελεστές Αλγοριθμική & Δομές Δεδομένων- Γλώσσα Προγραμματισμού Ι (PASCAL) (PASCAL ) Μεταβλητές- Τύποι- Τελεστές Μεταβλητές 2 Δήλωση μεταβλητών Η δήλωση (declaration) πληροφορεί το μεταγλωττιστή για το όνομα και

Διαβάστε περισσότερα

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

ιαφάνειες παρουσίασης #4 ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ ΗΛΕΚΤΡΟΝΙΚΩΝ ΥΠΟΛΟΓΙΣΤΩΝ http://www.corelab.ece.ntua.gr/courses/programming/ ιδάσκοντες: Στάθης Ζάχος (zachos@cs.ntua.gr) Νίκος Παπασπύρου (nickie@softlab.ntua.gr) ιαφάνειες παρουσίασης

Διαβάστε περισσότερα

ΠΙΝΑΚΑΣ ΠΕΡΙΕΧΟΜΕΝΩΝ

ΠΙΝΑΚΑΣ ΠΕΡΙΕΧΟΜΕΝΩΝ ii ΠΙΝΑΚΑΣ ΠΕΡΙΕΧΟΜΕΝΩΝ 1. Εισαγωγή - Βασικές έννοιες....1 1.1 Εσωτερική παράσταση δεδομένων....2 1.1.1 Παράσταση θέσης....3 1.1.2 Μετατροπές μεταξύ συστημάτων διαφορετικών βάσεων....5 1.1.3 Οι αριθμητικές

Διαβάστε περισσότερα

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

Α1. Στον προγραµµατισµό χρησιµοποιούνται δοµές δεδοµένων. 1. Τι είναι δυναµική δοµή δεδοµένων; Μονάδες 3 2. Τι είναι στατική δοµή δεδοµένων; ΦΡΟΝΤΙΣΤΗΡΙΑΚΟΣ ΟΡΓΑΝΙΣΜΟΣ ΘΕΜΑ Α ΔΙΑΓΩΝΙΣΜΑ ΠΡΟΣΟΜΟΙΩΣΗΣ ΑΝΑΠΤΥΞΗ ΕΦΑΡΜΟΓΩΝ ΣΕ ΠΡΟΓΡΑΜΜΑΤΙΣΤΙΚΟ ΠΕΡΙΒΑΛΛΟΝ Γ ΛΥΚΕΙΟΥ ΤΕΧΝΟΛΟΓΙΚΗ 01/03/2015 Α1. Στον προγραµµατισµό χρησιµοποιούνται δοµές δεδοµένων. 1.

Διαβάστε περισσότερα

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

Εισαγωγή στο Προγραμματισμό για Μηχανολόγους Οδηγός Προετοιμασίας για τη Τελική Εξέταση Σκοπός Εισαγωγή στο Προγραμματισμό για Μηχανολόγους Οδηγός Προετοιμασίας για τη Τελική Εξέταση. Επανάληψη των βασικών εννοιών της PASCAL και του προγραμματισμού οι έννοιες της μεταβλητής, του τύπου δεδομένων,

Διαβάστε περισσότερα

Πρόβλημα 37 / σελίδα 207

Πρόβλημα 37 / σελίδα 207 Πρόβλημα 37 / σελίδα 207 2.5. Ôåóô áõôïáîéïëüãçóçò Δίνονται οι παρακάτω ομάδες προτάσεων. Σε κάθε μία από αυτές, να κάνετε τις απαραίτητες διορθώσεις ώστε να ισχύουν οι προτάσεις 1. Η αναπαράσταση

Διαβάστε περισσότερα

Προγραμματισμός Ι. Ασκήσεις. Τζάλλας Αλέξανδρος, Καθηγητής Εφαρμογών. Τμ. Μηχανικών Πληροφορικής Τ.Ε.

Προγραμματισμός Ι. Ασκήσεις. Τζάλλας Αλέξανδρος, Καθηγητής Εφαρμογών. Τμ. Μηχανικών Πληροφορικής Τ.Ε. Τζάλλας Αλέξανδρος, Καθηγητής Εφαρμογών Τμ. Μηχανικών Πληροφορικής Τ.Ε. Άρτα, Μάιος 2015 Άδειες Χρήσης Το παρόν εκπαιδευτικό υλικό υπόκειται σε άδειες χρήσης Creative Commons. Για εκπαιδευτικό υλικό, όπως

Διαβάστε περισσότερα

Επιλέξτε Σωστό ή Λάθος για καθένα από τα παρακάτω:

Επιλέξτε Σωστό ή Λάθος για καθένα από τα παρακάτω: Επιλέξτε Σωστό ή Λάθος για καθένα από τα παρακάτω: 1ο ΓΕΛ Καστοριάς K εφ. 1 σχολικού βιβλίου 1. Επιλύσιμο είναι ένα πρόβλημα για το οποίο ξέρουμε ότι έχει λύση, αλλά αυτή δεν έχει βρεθεί ακόμη. 2. Για

Διαβάστε περισσότερα

ΑΡΧΗ 1ης ΣΕΛΙΔΑΣ. Για i από 1 μέχρι Μ Εμφάνισε A[4,i] Τέλος_επανάληψης. (μονάδες 6) ΤΕΛΟΣ 1ης ΑΠΟ 7 ΣΕΛΙΔΕΣ

ΑΡΧΗ 1ης ΣΕΛΙΔΑΣ. Για i από 1 μέχρι Μ Εμφάνισε A[4,i] Τέλος_επανάληψης. (μονάδες 6) ΤΕΛΟΣ 1ης ΑΠΟ 7 ΣΕΛΙΔΕΣ ΑΡΧΗ 1ης ΣΕΛΙΔΑΣ ΕΞΕΤΑΖΟΜΕΝΟ ΜΑΘΗΜΑ : ΑΝΑΠΤΥΞΗ ΕΦΑΡΜΟΓΩΝ ΤΑΞΗ / ΤΜΗΜΑ : Γ ΛΥΚΕΙΟΥ ΔΙΑΓΩΝΙΣΜΑ ΠΕΡΙΟΔΟΥ : ΔΕΚΕΜΒΡΙΟΣ 2018 ΣΥΝΟΛΟ ΣΕΛΙΔΩΝ : 7 (ΕΠΤΑ) ΘΕΜΑ Α : A1. Να γράψετε στο φύλλο απαντήσεων τον αριθμό

Διαβάστε περισσότερα

Αλγόριθμοι και δομές δεδομένων

Αλγόριθμοι και δομές δεδομένων Αλγόριθμοι και δομές δεδομένων February 2, 2014 1 Αλγόριθμοι (Ενότητα 2.1, σελίδες 25-26 βιβλίου) Αλγόριθμος είναι μία πεπερασμένη σειρα ενεργειών, αυστηρά καθορισμένων και εκτελέσιμων σε πεπερασμένο χρόνο,

Διαβάστε περισσότερα

ΑΡΧΗ 1ης ΣΕΛΙΔΑΣ ΕΞΕΤΑΖΟΜΕΝΟ ΜΑΘΗΜΑ : ΑΝΑΠΤΥΞΗ ΕΦΑΡΜΟΓΩΝ ΤΑΞΗ / ΤΜΗΜΑ : Γ ΛΥΚΕΙΟΥ ΔΙΑΓΩΝΙΣΜΑ ΠΕΡΙΟΔΟΥ : ΑΠΡΙΛΙΟΣ 2018 ΣΥΝΟΛΟ ΣΕΛΙΔΩΝ : 7 (ΕΠΤΑ)

ΑΡΧΗ 1ης ΣΕΛΙΔΑΣ ΕΞΕΤΑΖΟΜΕΝΟ ΜΑΘΗΜΑ : ΑΝΑΠΤΥΞΗ ΕΦΑΡΜΟΓΩΝ ΤΑΞΗ / ΤΜΗΜΑ : Γ ΛΥΚΕΙΟΥ ΔΙΑΓΩΝΙΣΜΑ ΠΕΡΙΟΔΟΥ : ΑΠΡΙΛΙΟΣ 2018 ΣΥΝΟΛΟ ΣΕΛΙΔΩΝ : 7 (ΕΠΤΑ) ΑΡΧΗ 1ης ΣΕΛΙΔΑΣ ΕΞΕΤΑΖΟΜΕΝΟ ΜΑΘΗΜΑ : ΑΝΑΠΤΥΞΗ ΕΦΑΡΜΟΓΩΝ ΤΑΞΗ / ΤΜΗΜΑ : Γ ΛΥΚΕΙΟΥ ΔΙΑΓΩΝΙΣΜΑ ΠΕΡΙΟΔΟΥ : ΑΠΡΙΛΙΟΣ 2018 ΣΥΝΟΛΟ ΣΕΛΙΔΩΝ : 7 (ΕΠΤΑ) ΘΕΜΑ Α : A1. Να γράψετε στο φύλλο απαντήσεων τον αριθμό καθεμιάς

Διαβάστε περισσότερα

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

ΑΝΑΠΤΥΞΗ ΕΦΑΡΜΟΓΩΝ ΣΕ ΠΡΟΓΡΑΜΜΑΤΙΣΤΙΚΟ ΠΕΡΙΒΑΛΛΟΝ ΑΝΑΠΤΥΞΗ ΕΦΑΡΜΟΓΩΝ ΣΕ ΠΡΟΓΡΑΜΜΑΤΙΣΤΙΚΟ ΠΕΡΙΒΑΛΛΟΝ ΕΠΙΜΕΛΕΙΑ: ΜΑΡΙΑ Σ. ΖΙΩΓΑ ΚΑΘΗΓΗΤΡΙΑ ΠΛΗΡΟΦΟΡΙΚΗΣ ΘΕΩΡΙΑ 10 ΟΥ ΚΕΦΑΛΑΙΟΥ ΥΠΟΠΡΟΓΡΑΜΜΑΤΑ 1. Πως ορίζεται ο τμηματικός προγραμματισμός; Τμηματικός προγραμματισμός

Διαβάστε περισσότερα

ΑΝΑΠΤΥΞΗ ΕΦΑΡΜΟΓΩΝ ΣΕ ΠΡΟΓΡΑΜΜΑΤΙΣΤΙΚΟ ΠΕΡΙΒΑΛΛΟΝ ΔΙΑΓΩΝΙΣΜΑ ΠΡΟΣΟΜΟΙΩΣΗΣ 23/04/2012. Α. Να απαντήσετε με Σ ή Λ στις παρακάτω προτάσεις:

ΑΝΑΠΤΥΞΗ ΕΦΑΡΜΟΓΩΝ ΣΕ ΠΡΟΓΡΑΜΜΑΤΙΣΤΙΚΟ ΠΕΡΙΒΑΛΛΟΝ ΔΙΑΓΩΝΙΣΜΑ ΠΡΟΣΟΜΟΙΩΣΗΣ 23/04/2012. Α. Να απαντήσετε με Σ ή Λ στις παρακάτω προτάσεις: ΑΝΑΠΤΥΞΗ ΕΦΑΡΜΟΓΩΝ ΣΕ ΠΡΟΓΡΑΜΜΑΤΙΣΤΙΚΟ ΠΕΡΙΒΑΛΛΟΝ ΔΙΑΓΩΝΙΣΜΑ ΠΡΟΣΟΜΟΙΩΣΗΣ 23/04/2012 ΘΕΜΑ Α Α. Να απαντήσετε με Σ ή Λ στις παρακάτω προτάσεις: 1. Κάθε βρόγχος που υλοποιείται με την εντολή Για μπορεί να

Διαβάστε περισσότερα

Ερωτήσεις πολλαπλής επιλογής - Κεφάλαιο 2

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

Διαβάστε περισσότερα

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

ΕΙΣΑΓΩΓΗ ΣΤΟΥΣ ΑΛΓΟΡΙΘΜΟΥΣ ΚΑΙ ΣΤΟΝ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟ ΠΑΝΕΠΙΣΤΗΜΙΟ ΑΙΓΑΙΟΥ ΤΜΗΜΑ ΠΟΛΙΤΙΣΜΙΚΗΣ ΤΕΧΝΟΛΟΓΙΑΣ ΚΑΙ ΕΠΙΚΟΙΝΩΝΙΑΣ. Διδάσκουσα Δρ Β. ΕΙΣΑΓΩΓΗ ΣΤΟΥΣ ΑΛΓΟΡΙΘΜΟΥΣ ΚΑΙ ΣΤΟΝ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟ ΠΑΝΕΠΙΣΤΗΜΙΟ ΑΙΓΑΙΟΥ ΤΜΗΜΑ ΠΟΛΙΤΙΣΜΙΚΗΣ ΤΕΧΝΟΛΟΓΙΑΣ ΚΑΙ ΕΠΙΚΟΙΝΩΝΙΑΣ Διδάσκουσα Δρ Β. Καβακλή Χειμερινό Εξάμηνο 2001 1 Σύνολο χαρακτήρων της Pascal Για

Διαβάστε περισσότερα

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

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

Διαβάστε περισσότερα

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

ΤΕΛΙΚΟ ΕΠΑΝΑΛΗΠΤΙΚΟ ΔΙΑΓΩΝΙΣΜΑ ΑΡΧΗ 1 ης ΣΕΛΙΔΑΣ ΑΝΑΠΤΥΞΗ ΕΦΑΡΜΟΓΩΝ ΣΕ ΠΡΟΓΡΑΜΜΑΤΙΣΤΙΚΟ ΠΕΡΙΒΑΛΛΟΝ ΤΕΛΙΚΟ ΕΠΑΝΑΛΗΠΤΙΚΟ ΔΙΑΓΩΝΙΣΜΑ Επιμέλεια: Ομάδα Διαγωνισμάτων από Το στέκι των πληροφορικών Θέμα 1 ο Α. Να χαρακτηρίσετε κάθε μία από

Διαβάστε περισσότερα

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

ΥΠΟΥΡΓΕΙΟ ΠΑΙΔΕΙΑΣ ΚΑΙ ΠΟΛΙΤΙΣΜΟΥ ΔΙΕΥΘΥΝΣΗ ΑΝΩΤΕΡΗΣ ΚΑΙ ΑΝΩΤΑΤΗΣ ΕΚΠΑΙΔΕΥΣΗΣ ΥΠΗΡΕΣΙΑ ΕΞΕΤΑΣΕΩΝ ΥΠΟΥΡΓΕΙΟ ΠΑΙΔΕΙΑΣ ΚΑΙ ΠΟΛΙΤΙΣΜΟΥ ΔΙΕΥΘΥΝΣΗ ΑΝΩΤΕΡΗΣ ΚΑΙ ΑΝΩΤΑΤΗΣ ΕΚΠΑΙΔΕΥΣΗΣ ΥΠΗΡΕΣΙΑ ΕΞΕΤΑΣΕΩΝ ΕΞΕΤΑΣΕΙΣ ΓΙΑ ΤΑ ΑΝΩΤΕΡΑ ΚΑΙ ΑΝΩΤΑΤΑ ΕΚΠΑΙΔΕΥΤΙΚΑ ΙΔΡΥΜΑΤΑ 2005 ΠΛΗΡΟΦΟΡΙΚΗ ΛΥΣΕΙΣ 1 ΜΕΡΟΣ Α 1. Αρχή Διάβασε

Διαβάστε περισσότερα

I. ΑΛΓΟΡΙΘΜΟΣ II. ΠΡΑΞΕΙΣ - ΣΥΝΑΡΤΗΣΕΙΣ III. ΕΠΑΝΑΛΗΨΕΙΣ. 1. Τα πιο συνηθισμένα σενάρια παραβίασης αλγοριθμικών κριτηρίων είναι:

I. ΑΛΓΟΡΙΘΜΟΣ II. ΠΡΑΞΕΙΣ - ΣΥΝΑΡΤΗΣΕΙΣ III. ΕΠΑΝΑΛΗΨΕΙΣ. 1. Τα πιο συνηθισμένα σενάρια παραβίασης αλγοριθμικών κριτηρίων είναι: ΑΕσΠΠ 1 / 8 I. ΑΛΓΟΡΙΘΜΟΣ 1. Τα πιο συνηθισμένα σενάρια παραβίασης αλγοριθμικών κριτηρίων είναι: i. Είσοδος : χρήση μιας μεταβλητής που δεν έχει πάρει προηγουμένως τιμή. ii. Έξοδος : ο αλγόριθμος δεν εμφανίζει

Διαβάστε περισσότερα

Ανάπτυξη Εφαρμογών σε Προγραμματιστικό Περιβάλλον

Ανάπτυξη Εφαρμογών σε Προγραμματιστικό Περιβάλλον Γ ΓΕΛ 15 / 04 / 2018 Ανάπτυξη Εφαρμογών σε Προγραμματιστικό Περιβάλλον ΘΕΜΑ Α Α1. Να γράψετε τον αριθμό της κάθε πρότασης (1-5) και δίπλα τη λέξη ΣΩΣΤΟ, αν η πρόταση είναι σωστή, ή τη λέξη ΛΑΘΟΣ, αν η

Διαβάστε περισσότερα

Πίνακες. 1 Πίνακες. 30 Μαρτίου 2014

Πίνακες. 1 Πίνακες. 30 Μαρτίου 2014 Πίνακες 0 Μαρτίου 014 1 Πίνακες Είδαμε ότι δηλώνοντας μία μεταβλητή κάποιου συγκεκριμένου τύπου δεσμεύουμε μνήμη κατάλληλη για να αποθηκευτεί μία οντότητα του συγκεκριμένου τύπου. Στην περίπτωση που θέλουμε

Διαβάστε περισσότερα

53 Χρόνια ΦΡΟΝΤΙΣΤΗΡΙΑ ΜΕΣΗΣ ΕΚΠΑΙΔΕΥΣΗΣ Σ Α Β Β Α Ϊ Δ Η Μ Α Ν Ω Λ Α Ρ Α Κ Η

53 Χρόνια ΦΡΟΝΤΙΣΤΗΡΙΑ ΜΕΣΗΣ ΕΚΠΑΙΔΕΥΣΗΣ Σ Α Β Β Α Ϊ Δ Η Μ Α Ν Ω Λ Α Ρ Α Κ Η 53 Χρόνια ΦΡΟΝΤΙΣΤΗΡΙΑ ΜΕΣΗΣ ΕΚΠΑΙΔΕΥΣΗΣ Σ Α Β Β Α Ϊ Δ Η Μ Α Ν Ω Λ Α Ρ Α Κ Η ΠΑΓΚΡΑΤΙ: Φιλολάου & Εκφαντίδου 26 : 210/76.01.470 210/76.00.179 ΘΕΜΑ Α Α1. Να γράψετε στο τετράδιό σας τον αριθμό καθεμιάς

Διαβάστε περισσότερα

ΑΠΑΝΤΗΣΕΙΣ. α- Σωστό β- Σωστό γ- Λάθος δ- Λάθος ε- Σωστό στ- Σωστό

ΑΠΑΝΤΗΣΕΙΣ. α- Σωστό β- Σωστό γ- Λάθος δ- Λάθος ε- Σωστό στ- Σωστό ΑΡΧΗ 1ΗΣ ΣΕΛΙΔΑΣ Γ ΤΑΞΗ ΕΠΑΛ (ΟΜΑΔΑ Α ) & ΜΑΘΗΜΑΤΑ ΕΙΔΙΚΟΤΗΤΑΣ ΣΑΒΒΑΤΟ 16/04/2016 - ΕΞΕΤΑΖΟΜΕΝΟ ΜΑΘΗΜΑ: ΔΟΜΗΜΕΝΟΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ (ΑΠΟΦΟΙΤΟΙ) ΣΥΝΟΛΟ ΣΕΛΙΔΩΝ: ΠΕΝΤΕ (5) ΑΠΑΝΤΗΣΕΙΣ ΘΕΜΑ Α Α1. α- Σωστό β-

Διαβάστε περισσότερα

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

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

Διαβάστε περισσότερα

ΤΕΧΝΙΚΟΣ ΤΕΧΝΟΛΟΓΙΑΣ INTERNET

ΤΕΧΝΙΚΟΣ ΤΕΧΝΟΛΟΓΙΑΣ INTERNET ΤΕΧΝΙΚΟΣ ΤΕΧΝΟΛΟΓΙΑΣ INTERNET Ενδεικτικές απαντήσεις ερωτήσεων πιστοποίησης για το μάθημα ΑΛΓΟΡΙΘΜΙΚΗ ΚΑΙ ΔΟΜΕΣ ΔΕΔΟΜΕΝΩΝ Ι ΓΛΩΣΣΑ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ I (PASCAL) (Α ΕΞΑΜΗΝΟ) Οι παρακάτω ενδεικτικές απαντήσεις

Διαβάστε περισσότερα

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

ΑΝΑΠΤΥΞΗ ΕΦΑΡΜΟΓΩΝ ΣΕ ΠΡΟΓΡΑΜΜΑΤΙΣΤΙΚΟ ΠΕΡΙΒΑΛΛΟΝ ΕΠΑΝΑΛΗΠΤΙΚΟ ΔΙΑΓΩΝΙΣΜΑ ΠΡΟΣΟΜΟΙΩΣΗΣ ΠΑΝΕΛΛΑΔΙΚΩΝ ΣΧΟΛΙΚΟΥ ΕΤΟΥΣ Θέμα Α ΑΝΑΠΤΥΞΗ ΕΦΑΡΜΟΓΩΝ ΣΕ ΠΡΟΓΡΑΜΜΑΤΙΣΤΙΚΟ ΠΕΡΙΒΑΛΛΟΝ ΕΠΑΝΑΛΗΠΤΙΚΟ ΔΙΑΓΩΝΙΣΜΑ ΠΡΟΣΟΜΟΙΩΣΗΣ ΠΑΝΕΛΛΑΔΙΚΩΝ ΣΧΟΛΙΚΟΥ ΕΤΟΥΣ 2014-2015 Πάτρα 5/5/2015 Ονοματεπώνυμο:.. Α1. α. Να γράψετε στο τετράδιό σας τον

Διαβάστε περισσότερα

Κεφάλαιο 7: Υποπρογράμματα. Αρχές Γλωσσών Προγραμματισμού και Μεταφραστών

Κεφάλαιο 7: Υποπρογράμματα. Αρχές Γλωσσών Προγραμματισμού και Μεταφραστών Κεφάλαιο 7: Υποπρογράμματα Αρχές Γλωσσών Προγραμματισμού και Μεταφραστών Ορισμός Αφαίρεση με χρήση υποπρογραμμάτων (subprogram abstraction) είναι η αντιστοίχιση ενός συνόλου εισόδων σε ένα σύνολο εξόδων

Διαβάστε περισσότερα

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

Αποτελέσματα προόδου ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ ΗΛΕΚΤΡΟΝΙΚΩΝ ΥΠΟΛΟΓΙΣΤΩΝ http://courses.softlab.ntua.gr/progintro/ Διδάσκοντες: Στάθης Ζάχος (zachos@cs.ntua.gr) Νίκος Παπασπύρου (nickie@softlab.ntua.gr) Δημήτρης Φωτάκης (fotakis@cs.ntua.gr)

Διαβάστε περισσότερα

ΑΡΧΗ 1ης ΣΕΛΙΔΑΣ ΕΞΕΤΑΖΟΜΕΝΟ ΜΑΘΗΜΑ : ΑΝΑΠΤΥΞΗ ΕΦΑΡΜΟΓΩΝ ΤΑΞΗ / ΤΜΗΜΑ : Γ ΛΥΚΕΙΟΥ ΔΙΑΓΩΝΙΣΜΑ ΠΕΡΙΟΔΟΥ : ΑΠΡΙΛΙΟΣ 2019 ΣΥΝΟΛΟ ΣΕΛΙΔΩΝ : 7 (ΕΠΤΑ)

ΑΡΧΗ 1ης ΣΕΛΙΔΑΣ ΕΞΕΤΑΖΟΜΕΝΟ ΜΑΘΗΜΑ : ΑΝΑΠΤΥΞΗ ΕΦΑΡΜΟΓΩΝ ΤΑΞΗ / ΤΜΗΜΑ : Γ ΛΥΚΕΙΟΥ ΔΙΑΓΩΝΙΣΜΑ ΠΕΡΙΟΔΟΥ : ΑΠΡΙΛΙΟΣ 2019 ΣΥΝΟΛΟ ΣΕΛΙΔΩΝ : 7 (ΕΠΤΑ) ΑΡΧΗ 1ης ΣΕΛΙΔΑΣ ΕΞΕΤΑΖΟΜΕΝΟ ΜΑΘΗΜΑ : ΑΝΑΠΤΥΞΗ ΕΦΑΡΜΟΓΩΝ ΤΑΞΗ / ΤΜΗΜΑ : Γ ΛΥΚΕΙΟΥ ΔΙΑΓΩΝΙΣΜΑ ΠΕΡΙΟΔΟΥ : ΑΠΡΙΛΙΟΣ 2019 ΣΥΝΟΛΟ ΣΕΛΙΔΩΝ : 7 (ΕΠΤΑ) ΘΕΜΑ Α : A1. Να γράψετε στο φύλλο απαντήσεων τον αριθμό καθεμιάς

Διαβάστε περισσότερα

ΕΞΕΤΑΖΟΜΕΝΟ ΜΑΘΗΜΑ: ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ ΥΠΟΛΟΓΙΣΤΩΝ ΣΥΝΟΛΟ ΣΕΛΙΔΩΝ: ΕΞΙ (6)

ΕΞΕΤΑΖΟΜΕΝΟ ΜΑΘΗΜΑ: ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ ΥΠΟΛΟΓΙΣΤΩΝ ΣΥΝΟΛΟ ΣΕΛΙΔΩΝ: ΕΞΙ (6) ΑΡΧΗ 1ΗΣ ΣΕΛΙΔΑΣ ΕΠΑΝΑΛΗΠΤΙΚΕΣ ΠΑΝΕΛΛΑΔΙΚΕΣ ΕΞΕΤΑΣΕΙΣ HMEΡΗΣΙΩΝ ΚΑΙ ΕΣΠΕΡΙΝΩΝ ΕΠΑΓΓΕΛΜΑΤΙΚΩΝ ΛΥΚΕΙΩΝ ΠΑΡΑΣΚΕΥΗ 22 ΣΕΠΤΕΜΒΡΙΟΥ 2017 ΘΕΜΑ Α ΕΞΕΤΑΖΟΜΕΝΟ ΜΑΘΗΜΑ: ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ ΥΠΟΛΟΓΙΣΤΩΝ ΣΥΝΟΛΟ ΣΕΛΙΔΩΝ:

Διαβάστε περισσότερα

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

Εργαστήριο 10 Πίνακες. Πίνακες. Η έννοια της δόμησης δεδομένων στη PASCAL. Σκοπός Εργαστήριο 10 Πίνακες Πίνακες. Η έννοια της δόμησης δεδομένων στη PASCAL. Σκοπός 10.1 ΕΠΙΔΙΩΞΗ ΤΗΣ ΕΡΓΑΣΙΑΣ Σ αυτή την άσκηση, εξετάζουμε μία βασική δομή του προγραμματισμού, το πίνακα. Στις μέχρι τώρα

Διαβάστε περισσότερα

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

Στη C++ υπάρχουν τρεις τύποι βρόχων: (a) while, (b) do while, και (c) for. Ακολουθεί η σύνταξη για κάθε μια: Εργαστήριο 6: 6.1 Δομές Επανάληψης Βρόγχοι (Loops) Όταν θέλουμε να επαναληφθεί μια ομάδα εντολών τη βάζουμε μέσα σε ένα βρόχο επανάληψης. Το αν θα (ξανα)επαναληφθεί η εκτέλεση της ομάδας εντολών καθορίζεται

Διαβάστε περισσότερα

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

Πληροφορική 2. Αλγόριθμοι Πληροφορική 2 Αλγόριθμοι 1 2 Τι είναι αλγόριθμος; Αλγόριθμος είναι ένα διατεταγμένο σύνολο από σαφή βήματα το οποίο παράγει κάποιο αποτέλεσμα και τερματίζεται σε πεπερασμένο χρόνο. Ο αλγόριθμος δέχεται

Διαβάστε περισσότερα

ΜΑΘΗΜΑ / ΤΑΞΗ : ΔΟΜΗΜΕΝΟΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ / ΕΠΑΛ ΣΕΙΡΑ: ΗΜΕΡΟΜΗΝΙΑ: 26-01-2014

ΜΑΘΗΜΑ / ΤΑΞΗ : ΔΟΜΗΜΕΝΟΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ / ΕΠΑΛ ΣΕΙΡΑ: ΗΜΕΡΟΜΗΝΙΑ: 26-01-2014 ΜΑΘΗΜΑ / ΤΑΞΗ : ΔΟΜΗΜΕΝΟΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ / ΕΠΑΛ ΣΕΙΡΑ: ΗΜΕΡΟΜΗΝΙΑ: 26-01-2014 ΘΕΜΑ Α Α1. Να γράψετε στο τετράδιό σας τον αριθμό καθεμιάς από τις παρακάτω προτάσεις 1-5 και δίπλα τη λέξη Σωστό, αν είναι

Διαβάστε περισσότερα

Αλγόριθμοι Αναπαράσταση αλγορίθμων Η αναπαράσταση των αλγορίθμων μπορεί να πραγματοποιηθεί με:

Αλγόριθμοι Αναπαράσταση αλγορίθμων Η αναπαράσταση των αλγορίθμων μπορεί να πραγματοποιηθεί με: Αλγόριθμοι 2.2.1. Ορισμός: Αλγόριθμος είναι μια πεπερασμένη σειρά εντολών, αυστηρά καθορισμένων και εκτελέσιμων σε πεπερασμένο χρόνο, που στοχεύουν στην επίλυση ενός προβλήματος. Τα κυριότερα χρησιμοποιούμενα

Διαβάστε περισσότερα

Σχεδίαση και Ανάλυση Αλγορίθμων Ενότητα 7: ΑΝΑΔΡΟΜΗ

Σχεδίαση και Ανάλυση Αλγορίθμων Ενότητα 7: ΑΝΑΔΡΟΜΗ Σχεδίαση και Ανάλυση Αλγορίθμων Ενότητα 7: ΑΝΑΔΡΟΜΗ Δημήτριος Κουκόπουλος Σχολή Οργάνωσης και Διοίκησης Επιχειρήσεων Τμήμα Διαχείρισης Πολιτισμικού Περιβάλλοντος και Νέων Τεχνολογιών ΠΕΡΙΕΧΟΜΕΝΟ Ορισμός

Διαβάστε περισσότερα

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

4. Επιλογή και Επανάληψη Σελίδα 53 4. Επιλογή και Επανάληψη 4.1 Η Εντολή Επιλογής if.. then Η εντολή If.. Then.. χρησιμοποιείται για την λήψη λογικών αποφάσεων σε ένα πρόγραμμα. Η εντολή αυτή έχει διάφορες μορφές σύνταξης οι οποίες

Διαβάστε περισσότερα

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

ΠΑΝΕΠΙΣΤΗΜΙΟ ΠΕΙΡΑΙΩΣ ΤΜΗΜΑ ΒΙΟΜΗΧΑΝΙΚΗΣ ΙΟΙΚΗΣΗΣ ΚΑΙ ΤΕΧΝΟΛΟΓΙΑΣ ΠΑΝΕΠΙΣΤΗΜΙΟ ΠΕΙΡΑΙΩΣ ΤΜΗΜΑ ΒΙΟΜΗΧΑΝΙΚΗΣ ΙΟΙΚΗΣΗΣ ΚΑΙ ΤΕΧΝΟΛΟΓΙΑΣ ΙΑΧΕΙΡΙΣΗ Ε ΟΜΕΝΩΝ ΚΑΙ ΓΛΩΣΣΕΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ (Β ΕΞΑΜΗΝΟ) ιδάσκων: Επ. Καθηγητής Γρηγόρης Χονδροκούκης ΣΗΜΕΙΩΣΕΙΣ ΜΑΘΗΜΑΤΟΣ Η ΓΛΩΣΣΑ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ

Διαβάστε περισσότερα

Α2. Να γράψετε στο τετράδιο σας τον αριθμό 1-4 κάθε πρότασης και δίπλα το γράμμα που δίνει τη σωστή επιλογή.

Α2. Να γράψετε στο τετράδιο σας τον αριθμό 1-4 κάθε πρότασης και δίπλα το γράμμα που δίνει τη σωστή επιλογή. ΑΡΧΗ 1ΗΣ ΣΕΛΙΔΑΣ Γ ΤΑΞΗ ΓΕΝΙΚΟΥ ΛΥΚΕΙΟΥ ΚΑΙ ΕΠΑΛ (ΟΜΑΔΑ Β ) ΚΥΡΙΑΚΗ 23/04/2017 - ΕΞΕΤΑΖΟΜΕΝΟ ΜΑΘΗΜΑ: ΑΕΠΠ ΣΥΝΟΛΟ ΣΕΛΙΔΩΝ: ΕΠΤΑ ( 7) ΘΕΜΑ Α Α1. Να χαρακτηρίσετε τις προτάσεις που ακολουθούν γράφοντας στο

Διαβάστε περισσότερα

ΑΝΑΠΤΥΞΗ ΕΦΑΡΜΟΓΩΝ ΣΕ ΠΡΟΓΡΑΜΜΑΤΙΣΤΙΚΟ ΠΕΡΙΒΑΛΛΟΝ ΕΠΑΝΑΛΗΠΤΙΚΟ ΔΙΑΓΩΝΙΣΜΑ ΣΧΟΛΙΚΟΥ ΕΤΟΥΣ 2013-2014

ΑΝΑΠΤΥΞΗ ΕΦΑΡΜΟΓΩΝ ΣΕ ΠΡΟΓΡΑΜΜΑΤΙΣΤΙΚΟ ΠΕΡΙΒΑΛΛΟΝ ΕΠΑΝΑΛΗΠΤΙΚΟ ΔΙΑΓΩΝΙΣΜΑ ΣΧΟΛΙΚΟΥ ΕΤΟΥΣ 2013-2014 ΑΝΑΠΤΥΞΗ ΕΦΑΡΜΟΓΩΝ ΣΕ ΠΡΟΓΡΑΜΜΑΤΙΣΤΙΚΟ ΠΕΡΙΒΑΛΛΟΝ ΕΠΑΝΑΛΗΠΤΙΚΟ ΔΙΑΓΩΝΙΣΜΑ ΣΧΟΛΙΚΟΥ ΕΤΟΥΣ 2013-2014 Επιμέλεια: Ομάδα Διαγωνισμάτων από το Στέκι των Πληροφορικών Θέμα Α A1. Να γράψετε στο τετράδιό σας τους

Διαβάστε περισσότερα

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

Σκοπός. Αλγεβρικοί και Λογικοί Υπολογισμοί στη PASCAL Αλγεβρικοί και Λογικοί Υπολογισμοί στη PASCAL Δυνατότητα ανάπτυξης, μεταγλώττισης και εκτέλεσης προγραμμάτων στη PASCAL. Κατανόηση της σύνταξης των προτάσεων της PASCAL. Κατανόηση της εντολής εξόδου για

Διαβάστε περισσότερα

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

ΠΑΝΕΠΙΣΤΗΜΙΟ ΘΕΣΣΑΛΙΑΣ ΣΧΟΛΗ ΘΕΤΙΚΩΝ ΕΠΙΣΤΗΜΩΝ ΤΜΗΜΑ ΠΛΗΡΟΦΟΡΙΚΗΣ ΠΑΝΕΠΙΣΤΗΜΙΟ ΘΕΣΣΑΛΙΑΣ ΣΧΟΛΗ ΘΕΤΙΚΩΝ ΕΠΙΣΤΗΜΩΝ ΤΜΗΜΑ ΠΛΗΡΟΦΟΡΙΚΗΣ ΑΝΑΠΤΥΞΗ ΚΑΙ ΣΧΕΔΙΑΣΗ ΛΟΓΙΣΜΙΚΟΥ Η γλώσσα προγραμματισμού C ΕΡΓΑΣΤΗΡΙΟ 2: Εκφράσεις, πίνακες και βρόχοι 14 Απριλίου 2016 Το σημερινό εργαστήριο

Διαβάστε περισσότερα

2ο ΓΕΛ ΑΓ.ΔΗΜΗΤΡΙΟΥ ΑΕΠΠ ΘΕΟΔΟΣΙΟΥ ΔΙΟΝ ΠΡΟΣΟΧΗ ΣΤΑ ΠΑΡΑΚΑΤΩ

2ο ΓΕΛ ΑΓ.ΔΗΜΗΤΡΙΟΥ ΑΕΠΠ ΘΕΟΔΟΣΙΟΥ ΔΙΟΝ ΠΡΟΣΟΧΗ ΣΤΑ ΠΑΡΑΚΑΤΩ ΠΡΟΣΟΧΗ ΣΤΑ ΠΑΡΑΚΑΤΩ ΣΤΑΘΕΡΕΣ είναι τα μεγέθη που δεν μεταβάλλονται κατά την εκτέλεση ενός αλγόριθμου. Εκτός από τις αριθμητικές σταθερές (7, 4, 3.5, 100 κλπ), τις λογικές σταθερές (αληθής και ψευδής)

Διαβάστε περισσότερα

Πρόβλημα είναι μια κατάσταση η οποία χρήζει αντιμετώπισης, απαιτεί λύση, η δε λύση της δεν είναι γνωστή, ούτε προφανής.

Πρόβλημα είναι μια κατάσταση η οποία χρήζει αντιμετώπισης, απαιτεί λύση, η δε λύση της δεν είναι γνωστή, ούτε προφανής. Κεφάλαιο 2 - Πρόβλημα 2.1.1. Η έννοια του προβλήματος Πρόβλημα είναι μια κατάσταση η οποία χρήζει αντιμετώπισης, απαιτεί λύση, η δε λύση της δεν είναι γνωστή, ούτε προφανής. 2.1.2. Κατηγορίες προβλημάτων

Διαβάστε περισσότερα

Ανάπτυξη Εφαρμογών σε Προγραμματιστικό Περιβάλλον. Τελευταίο Μάθημα

Ανάπτυξη Εφαρμογών σε Προγραμματιστικό Περιβάλλον. Τελευταίο Μάθημα Τελευταίο Μάθημα 1. Να χαρακτηρίσετε καθεμία από τις παρακάτω προτάσεις, ως σωστές (Σ) ή λανθασμένες (Λ) Ο χαρακτήρας του κενού ανήκει στο αλφάβητο της γλώσσας. Σ Λ Σε μία αλφαριθμητική τιμή μπορεί να

Διαβάστε περισσότερα

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

ΜΑΘΗΜΑ / ΤΑΞΗ : ΔΟΜΗΜΕΝΟΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ / Γ ΕΠΑΛ ΣΕΙΡΑ: ΗΜΕΡΟΜΗΝΙΑ: 27/01/2013 ΜΑΘΗΜΑ / ΤΑΞΗ : ΔΟΜΗΜΕΝΟΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ / Γ ΕΠΑΛ ΣΕΙΡΑ: ΗΜΕΡΟΜΗΝΙΑ: 27/01/2013 ΘΕΜΑ Α Α1. Να χαρακτηρίσετε τις προτάσεις που ακολουθούν, γράφοντας δίπλα στο γράμμα που αντιστοιχεί σε κάθε πρόταση τη

Διαβάστε περισσότερα

ΘΕΜΑ Α ΑΡΧΗ 1ΗΣ ΣΕΛΙΔΑΣ

ΘΕΜΑ Α ΑΡΧΗ 1ΗΣ ΣΕΛΙΔΑΣ 1ΗΣ ΣΕΛΙΔΑΣ ΘΕΜΑ Α ΑΝΑΚΕΦΑΛΑΙΩΤΙΚΟ ΔΙΑΓΩΝΙΣΜΑ Γ' ΤΑΞΗΣ ΗΜΕΡΗΣΙΟΥ ΓΕΝΙΚΟΥ ΛΥΚΕΙΟΥ ΠΕΜΠΤΗ 26 ΑΠΡΙΛΙΟΥ 2012 ΕΞΕΤΑΖΟΜΕΝΟ ΜΑΘΗΜΑ: ΑΝΑΠΤΥΞΗ ΕΦΑΡΜΟΓΩΝ ΣΕ ΠΡΟΓΡΑΜΜΑΤΙΣΤΙΚΟ ΠΕΡΙΒΑΛΛΟΝ ΤΕΧΝΟΛΟΓΙΚΗΣ ΚΑΤΕΥΘΥΝΣΗΣ (ΚΥΚΛΟΥ

Διαβάστε περισσότερα

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

ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ ΥΠΟΛΟΓΙΣΤΩΝ Κεφάλαιο 10 : Εντολές επιλογής και αποφάσεων ΕΠΑΛ ΧΡΥΣΟΥΠΟΛΗΣ Γ Πληροφορική- 2015-2016 ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ ΥΠΟΛΟΓΙΣΤΩΝ Κεφάλαιο 10 : Εντολές επιλογής και αποφάσεων 1 Εισαγωγή Η εντολή Στο 4 ο κεφάλαιο γνωρίσαµε την δοµή πολλαπλής επιλογής στην οποία

Διαβάστε περισσότερα