Το Παιχνίδι της Αφαίρεσης

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

Download "Το Παιχνίδι της Αφαίρεσης"

Transcript

1 Το Παιχνίδι της Αφαίρεσης Ενδεικτικές Απαντήσεις Φύλλου Εργασίας 4 10 Σεπτεμβρίου :01 Το Στήσιμο Ένα πλήθος από αντικείμενα (π.χ. σπίρτα, ξυλάκια) τοποθετούνται στη σειρά και ο κάθε ένας από τους δύο παίκτες αφαιρεί με τη σειρά του από ένα μέχρι και τρία αντικείμενα, μέχρι να μη μείνει κανένα. Ο παίκτης που θα πάρει το τελευταίο αντικείμενο χάνει το παιχνίδι. 1. Ας υποθέσουμε ότι τα αντικείμενα που χρησιμοποιούν οι παίκτες είναι σπίρτα. Οι κανόνες του παιχνιδιού δεν προσδιορίζουν το αρχικό πλήθος σπίρτων, μπορούμε λοιπόν να το ορίσουμε μόνοι μας. Γίνεται το παιχνίδι να ξεκινάει κάθε φορά μ ένα διαφορετικό αριθμό σπίρτων; Αν ναι, ποιος είναι ο τρόπος; Θα μπορούσε το παιχνίδι να ξεκινά επιλέγοντας μια τυχαία τιμή ως αρχικό αριθμό σπίρτων ή να ερωτάται ο πρώτος παίκτης με πόσα σπίρτα θα ήθελε να ξεκινήσει. Ας ονομάσουμε το πλήθος των σπίρτων matches. Μπορούμε να αρχικοποιήσουμε τη μεταβλητή matches με μια τυχαία τιμή (ας πούμε από το 7 μέχρι και το 21). Προσθέστε τις κατάλληλες εντολές στο πρόγραμμά, ώστε να εισάγει τη βιβλιοθήκη random και να παράγει μια τυχαία τιμή ανάμεσα στο 7 και στο 21, την οποία και θ αποθηκεύει στη μεταβλητή matches. Θα ξεκινήσουμε το πρόγραμμα με τις εντολές: import random matches = random.randint(7,21) 2. Προσθέστε την κατάλληλη εντολή στο πρόγραμμά, προκειμένου να εμφανίζει τον αρχικό αριθμό σπίρτων στον παίκτη. Για παράδειγμα: Αρχικό πλήθος σπίρτων: 13 Θα προσθέσουμε την εντολή: print("αρχικό πλήθος σπίρτων:", matches) Εκτελέστε μερικές φορές το πρόγραμμά σας. Εμφανίζεται διαφορετικός αριθμός σπίρτων σε κάποιες εκτελέσεις; 1

2 ΤΟ ΠΑΙΧΝΙΔΙ ΤΗΣ ΑΦΑΙΡΕΣΗΣ 2 Σημείωση: Δεν αποκλείεται κάποιες από τις τυχαίες τιμές να είναι οι ίδιες. Εκτελώντας το πρόγραμμα πέντε φορές, εμφανίστηκε ως αρχικό πλήθος σπίρτων το 20, το 18, το 20, το 15 και το 9. Δεν είναι παράξενο που εκτελέσαμε πέντε φορές το πρόγραμμα και το 20 εμφανίστηκε δύο φορές, όπως δεν θα ήταν παράξενο αν ρίχναμε πέντε φορές ένα ζάρι και φέρναμε δύο φορές την ίδια ζαριά (ή και περισσότερες). Αν όμως ρίχναμε φορές ένα ζάρι και φέρναμε 4000 φορές την ίδια ζαριά, τότε θα είχαμε υποψίες ότι τα αποτελέσματα του συγκεκριμένου ζαριού δεν είναι και τόσο τυχαία. Υπάρχουν συγκεκριμένοι έλεγχοι που μπορούμε να κάνουμε για να ισχυριστούμε τεκμηριωμένα ότι μια διαδικασία δεν είναι πραγματικά και τόσο τυχαία, αλλά για να είναι αξιόπιστοι θα πρέπει η διαδικασία να επαναληφθεί πάρα πολλές φορές. 3. Συμπληρώστε το πρόγραμμα ώστε να ζητά από τον παίκτη τον αριθμό των σπίρτων που θα αφαιρέσει, εμφανίζοντας κατάλληλη προτροπή. Για παράδειγμα: Πόσα σπίρτα θέλεις; Αποθηκεύστε την απάντηση του παίκτη στη μεταβλητή removed. Θα προσθέσουμε τις εντολές: print("πόσα σπίρτα θέλεις;") removed = int(input()) Είναι απαραίτητο να χρησιμοποιήσουμε την int() για να μετατρέψουμε την τιμή που πληκτρολογεί ο παίκτης σε ακέραια, πριν την αποθηκεύσουμε στη μεταβλητή removed. 4. Προσθέστε την παρακάτω εντολή προκειμένου να μειωθεί ο αριθμός των σπίρτων matches ανάλογα με το πλήθος των σπίρτων removed που ζήτησε ο παίκτης να αφαιρέσει. matches = matches - removed Εκτελέστε το πρόγραμμά σας. Λειτουργεί σωστά ή εμφανίζει κάποιο μήνυμα σφάλματος; Το πρόγραμμα λειτουργεί χωρίς να εμφανιστεί μήνυμα σφάλματος. Σε περίπτωση που σας εμφανίζει το παρακάτω μήνυμα σφάλματος: TypeError: unsupported operand type(s) for - βεβαιωθείτε ότι έχετε χρησιμοποιήσει την int() όταν ζητάτε τον αριθμό των σπίρτων που θα αφαιρέσει ο παίκτης, προκειμένου να μετατρέψετε την τιμή αυτή σε ακέραιο αριθμό. 5. Συμπληρώστε το πρόγραμμα με την κατάλληλη εντολή ώστε να εμφανίζεται στους παίκτες ο αριθμός των σπίρτων που απομένουν. Έτσι θα μπορούν ν αποφασίζουν για το πλήθος των σπίρτων που θα αφαιρέσουν στον επόμενο γύρο. Για παράδειγμα: Σπίρτα που απομένουν: 15

3 ΤΟ ΠΑΙΧΝΙΔΙ ΤΗΣ ΑΦΑΙΡΕΣΗΣ 3 Θα προσθέσουμε την εντολή: print("σπίρτα που απομένουν:", matches) Εκτελέστε το πρόγραμμά σας. Εμφανίζει σωστά τον αριθμό των σπίρτων που απομένουν; Ναι. Κατά την εκτέλεση του προγράμματος, το παιχνίδι ξεκίνησε με 14 σπίρτα. Ζητήσαμε να αφαιρέσουμε 3 και εμφανίστηκε μήνυμα ότι απομένουν 11. Κάνε Ένα Γύρο 6. Η αφαίρεση σπίρτων από τους παίκτες δεν γίνεται μόνο μια φορά, αλλά πολλές. Θα χρησιμοποιήσουμε την εντολή while προκειμένου οι εντολές να εκτελούνται επαναληπτικά. Το συγκεκριμένο παιχνίδι συνεχίζεται όσο απομένει τουλάχιστον ένα σπίρτο. Τι τιμές πρέπει να έχει η μεταβλητή matches, προκειμένου να συνεχίζεται η επανάληψη; Όσο η matches παίρνει θετικές τιμές, δηλαδή όσο υπάρχουν ακόμα σπίρτα στο τραπέζι, το παιχνίδι θα πρέπει να συνεχίζεται. Προσθέστε την εντολή while μαζί με την κατάλληλη συνθήκη που εξετάζει την τιμή της matches, όπως την περιγράψατε προηγουμένως. Εμφωλεύστε τις εντολές που πιστεύετε ότι χρειάζεται να εκτελούνται επαναληπτικά, προσθέτοντας τις κατάλληλες εσοχές. Πρέπει να σκεφτούμε ποιες εντολές θα πρέπει να επαναλαμβάνονται, ώστε να τις εμφωλεύσουμε στη while. Οι εντολές που αφορούν στην τυχαία επιλογή και εμφάνιση του αρχικού πλήθους σπίρτων θα πρέπει να εκτελούνται μόνο μία φορά, στην αρχή του παιχνιδιού, επομένως δεν θα συμπεριληφθούν στην επανάληψη. Αντίθετα, όλες οι εντολές που ακολουθούν, η ανάγνωση του πλήθους των σπίρτων που θα αφαιρεθούν, η απομείωση του πλήθους των σπίρτων και η εμφάνιση των σπίρτων που απομένουν, θα πρέπει να εκτελούνται σε κάθε γύρο. Γι αυτό θα τις τοποθετήσουμε μετά τη while και θα τους προσθέσουμε εσοχές. Με την προσθήκη της while, το πρόγραμμα έχει πλέον ως εξής: import random matches = random.randint(7,21) print("αρχικό πλήθος σπίρτων:", matches) while matches > 0: print("πόσα σπίρτα θέλεις;") removed = int(input()) matches = matches - removed print("σπίρτα που απομένουν:", matches)

4 ΤΟ ΠΑΙΧΝΙΔΙ ΤΗΣ ΑΦΑΙΡΕΣΗΣ 4 Εκτελέστε το πρόγραμμά σας. Τερματίζει η επανάληψη και, αν ναι, πότε γίνεται αυτό; Εκτελέσαμε το πρόγραμμα και σε κάθε κύκλο αφαιρούσαμε τυχαία μερικά σπίρτα. Η επανάληψη τερματίστηκε όταν τα σπίρτα τελείωσαν, δηλαδή όταν η matches έγινε 0. Δοκιμάσαμε να αφαιρέσουμε και περισσότερα σπίρτα απ όσα απέμεναν. Το πλήθος των σπίρτων έγινε αρνητικό και πάλι η επανάληψη τερματίστηκε. Επομένως, η επανάληψη συνεχίζεται όσο ισχύει ότι matches > 0 και τερματίζεται όταν ισχύει το αντίθετο, δηλαδή όταν matches <= 0. Αν η επανάληψη δεν σταματά τότε ελέγξτε ότι έχετε τοποθετήσει την εντολή που μειώνει τον αριθμό των σπίρτων μέσα στην while χρησιμοποιώντας τις κατάλληλες εσοχές και εκτελέστε ξανά το πρόγραμμα. Τι τιμή παίρνει η συνθήκη που εξετάζει η while, ώστε να σταματήσει η επανάληψη; Για να σταματήσει η επανάληψη, η συνθήκη της while πρέπει να ελεγχθεί και να διαπιστωθεί ότι είναι ψευδής, δηλαδή ότι έχει την τιμή False. Αντιθέτως, κάθε φορά που διαπιστώνεται ότι συνθήκη της while είναι αληθής, δηλαδή ότι έχει την τιμή True, ξεκινά ένας ακόμα κύκλος της επανάληψης. 7. Γιατί πιστεύετε ότι χρησιμοποιήσαμε τη μεταβλητή matches στο βήμα 4 για να αποθηκεύσουμε εκ νέου το αποτέλεσμα; Τι διαφορά θα είχε αν είχαμε χρησιμοποιήσει ένα άλλο όνομα στη θέση της; Η τιμή της παράστασης matches - removed αποθηκεύεται εκ νέου στη matches επειδή η τιμή της πρέπει να τροποποιηθεί, για να αντικατοπτρίζει το γεγονός ότι τα σπίρτα που απομένουν στο τραπέζι μειώθηκαν. Αν η τιμή της παράστασης matches - removed αποθηκευτεί σε άλλη μεταβλητή, τότε η matches θα μείνει αμετάβλητη και ίση με το αρχικό πλήθος σπίρτων. Σε κάθε νέο γύρο του παιχνιδιού, η τιμή της έκφρασης matches - removed θα βασίζεται συνεχώς στο αρχικό πλήθος σπίρτων και δεν θα αντιστοιχεί στο πλήθος των σπίρτων που απομένουν. Τροποποιήστε την εντολή του βήματος 4 που αφαιρεί τα σπίρτα που ζήτησε ο παίκτης, ώστε να μην αποθηκεύει το αποτέλεσμα της ξανά στη μεταβλητή matches, αλλά σε μια νέα μεταβλητή, όπως παρακάτω: remaining = matches - removed Τροποποιήστε και την print που εμφανίζει τον αριθμό των σπίρτων που απομένουν, ώστε να εμφανίζει πλέον τη μεταβλητή remaining. Εκτελέστε το πρόγραμμα δίνοντας διάφορες τιμές στον αριθμό των σπίρτων που αφαιρεί ο παίκτης. Τι παρατηρείτε; Εκτελώντας το πρόγραμμα, το παιχνίδι ξεκίνησε με 13 σπίρτα. Ζητήσαμε να αφαιρέσουμε 3 σπίρτα και το πρόγραμμα εμφάνισε μήνυμα ότι

5 ΤΟ ΠΑΙΧΝΙΔΙ ΤΗΣ ΑΦΑΙΡΕΣΗΣ 5 το πλήθος των σπίρτων που απομένει είναι 10. Στη συνέχεια όμως, ζητήσαμε να αφαιρέσουμε άλλα 3 σπίρτα και το πρόγραμμα εμφάνισε μήνυμα ότι το πλήθος των σπίρτων που απομένει είναι και πάλι 10. Μετά ζητήσαμε ν αφαιρέσουμε 1 σπίρτο και το πρόγραμμα εμφάνισε μήνυμα ότι το πλήθος των σπίρτων που απομένει είναι 12. Τo πλήθος των σπίρτων που εμφανίζει το πρόγραμμα ότι απομένουν δεν είναι σωστό. Γιατί πιστεύετε ότι συμβαίνει αυτό; Επειδή η matches δεν αλλάζει ποτέ τιμή και αντιστοιχεί στο αρχικό πλήθος σπίρτων. Συνεπώς και η remaining, της οποίας η τιμή δίνεται από την έκφραση matches - removed, αντιστοιχεί στο πλήθος των σπίρτων που απομένουν αν αφαιρέσουμε removed σπίρτα από το αρχικό πλήθος. Επαναφέρετε το πρόγραμμα, ώστε να χρησιμοποιεί τη μεταβλητή matches αντί για τη μεταβλητή remaining, όπως ήταν αρχικά. Ποιός Παίζει; Σε κάθε κύκλο του παιχνιδιού, το πρόγραμμα ρωτάει πόσα σπίρτα θα αφαιρεθούν. Ωστόσο, δεν καταγράφει ποιος από τους δύο παίκτες είναι που αφαιρεί κάθε φορά τα σπίρτα κι έτσι δεν είναι σε θέση να υπολογίσει ποιος είναι ο νικητής όταν τα σπίρτα τελειώσουν. 8. Ένας τρόπος για να λύσουμε το πρόβλημα είναι να χρησιμοποιήσουμε μια μεταβλητή player που να δείχνει τον αριθμό του παίκτη που παίζει σε κάθε γύρο. Τι τιμές θα παίρνει η μεταβλητή αυτή; Πώς θ αλλάζει σε κάθε γύρο; Η μεταβλητή θα μπορούσε να έχει ως τιμή το 1 ή το 2 και να εναλλάσσεται σε κάθε γύρο ανάμεσα σε αυτές τις δύο τιμές. Μια απλή προσέγγιση είναι να χρησιμοποιήσουμε μια μεταβλητή player, η οποία σε κάθε γύρο θα παίρνει εναλλάξ την τιμή 1 ή 2, υποδεικνύοντας έτσι ποιος παίκτης έχει σειρά να παίξει. Αρχικά, πριν ξεκινήσει η διαδικασία του παιχνιδιού, ορίζουμε ποιος παίκτης ξεκινάει πρώτος: αυτός θα είναι πάντα ο παίκτης με αριθμό 1. Προσθέστε την κατάλληλη εντολή, ώστε η μεταβλητή player να παίρνει σαν αρχική τιμή το 1. Θα προσθέσουμε πριν την επανάληψη την εντολή: player = 1 Τοποθετήσατε αυτή την εντολή πριν από τη while ή μέσα σε αυτή; Ποια πιστεύετε ότι είναι η διαφορά; Αν τοποθετήσουμε την εντολή μέσα στη while τότε θα επαναλαμβάνεται σε κάθε γύρο, με αποτέλεσμα να παίζει πάντα ο πρώτος παίκτης. 9. Τροποποιήστε την εντολή του βήματος 3 που εμφανίζει το μήνυμα προτροπής, ώστε πλέον να απευθύνεται σε συγκεκριμένο παίκτη. Χρησιμοποιήστε κατάλληλα τη μεταβλητή player. Για παράδειγμα:

6 ΤΟ ΠΑΙΧΝΙΔΙ ΤΗΣ ΑΦΑΙΡΕΣΗΣ 6 Παίκτη 1 πόσα σπίρτα θέλεις; Τροποποιούμε την εντολή που εμφανίζει το μήνυμα προτροπής ως εξής: print("παίκτη", player, "πόσα σπίρτα θέλεις;") Εκτελέστε το πρόγραμμά σας. Εμφανίζει τον αριθμό του παίκτη που παίζει σε κάθε γύρο; Όχι. Η player έχει μονίμως την τιμή 1 κι έτσι το πρόγραμμα εμφανίζει πάντα τον ίδιο αριθμό παίκτη. Θα πρέπει η τιμή της player να εναλλάσσεται σε κάθε γύρο μεταξύ των τιμών 1 και Στο τέλος κάθε κύκλου της επανάληψης, η τιμή της μεταβλητής player θα πρέπει να τροποποιείται, ώστε να υποδεικνύει τον επόμενο παίκτη που έχει σειρά να παίξει. Προσθέστε μέσα στη while τις κατάλληλες εντολές που θα δίνουν στην player την τιμή 2 όταν αυτή έχει την τιμή 1 και αντιστρόφως. Χρησιμοποιήστε την if else για το σκοπό αυτό. Θα προσθέσουμε τις ακόλουθες εντολές μέσα στη while: if player == 1: player = 2 else: player = 1 Είναι σημαντικό το σημείο μέσα στη while στο οποίο θα τοποθετηθούν αυτές οι εντολές. Εμείς τις τοποθετήσαμε μετά από όλες τις εντολές που υπήρχαν ήδη στη while, ώστε η εναλλαγή του παίκτη να είναι το τελευταίο πράγμα που γίνεται σε κάθε γύρο. Με δεδομένο ότι η player ξεκινά με την τιμή 1, θα θέλαμε η πρώτη εναλλαγή να γίνει αφού παίξει ο πρώτος παίκτης. Εκτελέστε το πρόγραμμά. Εναλλάσσει πλέον σε κάθε γύρο τον αριθμό του παίκτη που παίζει; Ναι, το μήνυμα απευθύνεται εναλλάξ στον έναν και στον άλλο παίκτη. Εμφανίζεται σωστά ο αριθμός του παίκτη, δηλαδή την πρώτη φορά ο αριθμός 1 και στον επόμενο γύρο ο αριθμός 2; Ναι. Αν εμφανίζεται στον πρώτο γύρο ο αριθμός 2 και στον επόμενο γύρο ο αριθμός 1, που πιστεύετε ότι μπορεί να οφείλεται αυτό το σφάλμα; Να απαντήσετε ακόμα κι αν η συμπεριφορά του δικού σας προγράμματος είναι ορθή. Έχουμε καθορίσει ότι η αρχική τιμή της player θα είναι το 1. Αν η πρώτη προτροπή του προγράμματος απευθύνεται στον παίκτη 2, αυτό σημαίνει ότι η εναλλαγή του παίκτη γίνεται πριν την εμφάνιση της πρώτης προτροπής.

7 ΤΟ ΠΑΙΧΝΙΔΙ ΤΗΣ ΑΦΑΙΡΕΣΗΣ 7 Σε περίπτωση που χρησιμοποιήσατε την elif και όχι την else στο πρόγραμμα σας, αντικαταστήστε την με μια else διαγράφοντας τη συνθήκη και εκτελέστε το πρόγραμμα. Θα διαπιστώσετε ότι λειτουργεί και πάλι σωστά. Είτε τη χρησιμοποιήσατε, είτε όχι, γιατί είναι περιττή η elif στο παράδειγμά μας; Θα μπορούσε κάποιος να υλοποιήσει την εναλλαγή του παίκτη ως εξής: if player == 1: player = 2 elif player == 2: player = 1 Σίγουρα ο κώδικας λειτουργεί σωστά. Ωστόσο, η player μπορεί να έχει μόνο δύο πιθανές τιμές: είτε την 1, είτε τη 2. Η συνθήκη της if ελέγχει μήπως η τιμή της player είναι η 1. Αν αυτό δεν ισχύει, τότε γνωρίζουμε ήδη ότι η τιμή της player είναι η 2 και είναι περιττό να ελέγξουμε κάποια επιπρόσθετη συνθήκη (όπως γίνεται με την elif). 11. Όταν η επανάληψη τελειώσει, η μεταβλητή player δείχνει ποιος παίκτης είχε σειρά να παίξει όταν τελείωσαν τα σπίρτα. Συνεπώς, μπορούμε να χρησιμοποιήσουμε τη μεταβλητή player για να διαπιστώσουμε ποιος παίκτης κέρδισε. Προσθέστε την κατάλληλη εντολή μετά την επανάληψη, ώστε να εμφανίζει τον αριθμό του παίκτη που κέρδισε. Για παράδειγμα: Παίκτη 2 κέρδισες! Όταν ολοκληρωθεί η επανάληψη, η τιμή της μεταβλητής player δείχνει τον νικητή (αφού ο παίκτης που έπαιξε πριν από αυτόν πήρε τα τελευταία σπίρτα). Συνεπώς, θα προσθέσουμε μετά την επανάληψη (χωρίς εσοχή) την εντολή: print("παίκτη", player, "κέρδισες!") Τι θα συμβεί αν τοποθετήσουμε την παραπάνω εντολή μέσα στην while; Αν κατά λάθος στοιχίσουμε αυτή την τελευταία εντολή μαζί με τις προηγούμενες, τότε θα εκτελείται κι αυτή σε κάθε κύκλο της επανάληψης, ανακυρήσσοντας εναλλάξ και τους δύο παίκτες ως νικητές! Εκτελέστε το πρόγραμμά σας. Εμφανίζει σωστά τον αριθμό του παίκτη που κέρδισε; Ναι. Αν εκτελέσουμε το πρόγραμμα δύο φορές και φροντίσουμε ώστε την πρώτη να κερδίσει ο παίκτης 1 και τη δεύτερη να κερδίσει ο παίκτης 2, τότε θα δούμε ότι και στις δύο περιπτώσεις εμφανίζεται στο τέλος του παιχνιδιού το μήνυμα με τον σωστό αριθμό του παίκτη που νίκησε. 12. Με τις εντολές που προσθέσαμε στο βήμα 10, η μεταβλητή player εναλλάσσεται σε κάθε γύρο μεταξύ των τιμών 1 και 2.

8 ΤΟ ΠΑΙΧΝΙΔΙ ΤΗΣ ΑΦΑΙΡΕΣΗΣ 8 Τώρα θα φτιάξουμε το πρώτο μας υποπρόγραμμα, το οποίο θα συντελεί στην υλοποίηση αυτής της λειτουργίας και θα μας βοηθήσει να συμμαζέψουμε λίγο τον κώδικα του κυρίως προγράμματος. Το υποπρόγραμμα θα επιστρέφει τον αριθμό του παίκτη που παίζει στον επόμενο γύρο. Προσθέστε την παρακάτω εντολή που ορίζει τη συνάρτηση next, με παράμετρο τον αριθμό p ενός παίκτη. next p def next(p): Προσθέστε στη συνάρτηση τις κατάλληλες εντολές έτσι ώστε να ελέγχει τον αριθμό p του παίκτη και να επιστρέφει τον αριθμό του παίκτη που έχει σειρά να παίξει μετά από αυτόν. Η συνάρτηση next δέχεται σαν παράμετρο τον αριθμό p ενός παίκτη κι επιστρέφει τον αριθμό του παίκτη που παίζει μετά τον p. Στο πρόγραμμά σας υπάρχουν ήδη οι εντολές που επιτελούν την παραπάνω λειτουργία, χρησιμοποιήστε ανάλογη προσέγγιση και στη συνάρτηση. Θυμηθείτε να υπάρχουν οι κατάλληλες εσοχές στις εντολές της συνάρτησης και να χρησιμοποιήσετε την εντολή return, προκειμένου να επιστρέψετε το αποτέλεσμα στο πρόγραμμα. Θα συμπληρώσουμε τον ορισμό της συνάρτησης next ως εξής: def next(p): if p == 1: return 2 else: return 1 Η προσέγγιση είναι παρόμοια με κείνη που χρησιμοποιήσαμε στο κύριο πρόγραμμα. Εδώ όμως σκεφτόμαστε ανεξάρτητα από το κύριο πρόγραμμα. Εδώ εστιάζουμε μόνο στη λειτουργία που θέλουμε να υλοποιεί η συνάρτηση: με δεδομένο τον αριθμό p ενός παίκτη, ποιός είναι ο παίκτης που παίζει μετά από αυτόν; Με το υποπρόγραμμα δεν τροποποιείται απευθείας η τιμή της player αλλα επιστρέφεται η τιμή που θα πρέπει εκχωρηθεί στην player για να γίνει η εναλλαγή του παίκτη. 13. Μέσα στη while, αντικαταστήστε τις εντολές του προγράμματος που εναλλάσσουν τον αριθμό του παίκτη με την εντολή που ακολουθεί: player = next(player) Η τιμή της μεταβλητής player είναι η τιμή που επιστρέφει η συνάρτηση next, δηλαδή ο αριθμός του επόμενου παίκτη. Εκτελέστε το πρόγραμμα. Εμφανίζει σωστά τον αριθμό του παίκτη που παίζει σε κάθε γύρο; Ναι, όπως συνέβαινε και πριν χρησιμοποιήσουμε τη next. Παρατηρείτε κάποια διαφορά στη λειτουργία του προγράμματος; Όχι. Ως χρήστες δεν αντιλαμβανόμαστε καμία απολύτως διαφορά στα μηνύματα που βλέπουμε και στον τρόπο που αλληλεπιδρούμε με το πρόγραμμα. Ως προγραμματιστές όμως, παρατηρούμε ότι το κύριο πρόγραμμα είναι συντομότερο και φαίνεται απλούστερο στην κατανόηση της λει-

9 ΤΟ ΠΑΙΧΝΙΔΙ ΤΗΣ ΑΦΑΙΡΕΣΗΣ 9 τουργίας του. 14. Υπάρχουν κι άλλοι τρόποι να επιτευχθεί το ίδιο αποτέλεσμα, όπως φαίνεται στις εναλλακτικές υλοποιήσεις που ακολουθούν. Ωστόσο, ο τρόπος που λειτουργεί η συνάρτηση δεν έχει σημασία για εκείνους που την καλούν. def next(p): return (p % 2) + 1 def next(p): return 3 - p Αντικαταστήστε τις εντολές της συνάρτησης next με όποια από τις παραπάνω εναλλακτικές υλοποιήσεις θέλετε. Εκτελέστε ξανά το πρόγραμμα. Παρατηρείτε κάποια διαφορά στη λειτουργία του σε σχέση με πριν; Όχι, και πάλι δεν υπάρχει καμία διαφορά στη λειτουργία του προγράμματος. Έχει όμως ενδιαφέρον ότι το κύριο πρόγραμμα δεν τροποποιήθηκε καθόλου, παρόλο που άλλαξε πλήρως ο τρόπος που λειτουργεί η next. Ουσιαστικά, για το κύριο πρόγραμμα δεν έχει σημασία με ποιον τρόπο λειτουργεί η next, αρκεί να επιστρέφει το αποτέλεσμα που πρέπει. Για να κατανοήσετε καλύτερα τη λειτουργία των παραπάνω εκδοχών της συνάρτησης next συμπληρώστε τον πίνακα που ακολουθεί για τις τιμές 1 και 2 της παραμέτρου p. Η έκφραση p%2 υπολογίζει το υπόλοιπο της ακέραιας διαίρεσης του p με το 2. πιθανές τιμές της παραμέτρου p τιμές της έκφρασης (p % 2) + 1 τιμές της έκφρασης 3 - p 1 (1 % 2) (2 % 2) Ποια από τις δύο υλοποιήσεις της συνάρτησης next επιλέξατε να χρησιμοποιήσετε στο πρόγραμμά σας; Τι σας ώθησε να κάνετε την επιλογή αυτή; Επέλεξα τη δεύτερη γιατί υπολογίζει το αποτέλεσμα με μια απλή αφαίρεση. Εντοπίζετε κάποιο πλεονέκτημα στις εναλλακτικές υλοποιήσεις σε σχέση με την αρχική; Μου αρέσει το γεγονός ότι οι εναλλακτικές υλοποιήσεις υπολογίζουν το αποτέλεσμα απευθείας, χωρίς να χρειαστεί να ελεγχθεί η τιμή της παραμέτρου p με μια if. Ο τρόπος που λειτουργούν μοιάζει με κόλπο. Ποια ή ποιες από τις υλοποιήσεις της next, συμπεριλαμβανομένης της αρχικής, θεωρείτε ότι μπορεί να γενικευτεί εύκολα, ώστε η next να είναι επαναχρησιμοποιήσιμη σε παιχνίδια όπου συμμετέχουν περισσότεροι από δύο παίκτες; Όταν συμμετέχουν, για παράδειγμα, τέσσερις παίκτες, τότε ο παίκτης που παίζει μετά τον 1 είναι ο 2, μετά τον 2 ο 3, μετά τον 3 ο 4 και μετά από αυτόν πάλι ο 1. Η γενίκευση της next ζητείται ως επέκταση στο αντίστοιχο κεφάλαιο. Μπορείτε να διαβάσετε την ακριβή εκφώνηση, αλλά και να συμβουλευτείτε την προτεινόμενη λύση.

10 ΤΟ ΠΑΙΧΝΙΔΙ ΤΗΣ ΑΦΑΙΡΕΣΗΣ 10 Η αρχική υλοποίηση της next με την if else μπορεί να επεκταθεί και σε τέτοια παιχνίδα, αφού θα έλεγε κανείς ότι υπάρχουν και πάλι δύο περιπτώσεις: αν ο p δεν είναι ο τελευταίος παίκτης τότε ο επόμενος είναι ο p + 1. Σε διαφορετική περίπτωση, ο επόμενος παίκτης είναι ο 1. Η υλοποίηση με το υπόλοιπο επίσης μπορεί να γενικευτεί σε περισσότερους παίκτες. Αντί να υπολογίζουμε το υπόλοιπο της διαίρεσης με το 2, αρκεί να υπολογίζουμε το υπόλοιπο της διαίρεσης με το πλήθος των παικτών. Αντιθέτως, η τρίτη υλοποίηση φαίνεται να πηγαινοέρχεται ανάμεσα σε δύο τιμές μόνο. Δεν γίνεται αυτή η προσέγγιση να γενικευτεί σε περισσότερους παίκτες. Μη Λέμε κι Ό,τι Θέλουμε Το πρόγραμμά μας επιτρέπει στον παίκτη που παίζει κάθε φορά ν αφαιρέσει όσα σπίρτα θέλει. Θα επεκτείνουμε το πρόγραμμα, έτσι ώστε να ελέγχει τον αριθμό των σπίρτων που ζητά ν αφαιρέσει ο παίκτης και να μην επιτρέπει κινήσεις που παραβιάζουν τους κανόνες του παιχνιδιού. 15. Για το σκοπό αυτό θα υλοποιήσουμε αρχικά μια συνάρτηση που θα δέχεται σαν παράμετρο το πλήθος m των σπίρτων που έχουν απομείνει και θα επιστρέφει το μέγιστο πλήθος σπίρτων που επιτρέπεται ν αφαιρεθούν. Σύμφωνα με τους κανόνες του παιχνιδιού, ένας παίκτης επιτρέπεται να αφαιρέσει από ένα μέχρι και τρία σπίρτα κάθε φορά, αρκεί τα σπίρτα που έχουν απομείνει στο τραπέζι να είναι περισσότερα από τρία. Σε διαφορετική περίπτωση, θα πρέπει πάρει το πολύ όσα σπίρτα βρίσκονται στο τραπέζι. Προσθέστε την παρακάτω εντολή στο πρόγραμμά σας για να δηλώσετε τη συνάρτηση maxmatches. def maxmatches(m): Χρησιμοποιήστε κατάλληλα την if else, ώστε η συνάρτηση να επιστρέφει το μέγιστο αριθμό σπίρτων που μπορούν να αφαιρεθούν ανάλογα με τον αριθμό των σπίρτων m που βρίσκονται στο τραπέζι. Αν τα σπίρτα m που απομένουν είναι περισσότερα από τρία, τότε το μέγιστο πλήθος που μπορεί ν αφαιρεθεί είναι τρία. Σε διαφορετική περίπτωση, ένας παίκτης μπορεί να αφαιρέσει το πολύ όσα σπίρτα απομένουν. Συνεπώς, θα συμπληρώσουμε τη maxmatches ως εξής: def maxmatches(m): if m > 3: return 3 else: return m

11 ΤΟ ΠΑΙΧΝΙΔΙ ΤΗΣ ΑΦΑΙΡΕΣΗΣ Προσθέστε τις παρακάτω εντολές αμέσως μετά την εντολή του βήματος 9 που διαβάζει τον αριθμό των σπίρτων που θέλει ν αφαιρέσει ο παίκτης. print("παίκτη", player, "πόσα σπίρτα θέλεις;") removed = int(input()) limit = maxmatches(matches) if removed < 1 or removed > limit: print("πάρε από 1 μέχρι και", limit, "σπίρτα") Τι αποτέλεσμα πιστεύετε ότι θα έχει η προσθήκη των παραπάνω εντολών; Η πρώτη εντολή καλεί την maxmatches για να υπολογίσει το μέγιστο πλήθος σπίρτων που επιτρέπεται ν αφαιρεθούν και ονομάζει την τιμή που επιστρέφεται limit. Η δεύτερη εντολή ελέγχει αν ο αριθμός σπίρτων που πληκτρολόγησε ο παίκτης είναι έγκυρος, δηλαδή τουλάχιστον ίσος με 1 και το πολύ ίσος με limit. Σε περίπτωση που ο αριθμός σπίρτων δεν είναι έγκυρος, τότε εμφανίζεται ένα σχετικό μήνυμα. Εκτελέστε το πρόγραμμα δίνοντας μια σειρά από λανθασμένες τιμές στον αριθμό των σπίρτων που αφαιρούνται. Εμφανίζεται το μήνυμα για τον μη-έγκυρο αριθμό σπίρτων; Εκτελώντας το πρόγραμμα, ζητήσαμε να αφαιρέσουμε διαδοχικά 4 και 5 σπίρτα. Και στις δύο περιπτώσεις εμφανίστηκε το μήνυμα. Σε περίπτωση που ο παίκτης δώσει μη-έγκυρη τιμή το πρόγραμμα την ξαναζητά ή συνεχίζει κανονικά τη λειτουργία του; Όταν ο παίκτης δώσει μη-έγκυρη τιμή τότε το πρόγραμμα εμφανίζει σχετικό μήνυμα, όμως αμέσως μετά εμφανίζει και το μήνυμα για τα σπίρτα που απομένουν, όπου φαίνεται ότι το πλήθος των σπίρτων που ζητήθηκαν έχει αφαιρεθεί, παρόλο που δεν ήταν έγκυρο. Επομένως, παρά το μήνυμα περί μη-έγκυρης τιμής, το πρόγραμμα συνεχίζει κανονικά την εκτέλεση των εντολών της επανάληψης, χωρίς να ζητά εκ νέου από τον παίκτη να πληκτρολογήσει μια έγκυρη τιμή. Γιατί πιστεύετε ότι συμβαίνει αυτό; Ο κώδικας που προσθέσαμε κάνει απλά έναν έλεγχο (με την if). Δεν περιλαμβάνεται σε αυτόν τον κώδικα κάποια εντολή που να ξαναζητά από το χρήστη να πληκτρολογήσει τιμή, σε περίπτωση που η αρχική τιμή που πληκτρολογεί δεν είναι έγκυρη. Τι θα προτείνατε για να διορθωθεί η λειτουργία του προγράμματος; Το πρόγραμμά μας ήδη περιλαμβάνει εντολές που ζητούν από το παίκτη να πληκτρολογήσει το πλήθος των σπίρτων που επιθυμεί να αφαιρέσει. Θα πρέπει λοιπόν αυτές τις εντολές να τις αντιγράψουμε και μέσα στην if, ώστε να ξαναζητείται το πλήθος των σπίρτων σε περίπτωση μη-έγκυρης τιμής. 17. Προσθέστε εκ νέου και μέσα στην if τις εντολές του βήματος 9 που προτρέπουν τον παίκτη να δώσει αριθμό σπίρτων και ζητούν την

12 ΤΟ ΠΑΙΧΝΙΔΙ ΤΗΣ ΑΦΑΙΡΕΣΗΣ 12 απάντησή του, ώστε όταν δίνει μη-έγκυρη απάντηση το πρόγραμμα να ξαναζητά τα σπίρτα που θέλει ο παίκτης να αφαιρέσει. Με αυτή την προσθήκη, ο σχετικός κώδικας γίνεται πλέον: print("παίκτη", player, "πόσα σπίρτα θέλεις;") removed = int(input()) limit = maxmatches(matches) if removed < 1 or removed > limit: print("πάρε από 1 μέχρι και", limit, "σπίρτα") print("παίκτη", player, "πόσα σπίρτα θέλεις;") removed = int(input()) Εκτελέστε το πρόγραμμα δίνοντας διαδοχικά μια μη-έγκυρη τιμή και στη συνέχεια μια έγκυρη. Λειτουργεί σωστά; Ναι! Αρχικά ζητήσαμε 4 σπίρτα και εμφανίστηκε το μήνυμα περί μηέγκυρης τιμής. Όμως, αντί το πρόγραμμα να προχωρήσει όπως πριν, τώρα ξαναζήτησε το πλήθος των σπίρτων που θα αφαιρεθούν. Ζητήσαμε 3 σπίρτα και το πρόγραμμα προχώρησε κανονικά, αφαιρώντας τα από το σύνολο. Εκτελέστε ξανά το πρόγραμμα δίνοντας διαδοχικά δύο μη-έγκυρες τιμές. Τι παρατηρείτε; Αρχικά ζητήσαμε 4 σπίρτα και εμφανίστηκε το μήνυμα περί μη-έγκυρης τιμής, χωρίς τα σπίρτα να αφαιρεθούν. Στη συνέχεια, ξαναζητήσαμε 4 σπίρτα και δυστυχώς τα σπίρτα αφαιρέθηκαν κανονικά από το σύνολο. 18. Παρόλο που στην πρώτη μη-έγκυρη τιμή το πρόγραμμα εμφανίζει μήνυμα σφάλματος στον παίκτη και του ζητάει να δώσει ξανά την τιμή των σπίρτων, στην επόμενη του επιτρέπει να συνεχίσει με τον αριθμό σπίρτων που διάλεξε. Θα χρησιμοποιήσουμε τη while, προκειμένου το πρόγραμμα να ξαναζητά τον αριθμό των σπίρτων που θέλει ο παίκτης όσο η απάντηση του παραμένει εκτός ορίων. Τροποποιήστε την if και στη θέση της βάλτε την εντολή while ώστε να κάνει τον έλεγχο για την εγκυρότητα του αριθμού των σπίρτων, όπως παρακάτω: while removed < 1 or removed > limit: Εκτελέστε το πρόγραμμα και δώστε μια σειρά από λανθασμένες και έγκυρες τιμές. Λειτουργεί σωστά; H while εγκλωβίζει το χρήστη σε έναν κύκλο, ο οποίος διακόπτεται μόνο όταν δοθεί έγκυρη τιμή. Όσες μη-έγκυρες τιμές κι αν δώσει ο χρήστης, το πρόγραμμα δεν συνεχίζει μέχρι να δοθεί μια τιμή εντός των επιτρεπτών ορίων. Μόνο όταν γίνει αυτό, το πρόγραμμα συνεχίζει με τις εντολές που ακολουθούν, αφαιρώντας τα σπίρτα που ζητήθηκαν και εμφανίζοντας το μήνυμα για τον αριθμό των σπίρτων που απομένουν. 19. Με τις εντολές που προσθέσαμε στα βήματα 16, 17 και 18, το πρόγραμμά μας δε διαβάζει απλά από τον παίκτη το πλήθος των σπίρ-

13 ΤΟ ΠΑΙΧΝΙΔΙ ΤΗΣ ΑΦΑΙΡΕΣΗΣ 13 των που επιθυμεί ν αφαιρέσει, αλλά επίσης ελέγχει την τιμή που δίνει ο παίκτης και εξασφαλίζει ότι αυτή δεν παραβιάζει τους κανόνες του παιχνιδιού. Τώρα θα κατασκευάσουμε ένα υποπρόγραμμα το οποίο υλοποιεί αυτή ακριβώς τη λειτουργία. Προσθέστε την εντολή που ακολουθεί για να ορίσετε τη συνάρτηση readmatches, η οποία δέχεται ως παραμέτρους τον αριθμό p του παίκτη που έχει σειρά να παίξει και το πλήθος m των σπίρτων που απομένουν. def readmatches(p,m): Προσθέστε στη συνάρτηση τις κατάλληλες εντολές έτσι ώστε να εμφανίζει μήνυμα προτροπής προς τον παίκτη με αριθμό p, να ζητά από τον παίκτη τον αριθμό των σπίρτων που επιθυμεί να αφαιρέσει και, αφού εξασφαλίσει με τους απαραίτητους ελέγχους ότι ο αριθμός των σπίρτων είναι έγκυρος με βάση τα σπίρτα m που απομένουν, να επιστρέφει τον αριθμό αυτό. Στην ουσία ο κώδικας που χρειάζεστε υπάρχει έτοιμος στο κύριο πρόγραμμα. Ακολουθήστε ανάλογη προσέγγιση και στη συνάρτηση, χρησιμοποιώντας τις τοπικές μεταβλητές p και m. Σε περίπτωση που δυσκολευτείτε μπορείτε να ανατρέξετε στα βήματα 16, 17 και 18. Θυμηθείτε να υπάρχουν οι κατάλληλες εσοχές στις εντολές της συνάρτησης και να χρησιμοποιήσετε την εντολή return, προκειμένου να επιστρέψετε το αποτέλεσμα στο πρόγραμμα. Ο ορισμός της συνάρτησης readmatches θα συμπληρωθεί ως εξής: def readmatches(p,m): print("παίκτη", p, "πόσα σπίρτα θέλεις;") r = int(input()) limit = maxmatches(m) while r < 1 or r > limit: print("πάρε από 1 μέχρι και", limit, "σπίρτα.") print("παίκτη", p, "πόσα σπίρτα θέλεις;") r = int(input()) return r Η προσέγγιση είναι ουσιαστικά ίδια με εκείνη που χρησιμοποιήσαμε στο κύριο πρόγραμμα. Εδώ όμως εστιάζουμε μόνο στη λειτουργία που θέλουμε να υλοποιεί η συνάρτηση: με δεδομένο τον αριθμό p ενός παίκτη, και τα σπίρτα m που απομένουν, ποιό είναι το (απαραίτητα έγκυρο) πλήθος σπίρτων που επιθυμεί να αφαιρέσει ο παίκτης p; 20. Με τις εντολές που προσθέσαμε στα βήματα 16, 17 και 18, το πρόγραμμά μας εξασφαλίζει ότι η τιμή που θα πάρει η removed από τον παίκτη θα είναι συμβατή με τους κανόνες του παιχνιδιού. Τώρα διαθέτουμε για τον σκοπό αυτό την συνάρτηση readmatches. Αντικαταστήστε όποιες εντολές του προγράμματος κρίνετε απαραίτητο με την κλήση της συνάρτησης, όπως φαίνεται παρακάτω. removed = readmatches(player, matches)

14 ΤΟ ΠΑΙΧΝΙΔΙ ΤΗΣ ΑΦΑΙΡΕΣΗΣ 14 Με τη χρήση της readmatches για την ανάγνωση των σπίρτων που θα αφαιρεί σε κάθε κύκλο ο παίκτης, η βασική επανάληψη του παιχνιδιού παίρνει την παρακάτω μορφή: while matches > 0: removed = readmatches(player, matches) matches = matches - removed print("σπίρτα που απομένουν:", matches) player = next(player) Εκτελέστε το πρόγραμμα. Λειτουργεί σωστά; Παρατηρείτε κάποια διαφορά στη λειτουργία του; Το πρόγραμμα λειτουργεί σωστά. Παρά τις εσωτερικές αλλαγές, ο χρήστης δεν αντιλαμβάνεται καμία απολύτως διαφορά στα μηνύματα που βλέπει και στον τρόπο που αλληλεπιδρά με το πρόγραμμα. Παρατηρήστε την έκταση και την πολυπλοκότητα που έχει αυτή την στιγμή το κύριο πρόγραμμα. Πιστεύετε ότι η χρήση συναρτήσεων έχει βελτιώσει την αναγνωσιμότητα του προγράμματος; Ένα πρόγραμμα είναι αναγνώσιμο όταν το διαβάζει κανείς και καταλαβαίνει πως λειτουργεί χωρίς να καταβάλει μεγάλη προσπάθεια. Το κύριο πρόγραμμα εξακολουθεί να είναι μικρό και συμπαγές, όπως ήταν πριν ξεκινήσουμε το βήμα 15. Όλος ο κώδικας για τον έλεγχο εγκυρότητας έχει ενσωματωθεί μέσα στις συναρτήσεις που κατασκευάσαμε. Στο κύριο πρόγραμμα, η μόνη ουσιαστική αλλαγή που έχει γίνει είναι ότι η τιμή της removed δεν διαβάζεται απευθείας από το χρήστη με την input, αλλά ελεγχόμενα, με τη readmatches. Χαζό Μηχάνημα Θα τροποποιήσουμε τώρα το πρόγραμμα, ώστε να αναλαμβάνει το ρόλο ενός από τους δύο παίκτες. Δεν είναι ανάγκη να καταλήξουμε από την αρχή σε κάποια ευφυή στρατηγική για το πρόγραμμά μας. 21. Μπορείτε να προτείνετε έναν απλό - χαζό τρόπο για να επιλέγει το πρόγραμμα το πλήθος των σπίρτων που θα αφαιρεί όταν έχει σειρά να παίξει; Όταν είμαστε αρχάριοι σ ένα παιχνίδι, παίζουμε λίγο-πολύ τυχαία. Και σ αυτή την περίπτωση, μπορεί το πρόγραμμα να επιλέγει τυχαία το πλήθος των σπίρτων που θα αφαιρεί κάθε φορά που έχει σειρά να παίξει. Θα κατασκευάσουμε μια απλή συνάρτηση η οποία θα επιλέγει τυχαία το πλήθος των σπίρτων που θα αφαιρεί το πρόγραμμα, φροντίζοντας αυτό το πλήθος να μην υπερβαίνει το μέγιστο πλήθος σπίρτων που επιτρέπεται να αφαιρεθούν. Πώς θα υπολογίζει η συνάρτηση τον μέγιστο πλήθος σπίρτων που μπορούν να αφαιρεθούν;

15 ΤΟ ΠΑΙΧΝΙΔΙ ΤΗΣ ΑΦΑΙΡΕΣΗΣ 15 Θα χρησιμοποιηθεί η συνάρτηση maxmatches, η οποία περιέχεται ήδη στο πρόγραμμα και υλοποιεί αυτή ακριβώς τη λειτουργία. Η maxmatches αναπτύχθηκε για να χρησιμοποιηθεί στα πλαίσια του ελέγχου εγκυρότητας, αλλά αποδεικνύεται χρήσιμο εξάρτημα που επαναχρησιμοποιείται και σε διαφορετικό σημείο του προγράμματος, με διαφορετικό σκοπό. Προσθέστε στο πρόγραμμα την παρακάτω εντολή που ορίζει τη συνάρτηση randommatches, με παράμετρο το πλήθος m των σπίρτων που απομένουν. def randommatches(m): Προσθέστε στη συνάρτηση την κατάλληλη εντολή ή εντολές, προκειμένου να επιστρέφει στο πρόγραμμα έναν τυχαίο ακέραιο αριθμό από το 1 μέχρι και το μέγιστο επιτρεπτό αριθμό σπίρτων που μπορεί να αφαιρέσει ο παίκτης. Ο ορισμός της συνάρτησης randommatches θα συμπληρωθεί ως εξής: def randommatches(m): return random.randint(1,maxmatches(m)) Ίσως όμως έτσι το πρόγραμμα να αυτοκτονεί, δηλαδή να αφαιρεί όλα τα σπίρτα ακόμα κι όταν έχει τη δυνατότητα να αφήσει τον αντίπαλό του με ένα (και να τον αναγκάσει να χάσει). Μια μικρή τροποποίηση: def randommatches(m): if m == 1: return 1 elif m <= 4: return m - 1 else: return random.randint(1,maxmatches(m)) Έτσι, όταν απομένει μόνο ένα σπίρτο, το πρόγραμμα αναγκάζεται να το πάρει και όταν τα σπίρτα είναι δύο, τρία ή τέσσερα, τότε το πρόγραμμα αφήνει τον αντίπαλο με το τελευταίο σπίρτο. Σε αυτές τις περιπτώσεις δεν γίνεται πια τυχαία επιλογή των σπίρτων που θ αφαιρεθούν. 22. Ας εστιάσουμε τώρα στο κύριο πρόγραμμα. Θα χρησιμοποιήσουμε μια μεταβλητή computer, η οποία στην αρχή του παιχνιδιού θα παίρνει τυχαία την τιμή 1 ή 2. Η τιμή της computer υποδεικνύει τον αριθμό του παίκτη που παίζει αυτοματοποιημένα, δηλαδή το ρόλο του τον έχει αναλάβει το ίδιο το πρόγραμμα. Προσθέστε στο πρόγραμμα την κατάλληλη εντολή που θα επιλέγει τυχαία είτε την τιμή 1 είτε την τιμή 2 και θα την αποθηκεύει στη μεταβλητή computer. Πριν την αρχή της επανάληψης, θα προστεθεί η εντολή: computer = random.randint(1,2)

16 ΤΟ ΠΑΙΧΝΙΔΙ ΤΗΣ ΑΦΑΙΡΕΣΗΣ Θυμηθείτε ότι στο τέλος κάθε γύρου, η μεταβλητή player εναλλάσσεται μεταξύ των τιμών 1 και 2, υποδεικνύοντας ποιος παίκτης έχει σειρά να παίξει στον επόμενο γύρο. Τώρα λοιπόν θα πρέπει να ελέγχουμε αν ο επόμενος παίκτης είναι ο άνθρωπος ή το πρόγραμμά μας, ώστε να καλέσουμε σε κάθε περίπτωση την ανάλογη συνάρτηση που θα μας επιστρέψει το πλήθος των σπίρτων που θα αφαιρεθούν. Χρησιμοποιήστε την if else, ώστε η μεταβλητή removed να παίρνει την τιμή που επιστρέφει η συνάρτηση randommatches όταν ο παίκτης που παίζει είναι ο υπολογιστής, και την τιμή που επιστρέφει η συνάρτηση readmatches σε διαφορετική περίπτωση. Για να ελέγξετε με την if ποιος έχει σειρά να παίξει, συγκρίνετε τις τιμές των μεταβλητών player και computer. Μέσα στην επανάληψη, στο σημείο όπου μέχρι πρότινος υπήρχε μόνο η κλήση της readmatches, τώρα ο κώδικας επεκτείνεται ως εξής: if player == computer: removed = randommatches(matches) else: removed = readmatches(player, matches) Όταν οι μεταβλητές player και computer έχουν την ίδια τιμή, αυτό σημαίνει πως είναι σειρά του προγράμματος να επιλέξει κίνηση κι έτσι καλείται η randommatches για να υπολογιστεί το πλήθος των σπίρτων που πρέπει να αφαιρεθούν. Σε διαφορετική περίπτωση, επιλέγει κίνηση ο χρήστης, μέσω της readmatches, όπως γινόνταν και προηγουμένως. 24. Προσθέστε την κατάλληλη εντολή, ώστε όταν παίζει ο υπολογιστής να εμφανίζεται το πλήθος των σπίρτων που αφαιρεί. Για παράδειγμα: Ο υπολογιστής παίρνει 2 σπίρτα. Στην περίπτωση που παίζει το ίδιο το πρόγραμμα, προσθέτουμε την εντολή: if player == computer: removed = randommatches(matches) print("ο υπολογιστής παίρνει", removed, "σπίρτα.") else: removed = readmatches(player, matches) 25. Χρειάζεται να φροντίσουμε μια ακόμα σημαντική λεπτομέρεια. Μέχρι στιγμής, στο τέλος του παιχνιδιού ανακοινώνεται ο αριθμός του παίκτη που έχασε. Τώρα που μόνο ο ένας παίκτης είναι άνθρωπος, είναι προτιμότερο να εμφανίζουμε διαφοροποιημένα μηνύματα. Προσθέστε τις κατάλληλες εντολές στο πρόγραμμα, ώστε ο νικητής ν ανακοινώνεται ως εξής: αν κερδίσει ο παίκτης, να ανακοινώνεται ο αριθμός του, όπως ακριβώς συνέβαινε μέχρι στιγμής. Αν κερδίσει το πρόγραμμα, να εμφανίζεται το μήνυμα: Ο υπολογιστής κέρδισε.

17 ΤΟ ΠΑΙΧΝΙΔΙ ΤΗΣ ΑΦΑΙΡΕΣΗΣ 17 Όπως έχουμε δει, η μεταβλητή player υποδεικνύει στο τέλος του παιχνιδιού ποιος είναι ο νικητής. Αν η player έχει την ίδια τιμή με την computer, τότε νικητής είναι το πρόγραμμα. if player == computer: print("ο υπολογιστής κέρδισε.") else: print("παίκτη", player, "κέρδισες!") Εκτελέστε το πρόγραμμά σας δύο φορές. Φροντίστε τη μία φορά να κερδίσετε εσείς ως παίκτης, ενώ την άλλη ο υπολογιστής. Εμφανίζει το κατάλληλο μήνυμα σε κάθε περίπτωση; Εκτελώντας το πρόγραμμα, μπορούμε να πάρουμε τα τελευταία σπίρτα, χάνοντας επίτηδες. Στην περίπτωση αυτή το πρόγραμμα εμφανίζει το σωστό μήνυμα: ότι ο υπολογιστής κέρδισε. Σε μια δεύτερη εκτέλεση, με προσεκτικές κινήσεις όταν τα σπίρτα είναι λίγα, δεν είναι ιδιαίτερα δύσκολο να αφήσουμε το πρόγραμμα με ένα σπίρτο, αναγκάζοντάς το να χάσει. Και πάλι, το πρόγραμμα εμφανίζει το σωστό μήνυμα. Άνθρωπος Εναντίον Μηχανής Όταν το πρόγραμμά μου παίζει τυχαία δεν έχει και μεγάλο ενδιαφέρον. Θα το κάνουμε λίγο πιο έξυπνο. 26. Θα πρέπει πρώτα εμείς να σχεδιάσουμε έναν καλύτερο τρόπο παιχνιδιού και μετά να τον περιγράψουμε με τις κατάλληλες εντολές. Είναι ευκολότερο ν αρχίσουμε μελετώντας ποιες είναι οι ενδεδειγμένες κινήσεις όταν απομένουν 2, 3 ή 4 σπίρτα: ο παίκτης που έχει σειρά να παίξει μπορεί να αφαιρέσει αντίστοιχα 1, 2 ή 3 σπίρτα και να κερδίσει άμεσα. Αντίθετα, όταν απομένουν 5 σπίρτα η κατάσταση είναι δύσκολη: όσα σπίρτα και να αφαιρέσει ο παίκτης που έχει σειρά να παίξει, η έκβαση είναι στα χέρια του αντιπάλου. Ανάλογες δυσάρεστες καταστάσεις, που θα ονομάσουμε «ανεπιθύμητες νησίδες», αντιμετωπίζει ο παίκτης που έχει σειρά να παίξει όταν απομένουν 9, 13, 17, κ.ο.κ σπίρτα. Όσα σπίρτα κι αν αφαιρέσει, ο αντίπαλος μπορεί να τον στείλει στην επόμενη νησίδα. Προκειμένου να κατανοήσετε καλύτερα τη στρατηγική που πρέπει να ακολουθήσει το πρόγραμμα (ή ο οποιοσδήποτε παίκτης) για να παίζει εξυπνότερα συμπληρώστε τον πίνακα που ακολουθεί. Στην πρώτη στήλη δίνεται ο αριθμός των σπίρτων. Στη δεύτερη στήλη θα συμπληρώσετε το υπόλοιπο της διαίρεσης του αριθμού των σπίρτων με το 4, ενώ στην τρίτη στήλη τον αριθμό των σπίρτων που πρέπει να αφαιρεθούν, προκειμένου να οδηγηθεί ο αντίπαλος σε μια ανεπιθύμητη νησίδα, σύμφωνα με την περιγραφή που προηγήθηκε.

18 ΤΟ ΠΑΙΧΝΙΔΙ ΤΗΣ ΑΦΑΙΡΕΣΗΣ 18 σπίρτα κίνηση m m%4 πόσα αφαιρούνται αδιάφορο αδιάφορο Παρατηρείτε κάποια σχέση ανάμεσα στον αριθμό της δεύτερης και της τρίτης στήλης; Οι δύο στήλες είναι άμεσα συνδεδεμένες. Η τιμή της παράστασης m % 4 μπορεί να καθορίσει αυτόματα πόσα σπίρτα πρέπει να αφαιρεθούν. Στις περιπτώσεις που ο αριθμός των σπίρτων που βρίσκονται στο τραπέζι είναι τέτοιος που δεν μπορεί να οδηγήσει τον παίκτη σε νίκη (για παράδειγμα το 13), πώς θα μπορούσε να επιλέγει τα σπίρτα που θα αφαιρέσει; Σε αυτές τις περιπτώσεις δεν έχει σημασία πόσα σπίρτα θα επιλέξει ο παίκτης. Θα μπορούσε απλά να επιλέγει τυχαία. 27. Με βάση τα παραπάνω, μπορούμε να υλοποιήσουμε ένα υποπρόγραμμα που δέχεται σαν παράμετρο το πλήθος m των σπίρτων που απομένουν και επιστρέφει το πλήθος των σπίρτων που πρέπει να αφαιρεθούν ώστε ο αντίπαλος να οδηγηθεί σε μια ανεπιθύμητη νησίδα. Στην περίπτωση που ο παίκτης βρίσκεται ήδη σε ανεπιθύμητη νησίδα, επιστρέφεται ένας τυχαίος αριθμός σπίρτων, καλώντας την randommatches. def computematches(m): mod = m % 4 if mod == 0: return 3 elif mod == 1: return randommatches(m) elif mod == 2: return 1 else: return 2

19 ΤΟ ΠΑΙΧΝΙΔΙ ΤΗΣ ΑΦΑΙΡΕΣΗΣ Στο κύριο πρόγραμμα, αντικαταστήστε την κλήση της συνάρτησης randommatches που επιλέγει ένα τυχαίο πλήθος σπίρτων, με μια κλήση στην computematches, ώστε πλεόν το πρόγραμμα να επιλέγει το πλήθος των σπίρτων που αφαιρείται ακολουθώντας συγκεκριμένη στρατηγική. Αντικαθιστώντας την κλήση της μιας συνάρτησης με την άλλη, ο κώδικας έχει ως εξής: if player == computer: removed = computematches(matches) Εκτελέστε το πρόγραμμά σας. Λειτουργεί σωστά; Όταν το πρόγραμμα ξεκινά πρώτο, χωρίς ο αρχικός αριθμός των σπίρτων να αντιστοιχεί σε ανεπιθύμητη νησίδα, παίζει ακριβώς όπως προβλέπεται από τον πίνακα, οδηγεί τον αντίπαλο σε κάθε γύρο σε μια ανεπιθύμητη νησίδα και τελικά κερδίζει. Όταν το πρόγραμμα ξεκινά δεύτερο και του δίνεται η ευκαιρία να φέρει τον αντίπαλό του σε ανεπιθύμητη νησίδα τότε και πάλι παίζει όπως προβλέπεται από τον πίνακα και κερδίζει. Υπάρχουν μόνο δύο περιπτώσεις να κερδίσει ένας παίκτης το πρόγραμμα, με δεδομένο ότι παίζει τέλεια σε κάθε κίνηση: αν ξεκινήσει πρώτος χωρίς να βρίσκεται σε ανεπιθύμητη νησίδα ή αν ξεκινήσει πρώτο το πρόγραμμα, ευρισκόμενο σε ανεπιθύμητη νησίδα.

Το Παιχνίδι της Αφαίρεσης

Το Παιχνίδι της Αφαίρεσης Το Παιχνίδι της Αφαίρεσης Φύλλο Εργασίας Σε αυτό το φύλλο εργασίας θα φτιάξουμε ένα παιχνίδι για δύο παίκτες που ονομάζεται NIM. Είναι πολύ παλιό και πιθανότατα προέρχεται από την Κίνα. Εδώ θ ασχοληθούμε

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

Τυχαίοι αριθμοί ρίξε μια «ζαριά»

Τυχαίοι αριθμοί ρίξε μια «ζαριά» Τυχαίοι αριθμοί ρίξε μια «ζαριά» Έννοιες: βιβλιοθήκη random, δομή επιλογής, δομή επανάληψης, υποπρογράμματα 1. Ας υποθέσουμε τι θα κάνουν οι παρακάτω εντολές: import random choose1 = random.randint(1,6)

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

Mπαρμπούτι. Ενδεικτικές Απαντήσεις Φύλλου Εργασίας. Τυχαιότητα

Mπαρμπούτι. Ενδεικτικές Απαντήσεις Φύλλου Εργασίας. Τυχαιότητα Mπαρμπούτι Ενδεικτικές Απαντήσεις Φύλλου Εργασίας 2 22 Ιουλίου 2016 13:51 Τυχαιότητα Στο παιχνίδι που θα υλοποιήσουμε, ο παίκτης ρίχνει δύο ζάρια. Το αποτέλεσμα του παιχνιδιού εξαρτάται από το άθροισμα

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

Mπαρμπούτι. Φύλλο Εργασίας. Τυχαιότητα

Mπαρμπούτι. Φύλλο Εργασίας. Τυχαιότητα Mπαρμπούτι Φύλλο Εργασίας Σε πολλές αμερικάνικες ταινίες οι πρωταγωνιστές γίνονται εκατομμυριούχοι ή χάνουν τα πάντα παίζοντας ένα παιχνίδι με ζάρια, άγνωστο στους περισσότερους από μας. Η πλησιέστερη

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

Μάντεψε τον Αριθμό Φύλλο Εργασίας 2

Μάντεψε τον Αριθμό Φύλλο Εργασίας 2 Μάντεψε τον Αριθμό Φύλλο Εργασίας 2 1 Μάντεψε τον Αριθμό Φύλλο Εργασίας 2 Ένα από τα πρώτα προγράμματα που συνηθίζεται να φτιάχνουν οι μαθητευόμενοι προγραμματιστές είναι ένα παιχνίδι στο οποίο ο παίκτης

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

Μάντεψε τον Αριθμό. Ενδεικτικές Απαντήσεις Φύλλου Εργασίας. Οδηγίες

Μάντεψε τον Αριθμό. Ενδεικτικές Απαντήσεις Φύλλου Εργασίας. Οδηγίες Μάντεψε τον Αριθμό Ενδεικτικές Απαντήσεις Φύλλου Εργασίας 1 10 Σεπτεμβρίου 2016 10:23 Οδηγίες Αρχικά, το πρόγραμμά μας θα δίνει κάποιες οδηγίες στον παίκτη σχετικά με το παιχνίδι. 1. Ξεκινήστε το πρόγραμμα

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

Μάντεψε τον Αριθμό. Φύλλο Εργασίας. Οδηγίες

Μάντεψε τον Αριθμό. Φύλλο Εργασίας. Οδηγίες Μάντεψε τον Αριθμό Φύλλο Εργασίας Ένα από τα πρώτα προγράμματα που συνηθίζεται να φτιάχνουν οι μαθητευόμενοι προγραμματιστές είναι ένα παιχνίδι στο οποίο ο παίκτης προσπαθεί να μαντέψει τον μυστικό αριθμό

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

Μάντεψε τον Αριθμό. Ενδεικτικές Απαντήσεις Φύλλου Εργασίας. Μάντεψε!

Μάντεψε τον Αριθμό. Ενδεικτικές Απαντήσεις Φύλλου Εργασίας. Μάντεψε! Μάντεψε τον Αριθμό Ενδεικτικές Απαντήσεις Φύλλου Εργασίας 3 10 Σεπτεμβρίου 2016 10:22 Μάντεψε! 1. Το πρόγραμμα θα ξεκινά επιλέγοντας τον μυστικό αριθμό. Η τιμή που επιλέγει το πρόγραμμά μας θα αποθηκεύεται

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

Μάντεψε τον Αριθμό. Έχω Ένα Μυστικό. Το Βρήκα;

Μάντεψε τον Αριθμό. Έχω Ένα Μυστικό. Το Βρήκα; Μάντεψε τον Αριθμό Ένα από τα πρώτα προγράμματα που συνηθίζεται να φτιάχνουν οι μαθητευόμενοι προγραμματιστές είναι ένα παιχνίδι στο οποίο ο παίκτης προσπαθεί να μαντέψει τον μυστικό αριθμό που έχει σκεφτεί

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

Μάντεψε τον Αριθμό. Φύλλο Εργασίας. Μάντεψε!

Μάντεψε τον Αριθμό. Φύλλο Εργασίας. Μάντεψε! Μάντεψε τον Αριθμό Φύλλο Εργασίας Ένα από τα πρώτα προγράμματα που συνηθίζεται να φτιάχνουν οι μαθητευόμενοι προγραμματιστές είναι ένα παιχνίδι στο οποίο ο παίκτης προσπαθεί να μαντέψει τον μυστικό αριθμό

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

3. Γράψτε μία εντολή που να εμφανίζει π.χ. «Πόσα είναι τα κορίτσια του;» και μία που να εμφανίζει: «Τα κορίτσια του Τζειμς Μποντ είναι 4»

3. Γράψτε μία εντολή που να εμφανίζει π.χ. «Πόσα είναι τα κορίτσια του;» και μία που να εμφανίζει: «Τα κορίτσια του Τζειμς Μποντ είναι 4» 1. Τι φαντάζεστε ότι θα κάνει η παρακάτω εντολή: print("καλημέρα.") εκτελέστε την στο περιβάλλον Python Shell 2. γράψτε μια παρόμοια π.χ. print("το όνομα μου είναι Μποντ.") 3. Γράψτε μία εντολή που να

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

Η Απάντηση. Φύλλο Εργασίας. Μηνύματα

Η Απάντηση. Φύλλο Εργασίας. Μηνύματα Η Απάντηση Φύλλο Εργασίας Στο βιβλίο The Hitchhiker s Guide to the Galaxy, περιγράφεται μια υπερευφυής φυλή η οποία αποφασίζει να φτιάξει έναν υπολογιστή που θα δώσει οριστικά την απάντηση για το νόημα

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

Ενότητα: Δυαδική Αναζήτηση Σχέδιο Δραστηριότητας: Παιχνίδι: Βρες τον αριθμό

Ενότητα: Δυαδική Αναζήτηση Σχέδιο Δραστηριότητας: Παιχνίδι: Βρες τον αριθμό Ενότητα: Δυαδική Αναζήτηση Σχέδιο Δραστηριότητας: Παιχνίδι: Βρες τον αριθμό 1 Εισαγωγή Σκεφτείτε έναν αριθμό από το 1 έως το 1000 και απαντήστε στην ερώτηση: Ο αριθμός που σκεφτήκατε είναι μεγαλύτερος

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

ΑΝΑΠΤΥΞΗ ΕΦΑΡΜΟΓΩΝ ΣΕ ΠΡΟΓΡΑΜΜΑΤΙΣΤΙΚΟ ΠΕΡΙΒΑΛΛΟΝ Τελικό επαναληπτικό διαγώνισμα Επιμέλεια: Δρεμούσης Παντελής

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

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

Η Απάντηση. Ενδεικτικές Απαντήσεις Φύλλου Εργασίας. Μηνύματα. 1. Πληκτρολογήστε την εντολή:

Η Απάντηση. Ενδεικτικές Απαντήσεις Φύλλου Εργασίας. Μηνύματα. 1. Πληκτρολογήστε την εντολή: Η Απάντηση Ενδεικτικές Απαντήσεις Φύλλου Εργασίας 1 22 Ιουλίου 2016 13:16 Μηνύματα 1. Πληκτρολογήστε την εντολή: print("καλημέρα.") Αυτό είναι το πρώτο σας πρόγραμμα. Εκτελέστε το για να δείτε τι θα συμβεί.

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

Αριστείδης Παλιούρας Ανακαλύψτε το Scratch 2

Αριστείδης Παλιούρας Ανακαλύψτε το Scratch 2 Παιχνίδι Κρεμάλα Στη δραστηριότητα αυτή θα δημιουργήσεις το γνωστό παιχνίδι της κρεμάλας στο οποίο ο παίκτης προσπαθεί να μαντέψει τα γράμματα από τα οποία αποτελείται μια άγνωστη λέξη. Το πρόγραμμα που

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

Η Μέρα της Εβδομάδας. Πες Μου Πότε

Η Μέρα της Εβδομάδας. Πες Μου Πότε Η Μέρα της Εβδομάδας Στο κεφάλαιο αυτό θ αναπτύξουμε ένα πρόγραμμα για να υπολογίζουμε σε ποια ημέρα της εβδομάδας αντιστοιχεί μια συγκεκριμένη ημερομηνία. Θα δανειστούμε τη μέθοδο υπολογισμού από τον

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

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

ΑΝΑΠΤΥΞΗ ΕΦΑΡΜΟΓΩΝ ΣΕ ΠΡΟΓΡΑΜΜΑΤΙΣΤΙΚΟ ΠΕΡΙΒΑΛΛΟΝ ΕΠΑΝΑΛΗΠΤΙΚΟ ΔΙΑΓΩΝΙΣΜΑ ΣΧΟΛΙΚΟΥ ΕΤΟΥΣ ΑΝΑΠΤΥΞΗ ΕΦΑΡΜΟΓΩΝ ΣΕ ΠΡΟΓΡΑΜΜΑΤΙΣΤΙΚΟ ΠΕΡΙΒΑΛΛΟΝ ΕΠΑΝΑΛΗΠΤΙΚΟ ΔΙΑΓΩΝΙΣΜΑ ΣΧΟΛΙΚΟΥ ΕΤΟΥΣ 2015-2016 Θέμα Α Α1. Να γράψετε στο τετράδιό σας τον αριθμό καθεμιάς από τις προτάσεις 1-4 και δίπλα τη λέξη ΣΩΣΤΟ,

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

Μπαρμπούτι 2. Τα Κόκκαλα Στον Μάστορα

Μπαρμπούτι 2. Τα Κόκκαλα Στον Μάστορα Μπαρμπούτι 2 Σε αυτό το κεφάλαιο θα φτιάξουμε ένα παιχνίδι με ζάρια. Στην πορεία θα εξασκηθούμε στη δομή επιλογής και θα γνωρίσουμε τη δομή επανάληψης, που μας επιτρέπει να εκτελούμε τις ίδιες εντολές

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

Παράδειγμα 2. Λύση & Επεξηγήσεις. Τέλος_επανάληψης Εμφάνισε Ναι Τέλος Α2 Διδακτική πρόταση ΕΝΟΤΗΤΑ 2η, Θέματα Θεωρητικής Επιστήμης των Υπολογιστών Κεφάλαιο 2.2. Παράγραφος 2.2.7.4 Εντολές Όσο επανάλαβε και Μέχρις_ότου Η διαπραγμάτευση των εντολών επανάληψης είναι σημαντικό

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

Φύλλο Εργασίας 3. Μια γρήγορη επανάληψη από τα προηγούμενα

Φύλλο Εργασίας 3. Μια γρήγορη επανάληψη από τα προηγούμενα 3 Φύλλο Εργασίας 3 Στο φύλλο εργασιών 3 θα ασχοληθούμε με τις λίστες μια δομή της γλώσσας python που έχει την δομή ενός πίνακα. Θα χρησιμοποιήσουμε τις βασικές εντολές από τις λίστες και θα κατασκευάσουμε

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

ΔΙΑΓΩΝΙΣΜΑ: ΑΝΑΠΤΥΞΗ ΕΦΑΡΜΟΓΩΝ ΣΕ ΠΡΟΓΡΑΜΜΑΤΙΣΤΙΚΟ ΠΕΡΙΒΑΛΛΟΝ ΤΑΞΗ:- Γ ΛΥΚΕΙΟΥ ΤΜΗΜΑΤΑ: ΓΟ4 ΓΟ7 (ΖΩΓΡΑΦΟΥ) ΓΟ5 ΓΟ6 (ΧΟΛΑΡΓΟΣ) HM/NIA: 15/1/2017

ΔΙΑΓΩΝΙΣΜΑ: ΑΝΑΠΤΥΞΗ ΕΦΑΡΜΟΓΩΝ ΣΕ ΠΡΟΓΡΑΜΜΑΤΙΣΤΙΚΟ ΠΕΡΙΒΑΛΛΟΝ ΤΑΞΗ:- Γ ΛΥΚΕΙΟΥ ΤΜΗΜΑΤΑ: ΓΟ4 ΓΟ7 (ΖΩΓΡΑΦΟΥ) ΓΟ5 ΓΟ6 (ΧΟΛΑΡΓΟΣ) HM/NIA: 15/1/2017 ΔΙΑΓΩΝΙΣΜΑ: ΑΝΑΠΤΥΞΗ ΕΦΑΡΜΟΓΩΝ ΣΕ ΠΡΟΓΡΑΜΜΑΤΙΣΤΙΚΟ ΠΕΡΙΒΑΛΛΟΝ ΤΑΞΗ:- Γ ΛΥΚΕΙΟΥ ΤΜΗΜΑΤΑ: ΓΟ4 ΓΟ7 (ΖΩΓΡΑΦΟΥ) ΓΟ5 ΓΟ6 (ΧΟΛΑΡΓΟΣ) HM/NIA: 15/1/2017 ΘΕΜΑ Α (Α1) Δίνεται η παρακάτω ακολουθία εντολών αλγορίθμου:

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

ΑΝΑΠΤΥΞΗ ΕΦΑΡΜΟΓΩΝ Κεφάλαιο 2 ο Να περιγραφεί η δομή επανάληψης Αρχή_επανάληψης Μέχρις_ότου

ΑΝΑΠΤΥΞΗ ΕΦΑΡΜΟΓΩΝ Κεφάλαιο 2 ο Να περιγραφεί η δομή επανάληψης Αρχή_επανάληψης Μέχρις_ότου 2.87 Να περιγραφεί η δομή επανάληψης Μέχρις_ότου Ημορφή της δομής επανάληψης Μέχρις_ότου είναι: Μέχρις_ότου Συνθήκη Η ομάδα εντολών στο εσωτερικό της επανάληψης, εκτελείται μέχρις ότου ισχύει η συνθήκη

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

ΘΕΜΑ 1ο. Μονάδες 10. Β. ίνεται το παρακάτω τμήμα αλγορίθμου: Όσο Ι < 10 επανάλαβε Εμφάνισε Ι Ι Ι + 3 Τέλος_επανάληψης ΑΡΧΗ 1ΗΣ ΣΕΛΙ ΑΣ

ΘΕΜΑ 1ο. Μονάδες 10. Β. ίνεται το παρακάτω τμήμα αλγορίθμου: Όσο Ι < 10 επανάλαβε Εμφάνισε Ι Ι Ι + 3 Τέλος_επανάληψης ΑΡΧΗ 1ΗΣ ΣΕΛΙ ΑΣ ΘΕΜΑ 1ο ΑΡΧΗ 1ΗΣ ΣΕΛΙ ΑΣ ΕΠΑΝΑΛΗΠΤΙΚΕΣ ΑΠΟΛΥΤΗΡΙΕΣ ΕΞΕΤΑΣΕΙΣ ΗΜΕΡΗΣΙΟΥ ΓΕΝΙΚΟΥ ΛΥΚΕΙΟΥ ΤΕΤΑΡΤΗ 4 ΙΟΥΛΙΟΥ 2007 ΕΞΕΤΑΖΟΜΕΝΟ ΜΑΘΗΜΑ: ΑΝΑΠΤΥΞΗ ΕΦΑΡΜΟΓΩΝ ΣΕ ΠΡΟΓΡΑΜΜΑΤΙΣΤΙΚΟ ΠΕΡΙΒΑΛΛΟΝ ΤΕΧΝΟΛΟΓΙΚΗΣ ΚΑΤΕΥΘΥΝΣΗΣ

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

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

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

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

Εισαγωγή στην Επιστήμη Υπολογιστών. Εισαγωγή στην Python

Εισαγωγή στην Επιστήμη Υπολογιστών. Εισαγωγή στην Python Εισαγωγή στην Επιστήμη Υπολογιστών Εισαγωγή στην Python Β Μέρος Δομή Ελέγχου if-elif-else Επαναληπτική Δομή Ελέγχου while Επαναληπτική Δομή Ελέγχου for Αλληλεπίδραση χρήστη-προγράμματος Συναρτήσεις Η δομή

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

1. Δεν μπορεί να γίνει κλήση μίας διαδικασίας μέσα από μία συνάρτηση.

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

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

ΣΤΗΛΗ Β ΑΠΟΤΕΛΕΣΜΑ 1. float(10) α pow(2,3) β abs(-10) γ int(5.6) δ. 10 ε. 5.6 Μονάδες 8 ΣΤΗΛΗ Α ΣΥΝΑΡΤΗΣΗ

ΣΤΗΛΗ Β ΑΠΟΤΕΛΕΣΜΑ 1. float(10) α pow(2,3) β abs(-10) γ int(5.6) δ. 10 ε. 5.6 Μονάδες 8 ΣΤΗΛΗ Α ΣΥΝΑΡΤΗΣΗ ΑΡΧΗ 1ΗΣ ΣΕΛΙ ΑΣ ΕΠΑΝΑΛΗΠΤΙΚΕΣ ΠΑΝΕΛΛΑ ΙΚΕΣ ΕΞΕΤΑΣΕΙΣ HMEΡΗΣΙΩΝ KAI ΕΣΠΕΡΙΝΩΝ ΕΠΑΓΓΕΛΜΑΤΙΚΩΝ ΛΥΚΕΙΩΝ ΠΕΜΠΤΗ 26 ΣΕΠΤΕΜΒΡΙΟΥ 2019 ΕΞΕΤΑΖΟΜΕΝΟ ΜΑΘΗΜΑ: ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ ΥΠΟΛΟΓΙΣΤΩΝ ΣΥΝΟΛΟ ΣΕΛΙ ΩΝ: ΕΠΤΑ (7)

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

Master Mind εφαρμογή στη γλώσσα προγραμματισμού C

Master Mind εφαρμογή στη γλώσσα προγραμματισμού C Master Mind εφαρμογή στη γλώσσα προγραμματισμού C Φεβρουάριος/Μάρτιος 2013 v. 0.1 Master-mind: κανόνες παιχνιδιού Στο master mind χρειάζεται να παράγονται κάθε φορά 4 τυχαία σύμβολα από ένα πλήθος 6 διαφορετικών

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

ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ Η/Υ Ακαδημαϊκό έτος 2001-2002 ΤΕΤΡΑΔΙΟ ΕΡΓΑΣΤΗΡΙΟΥ #4

ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ Η/Υ Ακαδημαϊκό έτος 2001-2002 ΤΕΤΡΑΔΙΟ ΕΡΓΑΣΤΗΡΙΟΥ #4 ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ Η/Υ Ακαδημαϊκό έτος 2001-2002 ΤΕΤΡΑΔΙΟ ΕΡΓΑΣΤΗΡΙΟΥ #4 «Προγραμματισμός Η/Υ» - Τετράδιο Εργαστηρίου #4 2 Γενικά Στο Τετράδιο #4 του Εργαστηρίου θα αναφερθούμε σε θέματα διαχείρισης πινάκων

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

ΘΕΜΑ 1ο. Μονάδες 10. Β. ίνεται το παρακάτω τμήμα αλγορίθμου: Όσο Ι < 10 επανάλαβε Εμφάνισε Ι Ι Ι + 3 Τέλος_επανάληψης ΑΡΧΗ 1ΗΣ ΣΕΛΙ ΑΣ

ΘΕΜΑ 1ο. Μονάδες 10. Β. ίνεται το παρακάτω τμήμα αλγορίθμου: Όσο Ι < 10 επανάλαβε Εμφάνισε Ι Ι Ι + 3 Τέλος_επανάληψης ΑΡΧΗ 1ΗΣ ΣΕΛΙ ΑΣ ΘΕΜΑ 1ο ΑΡΧΗ 1ΗΣ ΣΕΛΙ ΑΣ ΕΠΑΝΑΛΗΠΤΙΚΕΣ ΑΠΟΛΥΤΗΡΙΕΣ ΕΞΕΤΑΣΕΙΣ ΗΜΕΡΗΣΙΟΥ ΓΕΝΙΚΟΥ ΛΥΚΕΙΟΥ ΤΕΤΑΡΤΗ 4 ΙΟΥΛΙΟΥ 2007 ΕΞΕΤΑΖΟΜΕΝΟ ΜΑΘΗΜΑ: ΑΝΑΠΤΥΞΗ ΕΦΑΡΜΟΓΩΝ ΣΕ ΠΡΟΓΡΑΜΜΑΤΙΣΤΙΚΟ ΠΕΡΙΒΑΛΛΟΝ ΤΕΧΝΟΛΟΓΙΚΗΣ ΚΑΤΕΥΘΥΝΣΗΣ

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

ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ Η/Υ Ακαδημαϊκό έτος ΤΕΤΡΑΔΙΟ ΕΡΓΑΣΤΗΡΙΟΥ #2

ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ Η/Υ Ακαδημαϊκό έτος ΤΕΤΡΑΔΙΟ ΕΡΓΑΣΤΗΡΙΟΥ #2 ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ Η/Υ Ακαδημαϊκό έτος 2001-2002 ΤΕΤΡΑΔΙΟ ΕΡΓΑΣΤΗΡΙΟΥ #2 «Προγραμματισμός Η/Υ» - Τετράδιο Εργαστηρίου #2 2 Γενικά Στο Εργαστήριο αυτό θα αναλύσουμε τη χρήση της βασικής εντολής ελέγχου ροής

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

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

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

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

Ακρότατα πίνακα, χωρίς min, max, μόνο με pos

Ακρότατα πίνακα, χωρίς min, max, μόνο με pos Ακρότατα πίνακα, χωρίς min, max, μόνο με pos Θέμα εξετάσεων / 2010 Θέμα εξετάσεων / 2011 Θέμα εξετάσεων / 2013 Θέμα εξετάσεων / 2014 Θέμα εξετάσεων / 2014 ΟΜΟΣΠΟΝΔΙΑ ΕΚΠΑΙΔΕΥΤΙΚΩΝ ΦΡΟΝΤΙΣΤΩΝ ΕΛΛΑΔΟΣ (Ο.Ε.Φ.Ε.)

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

ΟΜΟΣΠΟΝΔΙΑ ΕΚΠΑΙΔΕΥΤΙΚΩΝ ΦΡΟΝΤΙΣΤΩΝ ΕΛΛΑΔΟΣ (Ο.Ε.Φ.Ε.) ΕΠΑΝΑΛΗΠΤΙΚΑ ΘΕΜΑΤΑ ΕΠΑΝΑΛΗΠΤΙΚΑ ΘΕΜΑΤΑ 2019 Β ΦΑΣΗ Γ ΓΕΝΙΚΟΥ ΛΥΚΕΙΟΥ

ΟΜΟΣΠΟΝΔΙΑ ΕΚΠΑΙΔΕΥΤΙΚΩΝ ΦΡΟΝΤΙΣΤΩΝ ΕΛΛΑΔΟΣ (Ο.Ε.Φ.Ε.) ΕΠΑΝΑΛΗΠΤΙΚΑ ΘΕΜΑΤΑ ΕΠΑΝΑΛΗΠΤΙΚΑ ΘΕΜΑΤΑ 2019 Β ΦΑΣΗ Γ ΓΕΝΙΚΟΥ ΛΥΚΕΙΟΥ ΑΞΗ: ΠΡΟΣΑΝΑΤΟΛΙΣΜΟΣ: ΜΑΘΗΜΑ: Γ ΓΕΝΙΚΟΥ ΛΥΚΕΙΟΥ ΣΠΟΥΔΩΝ ΟΙΚΟΝΟΜΙΑΣ & ΠΛΗΡΟΦΟΡΙΚΗΣ ΑΝΑΠΤΥΞΗ ΕΦΑΡΜΟΓΩΝ ΣΕ ΠΡΟΓΡΑΜΜΑΤΙΣΤΙΚΟ ΠΕΡΙΒΑΛΛΟΝ Ημερομηνία: Σάββατο 20 Απριλίου 2019 Διάρκεια Εξέτασης: 3 ώρες ΕΚΦΩΝΗΣΕΙΣ

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

App Inventor 3ο Μάθημα (Ζάρια - επέκταση)

App Inventor 3ο Μάθημα (Ζάρια - επέκταση) App Inventor 3ο Μάθημα (Ζάρια - επέκταση) Μεταβλητές Δομή επιλογής If then Λογικές συνθήκες Στο μάθημα αυτό θα επεκτείνουμε την εφαρμογή ζάρια που αναπτύξαμε στο πρώτο μάθημα ώστε να εμφανίζει μήνυμα επιτυχίας

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

ΕΝΟΤΗΤΑ 4 Λήψη Αποφάσεων και Συναρτήσεις Ελέγχου

ΕΝΟΤΗΤΑ 4 Λήψη Αποφάσεων και Συναρτήσεις Ελέγχου ΕΝΟΤΗΤΑ 4 Λήψη Αποφάσεων και Συναρτήσεις Ελέγχου Σκοπός και περίγραμμα της Ενότητας 4 Σκοπός της παρουσίασης Να μελετήσουμε τις συναρτήσεις που ελέγχουν την ροή και την εκτέλεση ενός προγράμματος Σύνοψη

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

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

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

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

ΣΚΗΝΙΚΟ ΥΠΟΒΑΘΡΑ ΑΡΧΙΚΗ

ΣΚΗΝΙΚΟ ΥΠΟΒΑΘΡΑ ΑΡΧΙΚΗ Scratch 1. Σκηνικό (Αρχική Έχασες Κέρδισες). Η πρώτη μου δουλειά όταν φτιάχνω ένα παιχνίδι είναι πάω στο ΣΚΗΝΙΚΟ - ΥΠΟΒΑΘΡΑ και να σχεδιάσω (ή να αντιγράψω μια εικόνα από το διαδίκτυο ή από οπουδήποτε

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

ΔΙΑΓΩΝΙΣΜΑ: ΑΝΑΠΤΥΞΗ ΕΦΑΡΜΟΓΩΝ ΣΕ ΠΡΟΓΡΑΜΜΑΤΙΣΤΙΚΟ ΠΕΡΙΒΑΛΛΟΝ ΤΑΞΗ: Γ ΛΥΚΕΙΟΥ HM/NIA: 21/2/2016

ΔΙΑΓΩΝΙΣΜΑ: ΑΝΑΠΤΥΞΗ ΕΦΑΡΜΟΓΩΝ ΣΕ ΠΡΟΓΡΑΜΜΑΤΙΣΤΙΚΟ ΠΕΡΙΒΑΛΛΟΝ ΤΑΞΗ: Γ ΛΥΚΕΙΟΥ HM/NIA: 21/2/2016 ΔΙΑΓΩΝΙΣΜΑ: ΑΝΑΠΤΥΞΗ ΕΦΑΡΜΟΓΩΝ ΣΕ ΠΡΟΓΡΑΜΜΑΤΙΣΤΙΚΟ ΠΕΡΙΒΑΛΛΟΝ ΤΑΞΗ: Γ ΛΥΚΕΙΟΥ HM/NIA: 21/2/2016 ΘΕΜΑ A (Α1) Να σημειώσετε με κατάλληλο τρόπο ανάλογα με το αν θεωρείτε σωστή ή λανθασμένη κάθε μία από τις

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

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

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

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

Θέμα Α Α3.1 ΤΕΛΟΣ 1ΗΣ ΑΠΟ 9 ΣΕΛΙΔΕΣ

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

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

App Inventor 5ο Μάθημα (Κορώνα γράμματα - επέκταση)

App Inventor 5ο Μάθημα (Κορώνα γράμματα - επέκταση) App Inventor 5ο Μάθημα (Κορώνα γράμματα - επέκταση) Λογικός τελεστής not Δομή επιλογής If then else Λογικές μεταβλητές Animation Θα επεκτείνουμε την εφαρμογή Κορώνα Γράμματα που δόθηκε σαν δραστηριότητα

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

Β. ίνεται το παρακάτω τμήμα δηλώσεων ενός προγράμματος σε «ΓΛΩΣΣΑ»: ΜΕΤΑΒΛΗΤΕΣ ΑΚΕΡΑΙΕΣ: Χ, Ζ[15] ΠΡΑΓΜΑΤΙΚΕΣ: Ω

Β. ίνεται το παρακάτω τμήμα δηλώσεων ενός προγράμματος σε «ΓΛΩΣΣΑ»: ΜΕΤΑΒΛΗΤΕΣ ΑΚΕΡΑΙΕΣ: Χ, Ζ[15] ΠΡΑΓΜΑΤΙΚΕΣ: Ω ΑΡΧΗ 1ΗΣ ΣΕΛΙ ΑΣ ΘΕΜΑ 1ο ΕΠΑΝΑΛΗΠΤΙΚΕΣ ΑΠΟΛΥΤΗΡΙΕΣ ΕΞΕΤΑΣΕΙΣ Γ ΤΑΞΗΣ ΗΜΕΡΗΣΙΟΥ ΓΕΝΙΚΟΥ ΛΥΚΕΙΟΥ ΠΑΡΑΣΚΕΥΗ 10 ΙΟΥΛΙΟΥ 2009 ΕΞΕΤΑΖΟΜΕΝΟ ΜΑΘΗΜΑ: ΑΝΑΠΤΥΞΗ ΕΦΑΡΜΟΓΩΝ ΣΕ ΠΡΟΓΡΑΜΜΑΤΙΣΤΙΚΟ ΠΕΡΙΒΑΛΛΟΝ ΤΕΧΝΟΛΟΓΙΚΗΣ

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

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

i 1 Όσο i <> 100 επανάλαβε i i + 2 Γράψε A[i] Τέλος_επανάληψης ΘΕΜΑ Α A1 Να γράψετε στο τετράδιό σας τον αριθμό καθεμιάς από τις παρακάτω προτάσεις α-δ και δίπλα τη λέξη ΣΩΣΤΟ, αν είναι σωστή, ή τη λέξη ΛΑΘΟΣ, αν είναι λανθασμένη. a. Σε μία εντολή εκχώρησης του αποτελέσματος

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

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

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

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

Ειδικά θέματα Αλγορίθμων και Δομών Δεδομένων (ΠΛΕ073) Απαντήσεις 1 ου Σετ Ασκήσεων

Ειδικά θέματα Αλγορίθμων και Δομών Δεδομένων (ΠΛΕ073) Απαντήσεις 1 ου Σετ Ασκήσεων Ειδικά θέματα Αλγορίθμων και Δομών Δεδομένων (ΠΛΕ073) Απαντήσεις 1 ου Σετ Ασκήσεων Άσκηση 1 α) Η δομή σταθμισμένης ένωσης με συμπίεση διαδρομής μπορεί να τροποποιηθεί πολύ εύκολα ώστε να υποστηρίζει τις

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

Εκφώνηση άσκησης. Η Κρεμάλα σαν παιχνίδι. Ανάλυση. Μέρος Α Αναφoρά, ανάλυση τακτικής. Υλοποίηση του παιχνιδιού «Κρεμάλα»

Εκφώνηση άσκησης. Η Κρεμάλα σαν παιχνίδι. Ανάλυση. Μέρος Α Αναφoρά, ανάλυση τακτικής. Υλοποίηση του παιχνιδιού «Κρεμάλα» ΚΡΕΜΑΛΑ Project 7 1 Εκφώνηση άσκησης Υλοποίηση του παιχνιδιού «Κρεμάλα» Το Project αυτό συνίσταται στην κατασκευή ενός προγράμματος σεναρίου κελύφους, που θα υλοποιεί το γνωστό παιχνίδι «Κρεμάλα» με δυνατότητα

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

Προτεινόμενα Θέματα ΑΕΠΠ

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

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

Επαναληπτικό Διαγώνισμα

Επαναληπτικό Διαγώνισμα Επαναληπτικό Διαγώνισμα Ανάπτυξη Εφαρμογών Σε Προγραμματιστικό Περιβάλλον Γ Λυκείου Κυριακή 13 Απριλίου 2014 ΘΕΜΑ Α Δίνεται το παρακάτω τμήμα προγράμματος που το ακολουθεί μία συνάρτηση που χρησιμοποιεί....

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

Επαναληπτικό διαγώνισμα στην Α.Ε.Π.Π - 18 / Απριλίου / 2010 ΘΕΜΑ 1

Επαναληπτικό διαγώνισμα στην Α.Ε.Π.Π - 18 / Απριλίου / 2010 ΘΕΜΑ 1 Επαναληπτικό διαγώνισμα στην Α.Ε.Π.Π - 18 / Απριλίου / 2010 ΘΕΜΑ 1 Α. Να γράψετε στο τετράδιό σας τον αριθμό καθεμιάς από τις παρακάτω προτάσεις 1-5 και δίπλα τη λέξη Σωστό, αν είναι σωστή, ή τη λέξη Λάθος,

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

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

Εισαγωγή στην πληροφορική Εθνικό Μετσόβιο Πολυτεχνείο Σχολή Αγρονόμων Τοπογράφων Μηχανικών Εισαγωγή στην πληροφορική Βασίλειος Βεσκούκης Δρ. Ηλεκτρολόγος Μηχανικός & Μηχανικός Υπολογιστών ΕΜΠ v.vescoukis@cs.ntua.gr Η γλώσσα προγραμματισμού

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

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

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

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

Τιμή Τιμή. σκορ. ζωές

Τιμή Τιμή. σκορ. ζωές Εισαγωγή στην έννοια των μεταβλητών Οι μεταβλητές Θα πρέπει να έχετε παρατηρήσει ότι έχουμε φτιάξει τόσα παιχνίδια μέχρι αυτό το σημείο και δεν έχουμε αναφερθεί πουθενά για το πως μπορούμε να δημιουργήσουμε

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

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

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

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

Επαναληπτική δοκιμασία στην Ανάπτυξη Εφαρμογών σε Προγραμματιστικό Περιβάλλον Τεχνολογικής Κατεύθυνσης Μάιος 2013

Επαναληπτική δοκιμασία στην Ανάπτυξη Εφαρμογών σε Προγραμματιστικό Περιβάλλον Τεχνολογικής Κατεύθυνσης Μάιος 2013 ΘΕΜΑ Α Επαναληπτική δοκιμασία στην Ανάπτυξη Εφαρμογών σε Προγραμματιστικό Περιβάλλον Τεχνολογικής Κατεύθυνσης Μάιος 2013 Α1.Να γράψετε στο τετράδιό σας τον αριθμό καθεμιάς από τις παρακάτω προτάσεις 1-5

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

Δυναμικές Ιστοσελίδες Εισαγωγή στην Javascript για προγραμματισμό στην πλευρά του client

Δυναμικές Ιστοσελίδες Εισαγωγή στην Javascript για προγραμματισμό στην πλευρά του client ΕΣΔ 516 Τεχνολογίες Διαδικτύου Δυναμικές Ιστοσελίδες Εισαγωγή στην Javascript για προγραμματισμό στην πλευρά του client Περιεχόμενα Περιεχόμενα Javascript και HTML Βασική σύνταξη Μεταβλητές Τελεστές Συναρτήσεις

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

ΑΡΧΗ 2ΗΣ ΣΕΛΙΔΑΣ Γ Α... Β

ΑΡΧΗ 2ΗΣ ΣΕΛΙΔΑΣ Γ Α... Β ΘΕΜΑ Α ΑΡΧΗ 1ΗΣ ΣΕΛΙΔΑΣ ΠΡΟΣΟΜΟΙΩΣΗ ΑΠΟΛΥΤΗΡΙΩΝ ΕΞΕΤΑΣΕΩΝ Γ' ΤΑΞΗΣ ΗΜΕΡΗΣΙΟΥ ΓΕΝΙΚΟΥ ΛΥΚΕΙΟΥ ΔΕΥΤΕΡΑ 11 ΑΠΡΙΛΙΟΥ 2011 ΕΞΕΤΑΖΟΜΕΝΟ ΜΑΘΗΜΑ: ΑΝΑΠΤΥΞΗ ΕΦΑΡΜΟΓΩΝ ΣΕ ΠΡΟΓΡΑΜΜΑΤΙΣΤΙΚΟ ΠΕΡΙΒΑΛΛΟΝ ΤΕΧΝΟΛΟΓΙΚΗΣ

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

ΠΡΟΣΟΜΟΙΩΣΗ ΠΑΝΕΛΛΑΔΙΚΩΝ ΕΞΕΤΑΣΕΩΝ Γʹ ΤΑΞΗΣ ΗΜΕΡΗΣΙΟΥ ΓΕΝΙΚΟΥ ΛΥΚΕΙΟΥ ΕΞΕΤΑΖΟΜΕΝΟ ΜΑΘΗΜΑ: ΑΕΠΠ ΤΡΙΤΗ 18 ΑΠΡΙΛΙΟΥ 2017 ΣΥΝΟΛΟ ΣΕΛΙΔΩΝ: ΕΠΤΑ (7)

ΠΡΟΣΟΜΟΙΩΣΗ ΠΑΝΕΛΛΑΔΙΚΩΝ ΕΞΕΤΑΣΕΩΝ Γʹ ΤΑΞΗΣ ΗΜΕΡΗΣΙΟΥ ΓΕΝΙΚΟΥ ΛΥΚΕΙΟΥ ΕΞΕΤΑΖΟΜΕΝΟ ΜΑΘΗΜΑ: ΑΕΠΠ ΤΡΙΤΗ 18 ΑΠΡΙΛΙΟΥ 2017 ΣΥΝΟΛΟ ΣΕΛΙΔΩΝ: ΕΠΤΑ (7) ΠΡΟΣΟΜΟΙΩΣΗ ΠΑΝΕΛΛΑΔΙΚΩΝ ΕΞΕΤΑΣΕΩΝ Γʹ ΤΑΞΗΣ ΗΜΕΡΗΣΙΟΥ ΓΕΝΙΚΟΥ ΛΥΚΕΙΟΥ ΕΞΕΤΑΖΟΜΕΝΟ ΜΑΘΗΜΑ: ΑΕΠΠ ΤΡΙΤΗ 18 ΑΠΡΙΛΙΟΥ 2017 ΣΥΝΟΛΟ ΣΕΛΙΔΩΝ: ΕΠΤΑ (7) Θέμα Α Α1. Να γράψετε στο τετράδιό σας τον αριθμό καθεμιάς

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

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

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

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

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

ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ ΥΠΟΛΟΓΙΣΤΩΝ & ΥΠΟΛΟΓΙΣΤΙΚΗ ΦΥΣΙΚΗ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ ΥΠΟΛΟΓΙΣΤΩΝ & ΥΠΟΛΟΓΙΣΤΙΚΗ ΦΥΣΙΚΗ Μέρος 5ο ΝΙΚΟΛΑΟΣ ΣΤΕΡΓΙΟΥΛΑΣ ΤΜΗΜΑ ΦΥΣΙΚΗΣ ΑΡΙΣΤΟΤΕΛΕΙΟ ΠΑΝΕΠΙΣΤΗΜΙΟ ΘΕΣΣΑΛΟΝΙΚΗΣ 1 Η ΕΝΤΟΛΗ for Με την εντολή for δημιουργούμε βρόχους επανάληψης σε

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

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

ΟΜΟΣΠΟΝ ΙΑ ΕΚΠΑΙ ΕΥΤΙΚΩΝ ΦΡΟΝΤΙΣΤΩΝ ΕΛΛΑ ΟΣ (Ο.Ε.Φ.Ε.) ΕΠΑΝΑΛΗΠΤΙΚΑ ΘΕΜΑΤΑ ΕΠΑΝΑΛΗΠΤΙΚΑ ΘΕΜΑΤΑ 2012 ΑΝΑΠΤΥΞΗ ΕΦΑΡΜΟΓΩΝ ΣΕ ΠΡΟΓΡΑΜΜΑΤΙΣΤΙΚΟ ΠΕΡΙΒΑΛΛΟΝ ΤΑΞΗ: ΚΑΤΕΥΘΥΝΣΗ: ΜΑΘΗΜΑ: ΘΕΜΑ Α Γ ΓΕΝΙΚΟΥ ΛΥΚΕΙΟΥ ΤΕΧΝΟΛΟΓΙΚΗ (2ος Κύκλος) ΑΝΑΠΤΥΞΗ ΕΦΑΡΜΟΓΩΝ ΣΕ ΠΡΟΓΡΑΜΜΑΤΙΣΤΙΚΟ ΠΕΡΙΒΑΛΛΟΝ Ηµεροµηνία: Κυριακή 22 Απριλίου 2012 ΕΚΦΩΝΗΣΕΙΣ Α1. Να γράψετε στο τετράδιό

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

Κεφάλαιο 10 Υποπρογράμματα. Καραμαούνας Πολύκαρπος

Κεφάλαιο 10 Υποπρογράμματα. Καραμαούνας Πολύκαρπος Κεφάλαιο 10 Υποπρογράμματα 1 10.1 Τμηματικός προγραμματισμός Τμηματικός προγραμματισμός ονομάζεται η τεχνική σχεδίασης και ανάπτυξης των προγραμμάτων ως ένα σύνολο από απλούστερα τμήματα προγραμμάτων.

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

καθώς και το παρακάτω τμήμα αλγορίθμου γραμμένο σε «ΓΛΩΣΣΑ»:

καθώς και το παρακάτω τμήμα αλγορίθμου γραμμένο σε «ΓΛΩΣΣΑ»: ΘΕΜΑ Α ΑΡΧΗ 1ΗΣ ΣΕΛΙΔΑΣ Γ ΤΑΞΗ ΓΕΝΙΚΟΥ ΛΥΚΕΙΟΥ ΚΑΙ ΕΠΑΛ (ΟΜΑΔΑ Β ) ΠΑΡΑΣΚΕΥΗ 25/04/2014 - ΕΞΕΤΑΖΟΜΕΝΟ ΜΑΘΗΜΑ: ΑΝΑΠΤΥΞΗ ΕΦΑΡΜΟΓΩΝ ΣΕ ΠΡΟΓΡΑΜΜΑΤΙΣΤΙΚΟ ΠΕΡΙΒΑΛΛΟΝ ΤΕΧΝΟΛΟΓΙΚΗΣ ΚΑΤΕΥΘΥΝΣΗΣ 2 ΣΥΝΟΛΟ ΣΕΛΙΔΩΝ:

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

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

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

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

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

Διαγώνισμα Ανάπτυξης Εφαρμογών Σε Προγραμματιστικό Περιβάλλον Διαγώνισμα Ανάπτυξης Εφαρμογών Σε Προγραμματιστικό Περιβάλλον ΘΕΜΑ Α A1. Να χαρακτηρίσετε τις προτάσεις που ακολουθούν, γράφοντας στο τετράδιό σας δίπλα στο γράμμα που αντιστοιχεί σε κάθε πρόταση, τη λέξη

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

Κεφάλαιο 10 Υποπρογράμματα. Καραμαούνας Πολύκαρπος

Κεφάλαιο 10 Υποπρογράμματα. Καραμαούνας Πολύκαρπος Κεφάλαιο 10 Υποπρογράμματα 1 10.1 Τμηματικός προγραμματισμός Τμηματικός προγραμματισμός ονομάζεται η τεχνική σχεδίασης και ανάπτυξης των προγραμμάτων ως ένα σύνολο από απλούστερα τμήματα προγραμμάτων.

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

Γραφικά υπολογιστών Εργαστήριο 1 Εισαγωγή στην Python

Γραφικά υπολογιστών Εργαστήριο 1 Εισαγωγή στην Python Γραφικά υπολογιστών Εργαστήριο 1 Εισαγωγή στην Python Σκοπός της 1ης άσκησης είναι η εξοικείωση με τη γλώσσα προγραμματισμού Python, την οποία και θα χρησιμοποιήσουμε και στις υπόλοιπες εργαστηριακές ασκήσεις.

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

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

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

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

1. Δεν μπορεί να γίνει κλήση μίας διαδικασίας μέσα από μία συνάρτηση.

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

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

ΚΕΦΑΛΑΙΟ 10 ΥΠΟΠΡΟΓΡΑΜΜΑΤΑ

ΚΕΦΑΛΑΙΟ 10 ΥΠΟΠΡΟΓΡΑΜΜΑΤΑ ΚΕΦΑΛΑΙΟ 10 Όπως είδαμε και σε προηγούμενο κεφάλαιο μια από τις βασικότερες τεχνικές στον Δομημένο Προγραμματισμό είναι ο Τμηματικός Προγραμματισμός. Τμηματικός προγραμματισμός ονομάζεται η τεχνική σχεδίασης

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

ΑΡΧΗ 1ΗΣ ΣΕΛΙΔΑΣ Γ ΤΑΞΗ

ΑΡΧΗ 1ΗΣ ΣΕΛΙΔΑΣ Γ ΤΑΞΗ 1ΗΣ ΣΕΛΙΔΑΣ ΕΠΑΝΑΛΗΠΤΙΚΟ ΔΙΑΓΩΝΙΣΜΑ Σ ΓΕΝΙΚΟΥ ΛΥΚΕΙΟΥ ΝΕΩΝ ΜΟΥΔΑΝΙΩΝ Δευτέρα, 12 Μαΐου 2014 ΕΞΕΤΑΖΟΜΕΝΟ ΜΑΘΗΜΑ: ΑΝΑΠΤΥΞΗ ΕΦΑΡΜΟΓΩΝ ΣΕ ΠΡΟΓΡΑΜΜΑΤΙΣΤΙΚΟ ΠΕΡΙΒΑΛΛΟΝ ΤΕΧΝΟΛΟΓΙΚΗΣ ΚΑΤΕΥΘΥΝΣΗΣ ΣΥΝΟΛΟ ΣΕΛΙΔΩΝ:

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

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

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

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

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

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

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

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

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

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

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

Ψευδοκώδικας. November 7, 2011 Ψευδοκώδικας November 7, 2011 Οι γλώσσες τύπου ψευδοκώδικα είναι ένας τρόπος περιγραφής αλγορίθμων. Δεν υπάρχει κανένας τυπικός ορισμός της έννοιας του ψευδοκώδικα όμως είναι κοινός τόπος ότι οποιαδήποτε

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

ΜΑΘΗΜΑ / ΤΑΞΗ : ΑΕΠΠ/Γ ΟΙΚΟΝΟΜΙΚΩΝ & ΠΛΗΡΟΦΟΡΙΚΗΣ-ΘΕΡΙΝΑ ΗΜΕΡΟΜΗΝΙΑ: 17/09/2017 ΕΠΙΜΕΛΕΙΑ ΔΙΑΓΩΝΙΣΜΑΤΟΣ: ΚΑΤΡΑΚΗ Α.-ΣΙΟΤΡΟΠΟΣ Π.-ΛΙΟΔΑΚΗΣ Ε.

ΜΑΘΗΜΑ / ΤΑΞΗ : ΑΕΠΠ/Γ ΟΙΚΟΝΟΜΙΚΩΝ & ΠΛΗΡΟΦΟΡΙΚΗΣ-ΘΕΡΙΝΑ ΗΜΕΡΟΜΗΝΙΑ: 17/09/2017 ΕΠΙΜΕΛΕΙΑ ΔΙΑΓΩΝΙΣΜΑΤΟΣ: ΚΑΤΡΑΚΗ Α.-ΣΙΟΤΡΟΠΟΣ Π.-ΛΙΟΔΑΚΗΣ Ε. ΔΙΑΓΩΝΙΣΜΑ ΕΚΠ. ΕΤΟΥΣ 2017-2018 ΜΑΘΗΜΑ / ΤΑΞΗ : ΑΕΠΠ/Γ ΟΙΚΟΝΟΜΙΚΩΝ & ΠΛΗΡΟΦΟΡΙΚΗΣ-ΘΕΡΙΝΑ ΗΜΕΡΟΜΗΝΙΑ: 17/09/2017 ΕΠΙΜΕΛΕΙΑ ΔΙΑΓΩΝΙΣΜΑΤΟΣ: ΚΑΤΡΑΚΗ Α.-ΣΙΟΤΡΟΠΟΣ Π.-ΛΙΟΔΑΚΗΣ Ε. ΘΕΜΑ Α Α1. Να γράψετε τον αριθμό

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

Παραδείγματα μεταβλητών

Παραδείγματα μεταβλητών Παραδείγματα μεταβλητών Παράδειγμα Bouncing Balls: Στη σκηνή υπάρχουν τρείς μπάλες και κάθε μία έχει διαφορετικό μέγεθος από τις άλλες. Όλες οι μπάλες χοροπηδούν ταυτόχρονα προς όλες τις κατευθύν-σεις.

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

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

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

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

Σημειώσεις του εργαστηριακού μαθήματος Πληροφορική ΙΙ. Εισαγωγή στην γλώσσα προγραμματισμού

Σημειώσεις του εργαστηριακού μαθήματος Πληροφορική ΙΙ. Εισαγωγή στην γλώσσα προγραμματισμού Σημειώσεις του εργαστηριακού μαθήματος Πληροφορική ΙΙ Εισαγωγή στην γλώσσα προγραμματισμού Ακαδημαϊκό έτος 2016-2017, Εαρινό εξάμηνο Οι σημειώσεις βασίζονται στα συγγράμματα: A byte of Python (ελληνική

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

ΑΡΧΗ 1ΗΣ ΣΕΛΙΔΑΣ Γ ΗΜΕΡΗΣΙΩΝ

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

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

ΑΡΧΗ 1ης ΣΕΛΙΔΑΣ. ii) Πόσες φορές θα εκτελεστεί η εντολή ΔΙΑΒΑΣΕ Α[μ,λ] στον αλγόριθμο της προηγούμενης ερώτησης; α) 35 β) 12 γ) 20

ΑΡΧΗ 1ης ΣΕΛΙΔΑΣ. ii) Πόσες φορές θα εκτελεστεί η εντολή ΔΙΑΒΑΣΕ Α[μ,λ] στον αλγόριθμο της προηγούμενης ερώτησης; α) 35 β) 12 γ) 20 ΑΡΧΗ 1ης ΣΕΛΙΔΑΣ ΕΞΕΤΑΖΟΜΕΝΟ ΜΑΘΗΜΑ : ΑΝΑΠΤΥΞΗ ΕΦΑΡΜΟΓΩΝ ΤΑΞΗ / ΤΜΗΜΑ : Γ ΛΥΚΕΙΟΥ ΔΙΑΓΩΝΙΣΜΑ ΠΕΡΙΟΔΟΥ : ΙΑΝΟΥΑΡΙΟΣ 2019 ΣΥΝΟΛΟ ΣΕΛΙΔΩΝ : 6 (ΕΞΙ) ΘΕΜΑ Α : A1. Να γράψετε στο φύλλο απαντήσεων τον αριθμό

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

ΑΡΧΗ 1ΗΣ ΣΕΛΙΔΑΣ Γ ΗΜΕΡΗΣΙΩΝ

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

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

ΑΡΧΗ 1ης ΣΕΛΙΔΑΣ. ii) Πόσες φορές θα εκτελεστεί η εντολή ΔΙΑΒΑΣΕ Α[μ,λ] στον αλγόριθμο της προηγούμενης ερώτησης; α) 35 β) 12 γ) 20

ΑΡΧΗ 1ης ΣΕΛΙΔΑΣ. ii) Πόσες φορές θα εκτελεστεί η εντολή ΔΙΑΒΑΣΕ Α[μ,λ] στον αλγόριθμο της προηγούμενης ερώτησης; α) 35 β) 12 γ) 20 ΑΡΧΗ 1ης ΣΕΛΙΔΑΣ ΕΞΕΤΑΖΟΜΕΝΟ ΜΑΘΗΜΑ : ΑΝΑΠΤΥΞΗ ΕΦΑΡΜΟΓΩΝ ΤΑΞΗ / ΤΜΗΜΑ : Γ ΛΥΚΕΙΟΥ ΔΙΑΓΩΝΙΣΜΑ ΠΕΡΙΟΔΟΥ : ΙΑΝΟΥΑΡΙΟΣ 2018 ΣΥΝΟΛΟ ΣΕΛΙΔΩΝ : 6 (ΕΞΙ) ΘΕΜΑ Α : A1. Να γράψετε στο φύλλο απαντήσεων τον αριθμό

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

ΑΝΑΠΤΥΞΗ ΕΦΑΡΜΟΓΩΝ ΣΕ ΠΡΟΓΡΑΜΜΑΤΙΣΤΙΚΟ ΠΕΡΙΒΑΛΛΟΝ Ονοματεπώνυμο: Βαθμός:

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

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

Προγραμματιστικές Ασκήσεις, Φυλλάδιο 1

Προγραμματιστικές Ασκήσεις, Φυλλάδιο 1 ΠΑΝΕΠΙΣΤΗΜΙΟ ΙΩΑΝΝΙΝΩΝ ΤΜΗΜΑ ΠΛΗΡΟΦΟΡΙΚΗΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ ΣΕ C Προγραμματιστικές Ασκήσεις, Φυλλάδιο Εκφώνηση: 9/3/0 Παράδοση: 5/4/0,.59 Άσκηση 0 η : Το πρόβλημα της βελόνας του Buffon Θέμα της εργασίας

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

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

ΔΙΑΓΩΝΙΣΜΑ ΠΡΟΣΟΜΟΙΩΣΗΣ ΣΤΗΝ ΑΝΑΠΤΥΞΗ ΕΦΑΡΜΟΓΩΝ ΣΕ ΠΡΟΓΡΑΜΜΑΤΙΣΤΙΚΟ ΠΕΡΙΒΑΛΛΟΝ ΔΙΑΓΩΝΙΣΜΑ ΠΡΟΣΟΜΟΙΩΣΗΣ ΣΤΗΝ ΑΝΑΠΤΥΞΗ ΕΦΑΡΜΟΓΩΝ ΣΕ ΠΡΟΓΡΑΜΜΑΤΙΣΤΙΚΟ ΠΕΡΙΒΑΛΛΟΝ 05/01/2010 ΘΕΜΑ 1 ο Α) Δίνεται η παρακάτω ακολουθία εντολών αλγορίθμου: ΑΛΓΟΡΙΘΜΟΣ Θέμα1 ΔΙΑΒΑΣΕ Ν Σ 0 π 0 ΓΙΑ ψ ΑΠΟ -1 ΜΕΧΡΙ

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

1. Μία συνάρτηση δεν μπορεί να έχει παραπάνω από μία παραμέτρους.

1. Μία συνάρτηση δεν μπορεί να έχει παραπάνω από μία παραμέτρους. 1ΗΣ ΣΕΛΙΔΑΣ Κυριακή 12 Μαΐου 2019 Προσομοιωμένο διαγώνισμα στο μάθημα Ανάπτυξη Εφαρμογών σε Προγραμματιστικό Περιβάλλον Προσανατολισμού Περιφερειακή Διεύθυνση Α/θμιας & Β/θμιας Εκπαίδευσης Νοτίου Αιγαίου

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

ΑΡΧΗ 1ΗΣ ΣΕΛΙΔΑΣ Γ ΗΜΕΡΗΣΙΩΝ

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

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

Πληρουορική Γ Γσμμασίοσ

Πληρουορική Γ Γσμμασίοσ Πληρουορική Γ Γσμμασίοσ Προγραμματισμός και Αλγόριθμοι Από το και τημ Χελώμα στημ Ευριπίδης Βραχνός http://evripides.mysch.gr/ 2014 2015 1 Προγραμματισμός Ζάννειο Πρότυπο Πειραματικό Γυμνάσιο Πειραιά Ενότητα:

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

ΑΡΧΗ 1ΗΣ ΣΕΛΙΔΑΣ Γ ΗΜΕΡΗΣΙΩΝ

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

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

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

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

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

Φροντιστήρια Επίγνωση Προτεινόμενα Θέματα Πανελλαδικών ΑΕΠΠ 2015

Φροντιστήρια Επίγνωση Προτεινόμενα Θέματα Πανελλαδικών ΑΕΠΠ 2015 Φροντιστήρια Επίγνωση Προτεινόμενα Θέματα Πανελλαδικών ΑΕΠΠ 2015 Βάλβης Δημήτριος Μηχανικός Πληροφορικής ΘΕΜΑ Α Α1. Να γράψετε στο τετράδιό σας τον αριθμό καθεμιάς από τις παρακάτω προτάσεις 1-5 και δίπλα

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

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

Στην εντολή while η επανάληψη συνεχίζεται όσο η λογική έκφραση έχει τιμή false. ΑΡΧΗ 1ΗΣ ΣΕΛΙΔΑΣ Γ ΤΑΞΗ ΕΠΑΛ (ΟΜΑΔΑ Α ) & ΜΑΘΗΜΑΤΩΝ ΕΙΔΙΚΟΤΗΤΑΣ ΕΠΑΛ (ΟΜΑΔΑ Β ) ΤΕΤΑΡΤΗ 08/04/2015 - ΕΞΕΤΑΖΟΜΕΝΟ ΜΑΘΗΜΑ: ΔΟΜΗΜΕΝΟΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ ΣΥΝΟΛΟ ΣΕΛΙΔΩΝ: ΕΞΙ (6) ΘΕΜΑ Α Α1. Να χαρακτηρίσετε τις

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