Οδηγίες χρήσης και σύντομη εισαγωγή στην πλατφόρμα Greenfoot Version 1.1

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

Download "Οδηγίες χρήσης και σύντομη εισαγωγή στην πλατφόρμα Greenfoot Version 1.1"

Transcript

1 Οδηγίες χρήσης και σύντομη εισαγωγή στην πλατφόρμα Greenfoot Version 1.1 Επιμέλεια Σημειώσεων 1 : Πατρικάκης Χαράλαμπος, Λάζαρος Τουμανίδης, Κόγιας Δημήτριος 1 Οι σημειώσεις βασίζονται στους αντίστοιχους οδηγούς που βρίσκονται στην ιστοσελίδα του Greenfoot, και στην ελληνική μετάφραση αυτών (Mantzas Ioannis, Milolidakis Giannis). Εργαστήριο Αντικειμενοστραφούς προγραμματισμού: Εισαγωγή στην πλαφόρμα Greenfoot [1]

2 Πίνακας περιεχομένων Οδηγός 1: Αλληλεπιδρώντας με το Greenfoot... 3 Η διεπαφή Greenfoot... 3 Εισαγωγή αντικειμένων στον κόσμο... 6 Ενεργοποίηση των αντικειμένων... 7 Εκτέλεση σεναρίου... 9 Άμεση εκτέλεση μεθόδων Δημιουργία ενός νέου κόσμου Κλήση μεθόδων του κόσμου Οδηγός 2: Κίνηση και κλειδιά ελέγχου Το σενάριο Crabs Οδηγός 3: Εντοπισμός και αφαίρεση των Actors και δημιουργία μεθόδων Τρώγοντας σκουλήκια Refactoring Η αλλιώς ανακατασκευή του κώδικα μας Οδηγός 4: Αποθήκευση του κόσμου, αναπαραγωγή και καταγραφή ήχου Αποθήκευση του κόσμου Αναπαραγωγή και αποθήκευση ήχων Οδηγός 5: Προσθήκη τυχαία κινούμενου εχθρού Προσβασιμότητα ενός αντικειμένου από ένα άλλο Παράρτημα Α: Λήψη, εγκατάσταση και χρήση του Greenfoot Παράρτημα Β: Χρήσιμοι σύνδεσμοι Εργαστήριο Αντικειμενοστραφούς προγραμματισμού: Εισαγωγή στην πλαφόρμα Greenfoot [2]

3 Οδηγός 1: Αλληλεπιδρώντας με το Greenfoot Αυτός ο οδηγός εξηγεί τα βασικά στοιχεία της διεπαφής Greenfoot, και πως γίνεται η αλληλεπίδραση με αυτήν. Αλλαγή διεπαφής στα Ελληνικά για παλαιότερες εκδόσεις Για να αλλάξουμε την διεπαφή του Greenfoot στα Ελληνικά ακολουθούμε τα εξής βήματα: 1. Εντοπίζουμε το αρχείο greenfoot.defs. Το αρχείο θα το βρείτε στο: <φάκελος_greenfoot> / lib / greenfoot.defs 2. Αυτό το αρχείο περιέχει παραμέτρους της εφαρμογής στην μορφή: όνομα_παραμέτρου = τιμή 3. Εντοπίζουμε την παράμετρο στο αρχείο που ονομάζεται: bluej.language 4. Σε αυτήν την παράμετρο θέτουμε την γλώσσα στην οποία επιθυμούμε να εμφανίζεται η διεπαφή μας. Για τα Ελληνικά δώστε το εξής: bluej.language = greek 5. Αυτό ήταν όλο. Έχετε κατά νου ότι η αλλαγές που κάναμε θα μεταφράσουν την διεπαφή στα Ελληνικά αλλά όχι και τον κώδικα των σεναρίων που εκτελείται ή τα ονόματα των κλάσεων. Αλλαγή διεπαφής στα Ελληνικά για νεότερες εκδόσεις Για να αλλάξουμε την διεπαφή του Greenfoot στα Ελληνικά σε νεότερες εκδόσεις η διαδικασία έχει απλουστευθεί. 1. Επιλέγουμε από το μενού Edit Preferences. 2. Επιλέγουμε την ταμπέλα Interface και στο Language επιλέγουμε Greek. 3. Επανεκκινούμε το Greenfoot και πλέον η διεπαφή μας είναι στα Ελληνικά. Προσέξτε ότι ισχύει ότι ειπώθηκε παραπάνω πως μόνο η διεπαφή είναι στα Ελληνικά και όχι ο κώδικας των διαφόρων σεναρίων. Η διεπαφή Greenfoot Ο οδηγός αυτός χρησιμοποιεί ένα σενάριο που ονομάζεται wombats το οποίο διανέμεται με το Greenfoot αλλά μπορείτε να το βρείτε και στην πλατφόρμα του μαθήματος και να το κατεβάσετε. Ανοίγουμε το σενάριο wombats στο Greenfoot επιλέγοντας Scenario και Open και κατόπιν διαλέγουμε τη θέση του αρχείου Project για το wombat στον σκληρό μας. Εργαστήριο Αντικειμενοστραφούς προγραμματισμού: Εισαγωγή στην πλαφόρμα Greenfoot [3]

4 Επιλέγουμε την τοποθεσία όπου θέλουμε να αποθηκεύσουμε το σενάριο και λαμβάνουμε την παρακάτω οθόνη: Εργαστήριο Αντικειμενοστραφούς προγραμματισμού: Εισαγωγή στην πλαφόρμα Greenfoot [4]

5 Αρχικά διαλέγουμε την επιλογή compile, ώστε να γίνει η μεταγλώττιση του κώδικα και να εμφανιστεί ο νέος κόσμος (world). Η μεγάλη περιοχή με το πλέγμα που καλύπτει την πλειοψηφία του παραθύρου, ονομάζεται The World δηλαδή Ο Κόσμος της εφαρμογής μας. Εφόσον έχουμε ένα σενάριο το οποίο έχει να κάνει με wombats βλέπουμε ένα wombat world. Στην δεξιά μεριά του παραθύρου είναι η οθόνη των κλάσεων. Εδώ μπορούμε να δούμε όλες τις κλάσεις τις java που εμπεριέχονται στο σενάριο (project). Οι κλάσεις world και actor θα είναι πάντα εκεί καθώς έχουν προστεθεί από το σύστημα του Greenfoot. Οι υπόλοιπες κλάσεις ανήκουν στο σενάριο wombat και θα είναι διαφορετικές ανάλογα με το σενάριο που ανοίγουμε ή δημιουργούμε. Κάτω από τον Κόσμο είναι τα εργαλεία εκτέλεσης (Η περιοχή με τα κουμπιά Act, Run Reset και τον ρυθμιστή της ταχύτητας). Εργαστήριο Αντικειμενοστραφούς προγραμματισμού: Εισαγωγή στην πλαφόρμα Greenfoot [5]

6 Ο κόσμος Οι κλάσεις Τα εργαλεία εκτέλεσης Εισαγωγή αντικειμένων στον κόσμο Για την εισαγωγή αντικειμένων στον νέο κόσμο, επιλέγουμε με δεξί κλικ (σε υπολογιστές Mac, όπου υπάρχει δεξί κλικ στον οδηγό αυτόν ο αντίστοιχος συνδυασμός είναι Control-κλικ) την κλάση Wombat από την περιοχή όπου υπάρχουν όλες οι κλάσεις. Το αναδυόμενο μενού είναι το παρακάτω: Εργαστήριο Αντικειμενοστραφούς προγραμματισμού: Εισαγωγή στην πλαφόρμα Greenfoot [6]

7 Επιλέγουμε 'new Wombat()' από το μενού και κάνουμε κλικ οπουδήποτε μέσα στον κόσμο. Μόλις δημιουργήσαμε ένα wombat (σε ορολογία της Java ένα αντικείμενο) και το τοποθετήσαμε στον κόσμο. Τα Wombats τρώνε φύλλα, οπότε ας προσθέσουμε και μερικά φύλλα στον κόσμο. Όπως και πριν, με δεξί κλικ στην κλάση Leaf, επιλέγουμε 'new Leaf()' και το τοποθετούμε στον κόσμο. Αν θέλουμε να τοποθετήσουμε περισσότερα αντικείμενα (της ίδιας κλάσης) μπορούμε έχοντας επιλέξει την κλάση (με αριστερό κλικ πάνω της το μαύρο περίγραμμα γίνεται πιο έντονο) και κρατώντας πατημένο το πλήκτρο Shift με κάθε αριστερό κλικ μέσα στον κόσμο προσθέτουμε και από ένα αντικείμενο. Αν θέλουμε να αφαιρέσουμε ένα αντικείμενο από τον κόσμο, μπορούμε να το κάνουμε με την επιλογή που εμφανίζεται με δεξί κλικ πάνω στο αντικείμενο αυτό. Ενεργοποίηση των αντικειμένων Πατώντας το κουμπί 'Act' από τα εργαλεία εκτέλεσης, κάθε αντικείμενο ενεργοποιείται και κάνει ότι έχει προγραμματιστεί για να κάνει. Στο παράδειγμά μας, τα φύλλα είναι προγραμματισμένα να μην κάνουν τίποτα, ενώ τα wombats είναι προγραμματισμένα να κινούνται με τη φορά που είναι τοποθετημένα. Αν τοποθετήσουμε δύο wombats στον κόσμο και επιλέξουμε Act θα κινηθούν και τα δύο. Εργαστήριο Αντικειμενοστραφούς προγραμματισμού: Εισαγωγή στην πλαφόρμα Greenfoot [7]

8 Στα wombats όπως είπαμε αρέσει να τρώνε φύλλα, οπότε αν βρουν κάποιο φύλλο στο δρόμο τους, θα το φάνε. Αν τοποθετήσουμε κάποια φύλλα μπροστά τους, αφού βρεθούν στο ίδιο τετράγωνο, στο επόμενο Act τα φύλλα θα έχουν εξαφανιστεί. Εργαστήριο Αντικειμενοστραφούς προγραμματισμού: Εισαγωγή στην πλαφόρμα Greenfoot [8]

9 Εκτέλεση σεναρίου Πατώντας το κουμπί Run, γίνεται εκτέλεση του σεναρίου. Αυτό είναι ισοδύναμο με την διαρκή εκτέλεση της εντολής Act. Παρατηρούμε πως μετά την εκτέλεση του Run το κουμπί αλλάζει σε Pause. Αν το πατήσουμε, οτιδήποτε είναι ενεργό σταματάει. Με τον ρυθμιστή δίπλα από τα κουμπιά εκτέλεσης μπορούμε να καθορίσουμε την ταχύτητα εκτέλεσης του σεναρίου. Εργαστήριο Αντικειμενοστραφούς προγραμματισμού: Εισαγωγή στην πλαφόρμα Greenfoot [9]

10 Άμεση εκτέλεση μεθόδων Εάν αντί για εκτέλεση ολόκληρου του σεναρίου, μπορούμε απλά να καλέσουμε μεθόδους. Μία μέθοδος είναι μια μοναδική πράξη που ένα αντικείμενο μπορεί να εκτελέσει. Με δεξί κλικ πάνω σε ένα αντικείμενο (και χωρίς να εκτελείται το σενάριο) μπορούμε να δούμε τις διαθέσιμες μεθόδους που σχετίζονται με αυτό και να επιλέξουμε οποιαδήποτε από αυτές. Μπορούμε να επιλέξουμε μια μέθοδο που θα ζητάει από το αντικείμενο να εκτελέσει μια πράξη, όπως για παράδειγμα να στρίψει αριστερά: turnleft() ή απλά να κινηθεί κατά μία θέση: move(). Κάποιες άλλες μέθοδοι απλά επιστρέφουν μια απάντηση σε ερώτηση που κάνουμε. Η μέθοδος getleaveseaten(), για παράδειγμα, μας επιστρέφει τον αριθμό των φύλλων που το wombat έχει φάει μέχρι στιγμής. Βλέπουμε επίσης πως υπάρχει και η μέθοδος act(). Αυτή είναι η μέθοδος που καλείται κάθε φορά που πατάμε το αντίστοιχο κουμπί. Εδώ έχουμε την επιλογή της κλήσης μόνο για ένα αντικείμενο, αντί για όλα στον κόσμο. Δημιουργία ενός νέου κόσμου Αν έχουμε πολλά αντικείμενα στον κόσμο που δεν τα χρειαζόμαστε και θέλουμε να ξεκινήσουμε από την αρχή, ένας εύκολος τρόπος είναι να καταργήσουμε τον κόσμο αυτό και να δημιουργήσουμε έναν νέο. Αυτό γίνεται με την επιλογή του κουμπιού Reset από τα εργαλεία εκτέλεσης. Ο παλιός κόσμος συμπεριλαμβανομένων των αντικειμένων που υπήρχαν παύει να υπάρχει και δημιουργείται ένας νέος κενός κόσμος. Αξίζει να σημειώσουμε πως μπορούμε να έχουμε μόνο έναν κόσμο ανά σενάριο. Κλήση μεθόδων του κόσμου Όπως είδαμε κάθε αντικείμενο στον κόσμο έχει και κάποιες μεθόδους που μπορούμε να καλέσουμε από το αναδυόμενο μενού που εμφανίζεται με δεξί κλικ σε αυτό. Αντίστοιχα και ο ίδιος ο κόσμος έχει μεθόδους που μπορούμε να καλέσουμε από αναδυόμενο μενού. Με δεξί κλικ σε κάποια κενή περιοχή (κάπου όπου δεν υπάρχει αντικείμενο) ή στην γκρι περιοχή δίπλα από τον κόσμο, μπορούμε να δούμε τις επιλογές που έχουμε. Εργαστήριο Αντικειμενοστραφούς προγραμματισμού: Εισαγωγή στην πλαφόρμα Greenfoot [10]

11 Μία από τις επιλογές αυτές είναι η populate(). Με την κλήση της μεθόδου αυτής δημιουργούνται διάφορα φύλλα και wombats και τοποθετούνται στον κόσμο. Μπορούμε στη συνέχεια να εκτελέσουμε το σενάριο. Μία άλλη μέθοδος είναι η 'randomleaves(int howmany)'. Με τη μέθοδο αυτή τοποθετούνται ορισμένα φύλλα σε τυχαίες θέσεις στον κόσμο. Παρατηρούμε πως μετά το όνομα της μεθόδου και μέσα στις παρενθέσεις έχουμε την παράμετρο int howmany, που σημαίνει πως πρέπει να συμπεριλάβουμε κάποια επιπλέον πληροφορία με την κλήση της μεθόδου αυτής. Ο όρος int δηλώνει πως ένας ακέραιος αριθμός πρέπει να δηλωθεί και ο όρος howmany μας προτρέπει να δηλώσουμε τον αριθμό των φύλλων που θέλουμε να δημιουργηθούν και τοποθετηθούν. Υπάρχει περίπτωση, αν μετρήσουμε τα φύλλα που βλέπουμε στον κόσμο μετά την κλήση της μεθόδου αυτής, να δούμε πως υπάρχουν λιγότερα από αυτά που θέσαμε. Κάτι τέτοιο μπορεί να συμβεί σε περίπτωση που κάποια φύλλα τοποθετούνται στην ίδια θέση, οπότε δεν μπορούμε τα ξεχωρίσουμε. Αφού εξοικειωθούμε με το περιβάλλον του Greenfoot μπορούμε να προχωρήσουμε στο μέρος του προγραμματισμού. Εργαστήριο Αντικειμενοστραφούς προγραμματισμού: Εισαγωγή στην πλαφόρμα Greenfoot [11]

12 Aξίζει να παραθέσουμε μια σύντομη σημείωση σχετικά με τα σύμβολα οριοθέτησης (στην wikipedia υπάρχει ένα αρκετά περιεκτικό άρθρο).υπάρχουν τρία είδη συμβόλων οριοθέτησης στην Java: Οι στρογγυλές παρενθέσεις στην Java, χρησιμοποιούνται σε μαθηματικές εκφράσεις, και για να περιβάλλουν τις παραμέτρους στις κλήσεις μεθόδων. Οι αγκύλες στην Java χρησιμοποιούνται για τα διανύσματα. Τα άγκιστρα στην Java χρησιμοποιούνται για να πλαισιώσουν μπλοκ κώδικα, όπως οι μέθοδοι ή τα περιεχόμενα μιας κλάσης. Εργαστήριο Αντικειμενοστραφούς προγραμματισμού: Εισαγωγή στην πλαφόρμα Greenfoot [12]

13 Οδηγός 2: Κίνηση και κλειδιά ελέγχου Στον οδηγό αυτό, θα δούμε πώς μπορούμε να έχουμε κίνηση στο Greenfoot, καθώς και το πώς μπορούμε να την ελέγξουμε με το πληκτρολόγιο. Το σενάριο Crabs Κατεβάζουμε το modern-crab.zip αρχείο και το αποσυμπιέζουμε κάπου στον υπολογιστή μας. Στη συνέχεια ανοίγουμε το σενάριο στην τοποθεσία αυτή πατώντας πάνω στο αρχείο project (αυτό με το εικονίδιο του Greenfoot), το μεταγλωττίζουμε (compile) και βλέπουμε έναν άδειο κόσμο. Με δεξί κλικ στην κλάση crab επιλέγουμε new Crab() και τοποθετούμε με αριστερό κλικ το νέο καβούρι οπουδήποτε στον κόσμο. Στη συνέχεια επιλέγουμε την εκτέλεση του σεναρίου(run) και παρατηρούμε πως δεν έχουμε καμία κίνηση. Για να δούμε τι ακριβώς θα έπρεπε να κάνει το καβούρι, με δεξί κλικ στην κλάση Crab επιλέγουμε Open editor και βλέπουμε τον κώδικα Java για το αντικείμενο Crab. Όπως βλέπουμε στα άγκιστρα κάτω από την γραμμή public void act() δεν υπάρχει τίποτα. Εργαστήριο Αντικειμενοστραφούς προγραμματισμού: Εισαγωγή στην πλαφόρμα Greenfoot [13]

14 Αν θέλουμε να προσθέσουμε κίνηση στο αντικείμενό μας πρέπει να προσθέσουμε τη εντολή move: Χρειάζεται προσοχή έτσι ώστε να γράψουμε ακριβώς ότι βλέπουμε στην εικόνα, δηλαδή την εντολή move ακολουθούμενη από παρενθέσεις που περιέχουν τον αριθμό 4 ακολουθούμενες από το ελληνικό ερωτηματικό (;). Συνήθη λάθη είναι η χρήση κεφαλαίου M στο move (στη Java τα κεφαλαία και τα μικρά γράμματα παίζουν ρόλο), η έλλειψη του ελληνικού ερωτηματικού, η χρήση λάθος συμβόλων οριοθέτησης (παρένθεση) ή η από λάθος αφαίρεση των αγκίστρων {} πριν και μετά τον κώδικα. Αν λάβετε κάποιο μήνυμα σφάλματος κατά τη διάρκεια του οδηγού αυτού, ελέγξτε αν έχετε κάνει κάποιο από αυτά τα λάθη. Αφού γράψουμε τον κώδικα, πατάμε το κουμπί Compile στην κεντρική διεπαφή του Greenfoot (ή επάνω αριστερά στο παράθυρο του επεξεργαστή του κώδικα μας), τοποθετούμε ένα καβούρι (new Crab()) και επιλέγουμε την εκτέλεση του σεναρίου (Run). Αυτή τη φορά το καβούρι κινείται κατά μήκος του πλαισίου του κόσμου, έως ότου φτάσει στο τέλος του πλαισίου και σταματήσει. Εργαστήριο Αντικειμενοστραφούς προγραμματισμού: Εισαγωγή στην πλαφόρμα Greenfoot [14]

15 Στην πραγματικότητα το καβούρι δεν σταματάει, προσπαθεί να συνεχίσει να κινείται αλλά το Greenfoot δεν το αφήνει να βγει έξω από τον κόσμο. Μπορούμε επίσης να αλλάξουμε την τιμή 4 στον κώδικα που γράψαμε προηγουμένως με κάποια άλλη, ώστε να διαμορφώσουμε την ταχύτητα κίνησης. Μεγαλύτερη τιμή θα δώσει μεγαλύτερη ταχύτητα ενώ μικρότερη τιμή, μικρότερη ταχύτητα. Μπορούμε επίσης να δώσουμε και αρνητική τιμή (τι θα αλλάξει στην κίνηση σε αυτή την περίπτωση;). Αν θέλουμε το καβούρι να μην κινείται μόνο σε μια ευθεία, μπορούμε να προσθέσουμε και την εντολή turn(n), ώστε να στρίβει κατά κάποιες μοίρες. Σε αυτή την περίπτωση βλέπουμε πως το καβούρι τώρα ακολουθεί μια κυκλική τροχιά και ακόμα κι αν βρεθεί σε κάποιο από τα όρια του κόσμου, κάποια στιγμή θα στρίψει και θα επιστρέψει εντός των ορίων. Μπορούμε με αλλαγή της παραμέτρου της στροφής να αλλάξουμε την ακτίνα του κύκλου σε μεγαλύτερη ή μικρότερη (Αν αλλάξουμε και την παράμετρο της μετακίνησης, τι αλλάζει στην τροχιά της κίνησης και γιατί;). Ας προσθέσουμε στον κώδικά μας λίγη διαδραστικότητα. Μπορούμε να πούμε στο καβούρι να στρίβει μόνο αν πιέσουμε το πλήκτρο ή του πληκτρολογίου. Χρησιμοποιούμε προκαθορισμένες μεθόδους του Greenfoot για να ελέγχουμε εάν ένα πλήκτρο είναι πατημένο. Ανάμεσα στα εισαγωγικά είναι το όνομα του πλήκτρου, "left" είναι το πλήκτρο με το αριστερό βελάκι, "right" είναι το πλήκτρο με το δεξί. Εάν θέλουμε κάτι σαν "a" ή "d", απλά Εργαστήριο Αντικειμενοστραφούς προγραμματισμού: Εισαγωγή στην πλαφόρμα Greenfoot [15]

16 χρησιμοποιούμε αυτά τα γράμματα αντί για right και left στον παραπάνω κώδικα. O κώδικας μας λέει: αν τα πλήκτρα είναι πατημένα, στρίψε κατά ένα συγκεκριμένο αριθμό. Αν βάλουμε πολλά καβούρια στον κόσμο, θα δούμε ότι πατώντας τα πλήκτρα ελέγχου όλα μαζί ταυτόχρονα με σωστό συγχρονισμό, θα υπάρξει υπερφόρτωση: όλα τα καβούρια εκτελούν τον ίδιο κώδικα, έτσι ώστε αν πατήσουμε το αριστερό πλήκτρο, όλα τους θα δουν ότι το αριστερό πλήκτρο είναι πατημένο, και όλα θα κινηθούν αναλόγως. Τι θα συμβεί αν κρατήσουμε πατημένο και το αριστερό και το δεξί την ίδια στιγμή; Δοκιμάστε το και ανακαλύψτε - στη συνέχεια εξετάστε τον κώδικα και δείτε αν μπορείτε να ανακαλύψετε το λόγο που συμβαίνει αυτό. Εργαστήριο Αντικειμενοστραφούς προγραμματισμού: Εισαγωγή στην πλαφόρμα Greenfoot [16]

17 Οδηγός 3: Εντοπισμός και αφαίρεση των Actors και δημιουργία μεθόδων Στον οδηγό αυτό, θα εξετάσουμε πώς μπορούμε να διαπιστώσουμε ότι δύο αντικείμενα του κόσμου έχουν έρθει σε επαφή και κατά συνέπεια να αφαιρέσουμε το ένα από αυτά. Επίσης θα δούμε πώς να βελτιώσουμε τον κώδικά μας χρησιμοποιώντας μεθόδους. Τρώγοντας σκουλήκια Συνεχίζοντας από προηγούμενο μέρος, όπου είχαμε τα καβούρια να κινούνται στο εσωτερικό του κόσμου μας, κάτω από τον έλεγχό μας. Θα προσθέσουμε τώρα και μερικά σκουλήκια για να τρώνε τα καβούρια. Το σκουλήκι θα είναι κι αυτό ένας Actor, οπότε για να φτιάξουμε την νέα κλάση worm με δεξί κλικ στην κλάση Actor, επιλέγουμε New subclass. Εισάγουμε το όνομα της νέας κλάσης Worm σημειώστε πως χρησιμοποιούμε το κεφαλαίο γράμμα W. Πρόκειται για μια σύμβαση στην Java να χρησιμοποιούμε κεφαλαία για το πρώτο γράμμα του ονόματος μιας κλάσης. Για εικόνα επιλέγουμε το αρχείο worm.png και πατάμε ok. Εργαστήριο Αντικειμενοστραφούς προγραμματισμού: Εισαγωγή στην πλαφόρμα Greenfoot [17]

18 Η νέα μας κλάση δεν θα έχει καθόλου κώδικα να τρέξει, όπως και η κλάση crab όταν ξεκινήσαμε. Θα την αφήσουμε ως έχει, αφού δεν χρειαζόμαστε να κάνουν κάτι τα αντικείμενα της κλάσης αυτής. Αυτό που θα διαμορφώσουμε είναι η κλάση crab, ώστε κάθε φορά που κάποιο καβούρι περάσει πάνω από ένα σκουλήκι, να το τρώει. Ανοίγουμε λοιπόν το αρχείο της κλάσης crab που μέχρι στιγμής είναι όπως παρακάτω: Στο τέλος της μεθόδου act(), θα πρέπει να δημιουργήσουμε ένα αντικείμενο της κλάσης Worm και να προσθέσουμε, κατόπιν, μια εντολή που θα ελέγχει αν ένα καβούρι ακουμπάει το σκουλήκι που δημιουργήσαμε. Θα χρησιμοποιήσουμε την μέθοδο getoneobjectatoffset. Η μέθοδος αυτή δέχεται τρεις παραμέτρους. Οι δύο πρώτες εκφράζουν την οριζόντια (Χ) και κάθετη (Υ) απόκλιση (απόσταση) από την τρέχουσα θέση του αντικειμένου μας. Θέλουμε να ξέρουμε τι βρίσκεται στην ίδια θέση με εμάς οπότε θα θέσουμε στις παραμέτρους αυτές την τιμή 0 (καμία απόσταση). Η τρίτη παράμετρος μας επιτρέπει να δηλώσουμε ποια κλάση μας ενδιαφέρει για την σύγκριση. Θα χρησιμοποιήσουμε την κλάση worm για την ενέργεια αυτή μιας και μας ενδιαφέρει να μελετήσουμε αν το καβούρι (αντικείμενο) ακουμπάει κάποιο σκουλήκι (worm). Εργαστήριο Αντικειμενοστραφούς προγραμματισμού: Εισαγωγή στην πλαφόρμα Greenfoot [18]

19 Πρέπει να σημειώσουμε πως δεν καλούμε απλά την μέθοδο, αλλά αποθηκεύουμε και το αποτέλεσμα της κλήσης της στην αριστερή πλευρά της εντολής (worm). Η μέθοδος αυτή επιστρέφει το αντικείμενο (worm στην περίπτωση μας) που βρίσκεται στην απόσταση που έχουμε εισάγει, αν αυτό υπάρχει. Οπότε στην μεταβλητή worm, που δηλώσαμε στην προηγούμενη γραμμή, θα εκχωρηθεί το αποτέλεσμα της μεθόδου. Αναλόγως την τιμή της μεταβλητής μας, μπορούμε να εξετάσουμε αν όντως υπάρχει κάποιο αντικείμενο στην ίδια θέση με εμάς. Αν δεν υπάρχει, η μεταβλητή μας θα έχει την ειδική τιμή null, οπότε μπορούμε να αφαιρέσουμε το σκουλήκι, μόνο εάν η μεταβλητή είναι διαφορετική από null, συνεπώς και θα πρέπει να γίνει ο αντίστοιχος έλεγχος. Εργαστήριο Αντικειμενοστραφούς προγραμματισμού: Εισαγωγή στην πλαφόρμα Greenfoot [19]

20 Ο τελεστής!= είναι ο τελεστής διάφορο από στην Java. Αυτό σημαίνει πως ο κώδικας θα εκτελεστεί μόνο αν η μεταβλητή worm δεν έχει την τιμή null. Ο κώδικας που εισάγαμε μέσα στον έλεγχο δουλεύει ως εξής: Πρώτα ορίζουμε μια μεταβλητή (με το όνομα world) ώστε να μπορέσουμε να αλληλεπιδράσουμε με τον κόσμο μας και να του ζητήσουμε, στη συνέχεια, να αφαιρέσει ένα αντικείμενο (δηλαδή το worm). Έπειτα, αρχικοποιούμε αυτήν την μεταβλητή με τον συγκεκριμένο κόσμο που έχουμε δημιουργήσει με τη βοήθεια της εντολής getworld(). Τέλος, αφαιρούμε το σκουλήκι από τον κόσμο με την μέθοδο removeobject(). Refactoring Η αλλιώς ανακατασκευή του κώδικα μας Πριν συνεχίσουμε θα πρέπει να κάνουμε μια αλλαγή στον κώδικα. Αυτό είναι κάτι που είναι γνωστό ως refactoring: δηλαδή πρόκειται για αλλαγή στον κώδικα χωρίς να αλλάξει, όμως, η συμπεριφορά του. Στη μορφή που βρίσκεται τώρα, η μέθοδος act() για το Καβούρι έχει δύο διαφορετικές συμπεριφορές μέσα της: οι μισές συμπεριφορές έχουν να κάνουν με την κίνηση μέσα στον κόσμο, και οι άλλες μισές έχουν να κάνουν με το φάγωμα των σκουληκιών. Θα ήταν πιο ευδιάκριτο αν τις ονομάζαμε και τις χωρίζαμε, για να αποφύγουμε πιθανή σύγχυση στο μέλλον. Αυτό μπορούμε να το καταφέρουμε με τη δημιουργία διαφορετικών μεθόδων για κάθε συμπεριφορά. Στην πραγματικότητα έχουμε ήδη δει πώς γράφονται οι μέθοδοι: η act() είναι και αυτή μια μέθοδος. Εργαστήριο Αντικειμενοστραφούς προγραμματισμού: Εισαγωγή στην πλαφόρμα Greenfoot [20]

21 Και οι δύο νέες μέθοδοι δεν απαιτούν παραμέτρους και δεν επιστρέφουν καμία τιμή, άρα μπορούν να δηλώνονται ακριβώς με τον ίδιο τρόπο όπως και η act() ; Ο διαμορφωμένος κώδικάς μας φαίνεται παρακάτω: Αν συγκρίνουμε τις δύο εκδόσεις θα δούμε πως δεν έχουμε αλλάξει ή αφαιρέσει καθόλου από τον υπάρχοντα κώδικα. Μεταφέραμε το πρώτο μισό σε μια νέα μέθοδο moveandturn(), και το δεύτερο μισό σε μια άλλη eat(). Στη συνέχεια αντικαταστήσαμε το περιεχόμενο της μεθόδου act() με κλήσεις των δύο νέων αυτών μεθόδων έτσι ώστε να διατηρηθεί η ίδια συμπεριφορά στο πρόγραμμα μας. Εργαστήριο Αντικειμενοστραφούς προγραμματισμού: Εισαγωγή στην πλαφόρμα Greenfoot [21]

22 Οδηγός 4: Αποθήκευση του κόσμου, αναπαραγωγή και καταγραφή ήχου Στον οδηγό αυτό θα δούμε πώς μπορούμε να αρχικοποιήσουμε τον κόσμο μας με αντικείμενα χωρίς να χρειάζεται να τα τοποθετήσουμε εμείς, καθώς και πώς μπορούμε να αναπαράγουμε και αποθηκεύσουμε ήχους. Αποθήκευση του κόσμου Μέχρι τώρα, κάθε φορά που μεταγλωττίζουμε τον κώδικα, πρέπει στη συνέχεια να προσθέσουμε μόνοι μας τα αντικείμενα που θέλουμε μέσα στον κόσμο. Με την προσθήκη, όμως, λίγο ακόμα κώδικα, μπορούμε να επιτύχουμε να εισάγονται αυτόματα κάποια αντικείμενα (π.χ. ένα καβούρι και μερικά σκουλήκια), μετά από κάθε μεταγλώττιση του προγράμματος μας, κατευθείαν από το Greenfoot για εμάς! Για να το επιτύχουμε αυτό, επιλέγουμε Reset και στη συνέχεια προσθέτουμε τα αντικείμενα που θέλουμε να δημιουργούνται στον κόσμο μας. Πριν πατήσουμε Run, με δεξί κλικ στον κόσμο επιλέγουμε Save the World. Με αυτή την επιλογή, προσθέσαμε λίγο κώδικα στην κλάση CrabWorld, έτσι ώστε όποτε επιλέξουμε Reset ή να κάνουμε κάποια μεταγλώττιση, να τοποθετούνται πάντα τα αντικείμενα που έχουμε βάλει στο σενάριο αυτό, στις θέσεις που επιλέξαμε. Δεν θα εμβαθύνουμε στον κώδικα αυτό τώρα, αλλά μπορείτε να τον δείτε στο παράθυρο που αναδύεται μετά την επιλογή Save the World. Αν θέλουμε να επιστρέψουμε στην αρχική κατάσταση, χωρίς την αυτόματη αρχική προσθήκη αντικειμένων στον κόσμο, θα έπρεπε να αφαιρέσουμε από την κλάση CrabWorld τον κώδικα αυτό. Εργαστήριο Αντικειμενοστραφούς προγραμματισμού: Εισαγωγή στην πλαφόρμα Greenfoot [22]

23 Για να μπορέσετε να το καταλάβετε καλύτερα, ανοίξτε στον editor τον κώδικα της κλάσης πριν πατήσετε Save the World, μετά δημιουργήστε την αρχική εικόνα που επιθυμείτε και μελετήστε τον κώδικα (αφού πατήσετε Save the World ). Ό,τι έχει προστεθεί αφορά την αρχικοποίηση του κόσμου. Αναπαραγωγή και αποθήκευση ήχων Μπορούμε να προσθέσουμε ήχο στο σενάριό μας. Υπάρχει ήδη διαθέσιμο ένα αρχείο ήχου eating.wav στο σενάριο που κατεβάσαμε στην αρχή. Μπορούμε να παίζουμε αυτόν τον ήχο κάθε φορά που κάποιο καβούρι τρώει ένα σκουλήκι, προσθέτοντας μια μόνο γραμμή κώδικα στην κλάση crab που καλεί την μέθοδο Greenfoot.playSound αφού αφαιρέσουμε το σκουλήκι από τον κόσμο: Μπορούμε επίσης εάν διαθέτουμε μικρόφωνο στον υπολογιστή μας, να ηχογραφήσουμε τους δικούς μας ήχους. Στο μενού Controls υπάρχει η επιλογή εμφάνισης του παραθύρου ηχογράφησης. Αφού το επιλέξουμε πατάμε το κουμπί Record, μιλάμε ή κάνουμε τον ήχο που θέλουμε και μετά πατάμε stop. Για να αφαιρέσουμε το μέρος του ήχου στην αρχή (ή και στο τέλος) όπου υπάρχει ησυχία, επιλέγουμε με αριστερό κλικ την αρχή από το μέρος που θέλουμε να κρατήσουμε και σέρνουμε την επιλογή μας μέχρι το τέλος του. Στη συνέχεια επιλέγουμε Trim to selection. Αφού καταλήξουμε στον ήχο που θέλουμε να χρησιμοποιήσουμε και κρατήσουμε δίνουμε ένα όνομα στο αρχείο που θα σώσουμε (π.χ. myeating) και επιλέγουμε save. Αφού κλείσουμε το παράθυρο της ηχογράφησης, επιστρέφουμε στον κώδικα και αντικαθιστούμε στην γραμμή που υπάρχει το eating.wav σε myeating.wav (ή όποιο όνομα δώσατε στο αρχείο). Τώρα κάθε φορά που θα ακούγεται ο ήχος θα είναι από το αρχείο που προσθέσαμε εμείς. Εργαστήριο Αντικειμενοστραφούς προγραμματισμού: Εισαγωγή στην πλαφόρμα Greenfoot [23]

24 Οδηγός 5: Προσθήκη τυχαία κινούμενου εχθρού Στο τέλος του προηγούμενου οδηγού είχαμε καταλήξει στο σενάριο όπου ένα καβούρι που μπορούμε να ελέγξουμε, κινείται κυκλικά και τρώει σκουλήκια. Αν και είναι λίγο δύσκολο να ελέγξουμε την κίνηση του καβουριού, το παιχνίδι είναι αρκετά εύκολο. Είναι καιρός να το δυσκολέψουμε λίγο προσθέτοντας έναν εχθρό: έναν αστακό! Ας ξεκινήσουμε προσθέτοντας έναν αστακό που κινείται σε μία ευθεία γραμμή και τρώει καβούρια. Μπορούμε να το κάνουμε με κώδικα που έχουμε ήδη χρησιμοποιήσει προηγουμένως. Αρχικά δημιουργούμε την κλάση Lobster κάνοντας δεξί κλικ στην κλάση Actor=> new subclass και δίνοντας στην καινούργια κλάση το όνομα Lobster. Η εικόνα του αστακού βρίσκεται στη λίστα με τις εικόνες στα αριστερά. Έχοντας δημιουργήσει την κλάση Lobster, μπορούμε να περάσουμε τον απαραίτητο κώδικα για την κίνηση και το φάγωμα του καβουριού. Όλα τα βήματα αυτά έχουν γίνει στους προηγούμενους οδηγούς, οπότε δε παραθέτουμε κάποια εικόνα ή κάποιο κώδικα. Δοκιμάστε και αν δεν τα καταφέρετε μπορείτε να δείτε τον κώδικα εδώ. Μπορούμε να ελέγξουμε ότι ο αστακός συμπεριφέρεται όπως τον έχουμε προγραμματίσει, τοποθετώντας έναν στα αριστερά ενός καβουριού, ξεκινώντας την εκτέλεση (Run) και αφήνοντας και τους δύο να κινούνται στο δεξί μέρος του κόσμου όπου ο αστακός θα φάει τελικά το καβούρι. Όλα καλά, αλλά ο αστακός μας δεν είναι και πολύ έξυπνος, αφού είναι εύκολο να τον αποφύγουμε κινούμενοι κυκλικά δεξιά ή αριστερά με τα αντίστοιχα πλήκτρα. Επίσης, μόλις ο αστακός φτάσει στη δεξιά άκρη του κόσμου, σταματάει, όπως έκανε και το καβούρι σε προηγούμενο οδηγό. Ας δυσκολέψουμε λίγο το παιχνίδι, εισάγοντας λίγη τυχαιότητα στην κίνηση του αστακού. Το Greenfoot μας παρέχει μία συνάρτηση Greenfoot.getRandomNumber η οποία μας επιστρέφει έναν τυχαίο αριθμό. Μια πρώτη δοκιμή στη συνάρτηση turn, όπου παράγουμε έναν τυχαίο αριθμό σαν όρισμα της και επιτυγχάνουμε τυχαία στροφή περίπου ανά frame είναι η παρακάτω: Με τον κώδικα αυτό έχουμε τυχαία στροφή σε κάθε frame κατά γωνία ανάμεσα σε 0 (συμπεριλαμβανομένου του 0) και 90 (χωρίς να συμπεριλαμβάνεται το 90) μοίρες (0 φ < 90). Δοκιμάζοντάς τον κώδικα μας παρατηρούμε πως ο εχθρός που δημιουργήσαμε δεν είναι και πολύ απειλητικός: ο αστακός περιστρέφεται ως επί το πλείστον σε ένα σημείο και γυρίζει πάντα προς τα δεξιά. Ας διορθώσουμε αυτά τα προβλήματα ένα-ένα, ξεκινώντας με την περιστροφή γύρω από ένα σημείο. Μέχρι στιγμής, ο αστακός μας κινείται σε κάθε frame, κάτι που τον κάνει να περιστρέφεται και όχι να περιπλανιέται. Υπάρχουν διάφοροι τρόποι, με τους οποίους θα μπορούσε να περιστρέφεται λιγότερο Εργαστήριο Αντικειμενοστραφούς προγραμματισμού: Εισαγωγή στην πλαφόρμα Greenfoot [24]

25 συχνά. Μία λύση είναι να χρησιμοποιήσουμε μια μεταβλητή μετρητή η οποία θα καταγράφει τον χρόνο που πέρασε από την προηγούμενη περιστροφή, και να γίνεται στροφή για παράδειγμα κάθε 10 frames. Ένας άλλος τρόπος είναι να χρησιμοποιήσουμε μια γεννήτρια τυχαίων αριθμών για να γυρίζει τυχαία, με μια ορισμένη συχνότητα (π.χ. κάθε 10 καρέ). Ας δούμε την χρήση της γεννήτριας τυχαίων αριθμών, για να κάνουμε ένα λιγότερο προβλέψιμο αστακό. Ας πούμε ότι ο αστακός έχει 10% πιθανότητα να περιστρέφεται ανά frame. Μπορούμε να το προγραμματίσουμε αυτό, συγκρίνοντας το Greenfoot.getRandomNumber(100) με ένα δεδομένο ποσοστό. Για το παράδειγμα μας, αφού το ποσοστό είναι 10%, θα συγκρίνουμε το Greenfoot.getRandomNumber(100) με το 10: Προσπαθήστε να σκεφτείτε πως δουλεύει ο παραπάνω κώδικας και, ιδιαίτερα, γιατί χρησιμοποιούμε το σύμβολο < αντί για <=. Θα μπορούσαμε να το υλοποιήσουμε αυτό με διαφορετικό τρόπο; Για παράδειγμα χρησιμοποιώντας Greenfoot.getRandomNumber(50) ή Greenfoot.getRandomNumber(10); Τι γίνεται με: Greenfoot.getRandomNumber(5); Ο παραπάνω κώδικας μας θα κάνει τον αστακό μας να γυρίζει (κατά μέσο όρο) κάθε 10 καρέ. Αν το μεταγλωττίσουμε, θα δούμε πως ο αστακός κινείται κυρίως σε μια ευθεία, περιστασιακά στρίβοντας δεξιά. Αυτό είναι αποδεκτό, και μας φέρνει πίσω στο άλλο πρόβλημά μας: ο αστακός γυρίζει πάντα δεξιά. Γνωρίζουμε από το καβούρι μας ότι ο τρόπος για να στρίψει αριστερά είναι να χρησιμοποιήσουμε έναν αρνητικό αριθμό για τη γωνία. Αν μπορούσαμε να αλλάξουμε τη στροφή του αστακού μας από την εμβέλεια 0 ο έως 90 ο στην εμβέλεια -45 ο έως 45 ο, θα έφτιαχνε το πρόβλημα μας. Υπάρχουν αρκετοί τρόποι για να επιτευχθεί αυτό, αλλά θα δούμε τον απλούστερο, κατά τη γνώμη μας: Κοιτάξτε ότι εάν αφαιρέσουμε από τον τυχαία παραγόμενο αριθμό το 45, θα καταλήξουμε με έναν αριθμό στη σωστή εμβέλεια. Ας προσαρμόσουμε λοιπόν ανάλογα τον κώδικα μας: Εργαστήριο Αντικειμενοστραφούς προγραμματισμού: Εισαγωγή στην πλαφόρμα Greenfoot [25]

26 Είναι η εμβέλεια μας σωστή για να γυρίζει ο αστακός απόλυτα συμμετρικά αυτή τη στιγμή; Αν όχι, πώς θα μπορούσαμε να το διορθώσουμε αυτό; Το μεταγλωττίζουμε, το εκτελούμε και τώρα έχουμε έναν αποτελεσματικό εχθρό που μπορεί να γυρίσει προς το μέρος μας ανά πάσα στιγμή. Βάζουμε ένα καβούρι, μερικούς αστακούς και πολλά, πολλά σκουλήκια στον κόσμο μας. Θυμηθείτε, πως μπορείτε ανά πάσα στιγμή να αποθηκεύσετε τον κόσμο αν θέλετε. Παρατηρούμε, ωστόσο, ότι υπάρχει ένα ακόμα ελάττωμα: οι αστακοί μπορεί να κολλήσουν για ένα διάστημα στις άκρες του κόσμου. Αυτό οφείλεται στο γεγονός ότι από τη στιγμή που χτύπησε την άκρη του κόσμου, θα κινηθεί μακριά από εκεί μόνο μετά από μερικές τυχαίες στροφές. Μπορούμε να επιταχύνουμε τη διαδικασία του να φεύγουν οι αστακοί από τις άκρες, προγραμματίζοντας τους να κάνουν στροφή 180 μοιρών μόλις φτάσουν στην άκρη του κόσμου. Για να ελέγξουμε αν είναι στην άκρη του κόσμου μπορούμε να κοιτάξουμε αν η συντεταγμένη Χ τους είναι κοντά στο μηδέν, ή κοντά στο πλάτος του κόσμου. Κατόπιν, χρησιμοποιούμε παρόμοια λογική για την συντεταγμένη Υ (και το ύψος του κόσμου, αυτήν την φορά). Ο κώδικας είναι παρακάτω: Με αυτό τελειώνουμε και τον οδηγό για τα καβούρια. Μπορείτε να πειραματιστείτε, προσθέτοντας νέα χαρακτηριστικά (όπως ένας δεύτερος παίχτης), ή να χρησιμοποιήσετε ότι μάθατε για να δημιουργήσετε ένα νέο σενάριο. Προσβασιμότητα ενός αντικειμένου από ένα άλλο Μια συνήθης ερώτηση που ρωτάνε οι αρχάριοι στο Greenfoot είναι: Πώς μπορώ να έχω πρόσβαση στις μεταβλητές (ή τις μεθόδους) ενός αντικειμένου/κλάσης από μία άλλη; Φυσικά η διατύπωση της ερώτησης συνήθως γίνεται διαφορετικά, αφού συνήθως οι αρχάριοι τις έννοιες μεταβλητή ή αντικείμενο δεν τις κατανοούν πλήρως. Συνεπώς, η ερώτησh για το παιχνίδι που βλέπετε στην Εργαστήριο Αντικειμενοστραφούς προγραμματισμού: Εισαγωγή στην πλαφόρμα Greenfoot [26]

27 εικόνα, μπορεί να τεθεί ως εξής: Πώς μπορώ να ενημερώνω το σκορ κάθε φορά που ένας αστεροειδής καταστρέφεται από έναν πύραυλο; Ας δούμε το παρακάτω σενάριο στο Greenfoot: tut-access-p1 (ανοίγουμε τον σύνδεσμο σε νέο παράθυρο ή νέα καρτέλα) Το σενάριο αυτό είναι ένα απλό παιχνίδι όπου, όταν πατάμε το πλήκτρο του κενού (Space bar) ένας πύραυλος πυροβολεί τους αστεροειδής που περνάνε. Επίσης, υπάρχει ένας μετρητής του σκορ, αλλά δεν λειτουργεί ακόμα. Ανοίγουμε το σενάριο από την τοποθεσία στον υπολογιστή μας όπου κατεβάσαμε το αρχείο και ξεκινάμε. Στο παράδειγμα αυτό, υπάρχουν διάφορες κλάσεις όπως Counter, Rocket και Shot. Η κλάση Counter έχει μια μέθοδο bumpcount() η οποία αυξάνει το σκορ που εμφανίζει ο μετρητής: Δεν πειράζει αν δεν καταλαβαίνετε ακόμα τον κώδικα. Το σημαντικό που πρέπει να κρατήσουμε είναι το εξής: αν καλέσουμε την μέθοδο bumpcount(), ο αριθμός που εμφανίζει ο μετρητής θα αυξηθεί κατά το ποσό που έχουμε καθορίσει κατά την κλήση της συνάρτησης (δηλαδή το amount στο παραπάνω πρόγραμμα). Στην κλάση Shot τώρα, μπορούμε να έχουμε μία μέθοδο η οποία και θα καλείται από την μέθοδο act() της ίδιας κλάσης, όποτε χτυπάμε έναν αστεροειδή: Εργαστήριο Αντικειμενοστραφούς προγραμματισμού: Εισαγωγή στην πλαφόρμα Greenfoot [27]

28 Ανοίγουμε την επεξεργαστή της κλάσης Shot (διπλό κλικ στην κλάση Shot στα δεξιά ή δεξί κλικ και Open Editor). Αν προσπαθήσουμε να καλέσουμε απλά τη μέθοδο bumpcount από την κλάση Counter, στην μεταγλώττιση λαμβάνουμε σφάλμα: Λαμβάνουμε το σφάλμα αυτό γιατί ο μεταγλωττιστής ψάχνει μόνο στην ίδια κλάση (την Shot) για την bumpcount() μέθοδο, η οποία φυσικά και δεν υπάρχει σε αυτή την κλάση. Επομένως, θα πρέπει με κάποιο τρόπο να πούμε στον μεταγλωττιστή να ψάξει για τη μέθοδο bumpcount() στην κλάση Counter. Πριν συνεχίσουμε, αφαιρούμε τον κώδικα κλήσης της μεθόδου bumpcount() από τη μέθοδο hitanasteroid() ώστε να αποφύγουμε το παραπάνω σφάλμα μεταγλώττισης. Λύση: Αποθήκευση της αναφοράς στον κόσμο σε δημιουργία του αντικειμένου Σε αυτή τη λύση, θα αποθηκεύσουμε μια αναφορά στο μετρητή του σκορ στον κόσμο, ώστε να μπορούμε να τον ανακτήσουμε από εκεί όποτε αυτό χρειαστεί. Ας δούμε τον κατασκευαστή (constructor) στην κλάση Space : Εργαστήριο Αντικειμενοστραφούς προγραμματισμού: Εισαγωγή στην πλαφόρμα Greenfoot [28]

29 Όπως βλέπετε είναι μια μέθοδος που δεν επιστρέφει κάποια τιμή και έχει το ίδιο όνομα με την κλάση. Στη συνέχεια, πρέπει να μεριμνήσουμε για δύο πράγματα: αρχικά, να δηλώσουμε ένα πεδίο όπου θα αποθηκεύσουμε την αναφορά στον μετρητή και μετά να εκχωρίσουμε τη μεταβλητή αυτή όταν δημιουργείται ο μετρητής. Αφού σιγουρευτούμε ότι ο κώδικας μεταγλωττίζεται κανονικά, παρατηρούμε ότι έχουμε προσθέσει μια δήλωση για μια μεταβλητή thecounter. Πρόκειται για μια μεταβλητή στιγμιότυπου, που σημαίνει ότι θέλουμε να κρατήσουμε την τιμή της για όσο υπάρχει ο κόσμος, γι αυτό δηλώνεται εκτός του κατασκευαστή SpaceWorld (αλλά εντός της κλάσης SpaceWorld). Τώρα προσθέτουμε μια μέθοδο στην κλάση Space που λαμβάνει την τιμή του thecounter ώστε να μπορεί αυτή να είναι προσβάσιμη από τον πύραυλο. Τώρα μπορούμε να έχουμε πρόσβαση στον κόσμο από την κλάση Shot και να καλέσουμε την μέθοδο getcounter() στον κόσμο έτσι ώστε να αποκτήσουμε μια αναφορά στον μετρητή μας. Τέλος καλούμε τη μέθοδο bumpcount() στην αναφορά του μετρητή μας. Σύμφωνα με τα παραπάνω, η μέθοδος hitanasteroid() στην κλάση Shot που περιλαμβάνει όλα τα παραπάνω, θα πρέπει να είναι: Εργαστήριο Αντικειμενοστραφούς προγραμματισμού: Εισαγωγή στην πλαφόρμα Greenfoot [29]

30 Λύσαμε λοιπόν το πρόβλημα μας. Τώρα, όταν ένα επιτυχημένο χτύπημα σε αστεροειδή πρέπει να αυξήσει τον μετρητή, θα ζητάει μία αναφορά από τον κόσμο, και μετά θα τροποποιεί τον μετρητή χρησιμοποιώντας την αναφορά αυτή. Όλη η λύση είναι διαθέσιμη εδώ: tut-access-p2 Εργαστήριο Αντικειμενοστραφούς προγραμματισμού: Εισαγωγή στην πλαφόρμα Greenfoot [30]

31 Παράρτημα Α: Λήψη, εγκατάσταση και χρήση του Greenfoot Για την λήψη του Greenfoot μεταβαίνουμε με τον περιηγητή μας στον ιστότοπο του προγράμματος και επιλέγουμε την λήψη (download). Όπως βλέπουμε και στον ιστότοπο για να μπορέσουμε να χρησιμοποιήσουμε το πρόγραμμα πρέπει να έχουμε εγκατεστημένη την έκδοση 7 ή 8 του Java Development Kit (JDK), το οποίο μπορούμε να κατεβάσουμε ξεχωριστά ή μαζί με το αρχείο εγκατάστασης του Greenfoot. Αφού εγκαταστήσουμε το JDK και κατεβάσουμε το Greenfoot, προχωράμε στη διαδικασία εγκατάστασης του τελευταίου: Κατά την πρώτη εκκίνηση του προγράμματος, εμφανίζεται ένας διάλογος, απ όπου επιλέγουμε τι θέλουμε να κάνουμε. Επειδή, αν επιλέξουμε την πρώτη (Open tutorial and tutorial scenario) ή την δεύτερη (Choose a scenario) επιλογή και ανοίξουμε ένα από τα σενάρια που βρίσκονται στον φάκελο εγκατάστασης, θα λάβουμε μια προειδοποίηση που σχετίζεται με τα δικαιώματα ανάγνωσης και γραφής στον φάκελο αυτό, όπου θα πρέπει να δημιουργήσουμε έναν νέο φάκελο για το σενάριο που θα ανοίξουμε, μπορούμε εκ των προτέρων να έχουμε ένα αντίγραφο των σεναρίων σε κάποιον άλλο φάκελο όπου έχουμε όλα τα δικαιώματα, και να ανοίγουμε τα σενάρια που θέλουμε από εκεί. Εργαστήριο Αντικειμενοστραφούς προγραμματισμού: Εισαγωγή στην πλαφόρμα Greenfoot [31]

32 Παράρτημα Β: Χρήσιμοι σύνδεσμοι Περιεχόμενο συνδέσμου Φάκελοι και αρχεία που χρησιμοποιήθηκαν στους οδηγούς του εγγράφου αυτού Ο Δικτυακός τόπος λήψης της Java Δικτυακός χώρος του Greenfoot To API του Greenfoot Σύνδεσμος Εργαστήριο Αντικειμενοστραφούς προγραμματισμού: Εισαγωγή στην πλαφόρμα Greenfoot [32]

ΕΡΓΑΣΤΗΡΙΟ 3: Προγραμματιστικά Περιβάλλοντα και το Πρώτο Πρόγραμμα C

ΕΡΓΑΣΤΗΡΙΟ 3: Προγραμματιστικά Περιβάλλοντα και το Πρώτο Πρόγραμμα C ΕΡΓΑΣΤΗΡΙΟ 3: Προγραμματιστικά Περιβάλλοντα και το Πρώτο Πρόγραμμα C Στο εργαστήριο αυτό, θα ασχοληθούμε με δύο προγραμματιστικά περιβάλλοντα της γλώσσας C, το Dev-C++, το οποίο είναι εφαρμογή που τρέχει

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

Ιδιότητες αντικειμένων, συγγραφή κώδικα, συντακτικά λάθη

Ιδιότητες αντικειμένων, συγγραφή κώδικα, συντακτικά λάθη Ιδιότητες αντικειμένων, συγγραφή κώδικα, συντακτικά λάθη Πώς βλέπουμε τις ιδιότητες των αντικειμένων που έχουμε δημιουργήσει; Ανοίγουμε το σενάριο CarWorld και δημιουργούμε μερικά αντικείμενα των κλάσεων

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

Καροτοκυνηγός. Αντικείμενα

Καροτοκυνηγός. Αντικείμενα Καροτοκυνηγός Το παιχνίδι λαμβάνει χώρα σε ένα κτήμα, όπου στη δεξιά του πλευρά του υπάρχει ένα χωράφι με καρότα τα οποία οριοθετούνται από μια λευκή ευθεία γραμμή αριστερά τους (βλ. επόμενη εικόνα). Το

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

ΕΡΓΑΣΤΗΡΙΟ 3: Προγραμματιστικά Περιβάλλοντα και το Πρώτο Πρόγραμμα C

ΕΡΓΑΣΤΗΡΙΟ 3: Προγραμματιστικά Περιβάλλοντα και το Πρώτο Πρόγραμμα C ΕΡΓΑΣΤΗΡΙΟ 3: Προγραμματιστικά Περιβάλλοντα και το Πρώτο Πρόγραμμα C Στο εργαστήριο αυτό, θα ασχοληθούμε με δύο προγραμματιστικά περιβάλλοντα για τη γλώσσα C: τον gcc μεταγλωττιστή της C σε περιβάλλον

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

ΕΡΓΑΣΤΗΡΙΟ 3: Προγραμματιστικά Περιβάλλοντα και το Πρώτο Πρόγραμμα C

ΕΡΓΑΣΤΗΡΙΟ 3: Προγραμματιστικά Περιβάλλοντα και το Πρώτο Πρόγραμμα C ΕΡΓΑΣΤΗΡΙΟ 3: Προγραμματιστικά Περιβάλλοντα και το Πρώτο Πρόγραμμα C Στο εργαστήριο αυτό, θα ασχοληθούμε με δύο προγραμματιστικά περιβάλλοντα της γλώσσας C, το Dev-C++, το οποίο είναι εφαρμογή που τρέχει

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

Μάθημα 1: Εισαγωγή. Κάνε κλικ την εντολή "κινήσου" και με το ποντίκι πατημένο μετέφερε τη στη περιοχή σεναρίων.

Μάθημα 1: Εισαγωγή. Κάνε κλικ την εντολή κινήσου και με το ποντίκι πατημένο μετέφερε τη στη περιοχή σεναρίων. Μάθημα : Εισαγωγή 2 Κάνε κλικ την εντολή "κινήσου" και με το ποντίκι πατημένο μετέφερε τη στη περιοχή σεναρίων. Κάνοντας διπλό κλικ στην εντολή μπορείς να δεις ότι η γάτα κινείται στη σκηνή. Επίλεξε την

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

21. ΦΥΛΛΟ ΕΡΓΑΣΙΑΣ 4 - ΔΗΜΙΟΥΡΓΩΝΤΑΣ ΜΕ ΤΟ BYOB BYOB. Αλγόριθμος Διαδικασία Παράμετροι

21. ΦΥΛΛΟ ΕΡΓΑΣΙΑΣ 4 - ΔΗΜΙΟΥΡΓΩΝΤΑΣ ΜΕ ΤΟ BYOB BYOB. Αλγόριθμος Διαδικασία Παράμετροι 21. ΦΥΛΛΟ ΕΡΓΑΣΙΑΣ 4 - ΔΗΜΙΟΥΡΓΩΝΤΑΣ ΜΕ ΤΟ BYOB BYOB Αλγόριθμος Διαδικασία Παράμετροι Τι είναι Αλγόριθμος; Οι οδηγίες που δίνουμε με λογική σειρά, ώστε να εκτελέσουμε μια διαδικασία ή να επιλύσουμε ένα

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

Πώς μπορούμε να δημιουργούμε γεωμετρικά σχέδια με τη Logo;

Πώς μπορούμε να δημιουργούμε γεωμετρικά σχέδια με τη Logo; Κεφάλαιο 2 Εισαγωγή Πώς μπορούμε να δημιουργούμε γεωμετρικά σχέδια με τη Logo; Η Logo είναι μία από τις πολλές γλώσσες προγραμματισμού. Κάθε γλώσσα προγραμματισμού έχει σκοπό τη δημιουργία προγραμμάτων

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

αντίστοιχο γεγονός. Όταν όντως το κουμπί

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

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

1ο μέρος 1. Φτιάχνουμε την πίστα. Μια ενδεικτική πίστα φαίνεται παρακάτω:

1ο μέρος 1. Φτιάχνουμε την πίστα. Μια ενδεικτική πίστα φαίνεται παρακάτω: 1ο μέρος 1. Φτιάχνουμε την πίστα. Μια ενδεικτική πίστα φαίνεται παρακάτω: Εικόνα 1 Για να φτιάξουμε το τείχος επιλέγουμε καταρχήν την καρτέλα Γραφικά (κάτω δεξιά) και έπειτα το γεμάτο τετράγωνο από την

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

A7.2 Δημιουργία Απλής Γραφικής Εφαρμογής σε Περιβάλλον Scratch

A7.2 Δημιουργία Απλής Γραφικής Εφαρμογής σε Περιβάλλον Scratch A7.2 Δημιουργία Απλής Γραφικής Εφαρμογής σε Περιβάλλον Scratch Τι θα μάθουμε σήμερα: Να ενεργοποιούμε το λογισμικό Scratch Να αναγνωρίζουμε τα κύρια μέρη του περιβάλλοντος του Scratch Να δημιουργούμε/εισάγουμε/τροποποιούμε

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

Ταυτότητα εκπαιδευτικού σεναρίου

Ταυτότητα εκπαιδευτικού σεναρίου Ταυτότητα εκπαιδευτικού σεναρίου Τίτλος: Συμβάντα και ενέργειες - Το πολύχρωμο σκαθάρι Σύντομη περιγραφή: Ένα εκπαιδευτικό σενάριο για την διδασκαλία των συμβάντων και ενεργειών στον προγραμματισμό, με

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

ΒΑΣΙΚΑ ΜΑΘΗΜΑΤΑ ΝΤΟΥΛΑΚΗΣ - ΜΕΝΙΟΥΔΑΚΗΣ ΕΠΑ.Λ ΕΛ. ΒΕΝΙΖΕΛΟΥ

ΒΑΣΙΚΑ ΜΑΘΗΜΑΤΑ ΝΤΟΥΛΑΚΗΣ - ΜΕΝΙΟΥΔΑΚΗΣ ΕΠΑ.Λ ΕΛ. ΒΕΝΙΖΕΛΟΥ ΒΑΣΙΚΑ ΜΑΘΗΜΑΤΑ ΠΕΡΙΕΧΟΜΕΝΑ ΠΕΡΙΕΧΟΜΕΝΑ... 2 ΠΡΟΛΟΓΟΣ... 3 ΕΙΣΑΓΩΓΗ... 4 Η ΑΝΑΠΤΥΞΗ ΤΗΣ ΟΘΟΝΗΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ... 4 Ο ΕΚΠΑΙΔΕΥΤΗΣ ΡΟΜΠΟΤ... 5 ΤΟ ΠΑΡΑΘΥΡΟ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ... 5 ΤΑ ΚΟΥΜΠΙΑ ΚΑΙ ΤΑ ΜΠΛΟΚ...

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

Αναπαραγωγή με αρχεία ήχου

Αναπαραγωγή με αρχεία ήχου Αναπαραγωγή με αρχεία ήχου Ανοίγει η παρουσίαση και εμφανίζεται η διαφάνεια τίτλου, "Πειράματα με αρχεία ήχου". Άσκηση 1: Εισαγωγή ήχου για συνεχή αναπαραγωγή Βήμα 1: Εισαγωγή ήχου Στη διαφάνεια 1, με

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

Αγώνες αυτοκινήτου Παιχνίδι για 2 παίκτες

Αγώνες αυτοκινήτου Παιχνίδι για 2 παίκτες Αγώνες αυτοκινήτου Παιχνίδι για 2 παίκτες Άνοιξε το προγραμματιστικό περιβάλλον του Scratch 2.0. Επίλεξε το Σκηνικό. Επίλεξε την καρτέλα Υπόβαθρα. Επίλεξε το πινέλο, αύξησε το πλάτος της γραμμής του πινέλου

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

ΟΔΗΓΙΕΣ ΓΙΑ ΤΟ ΠΑΙΧΝΙΔΙ.

ΟΔΗΓΙΕΣ ΓΙΑ ΤΟ ΠΑΙΧΝΙΔΙ. ΟΔΗΓΙΕΣ ΓΙΑ ΤΟ ΠΑΙΧΝΙΔΙ. Το πρώτο πράγμα που βλέπουμε μόλις ξεκινάμε το παιχνίδι είναι μια λίστα με όλα τα διαθέσιμα βίντεο με τα οποία μπορούμε να εξασκηθούμε. Σε αυτή περιλαμβάνονται επίσης πληροφορίες

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

3 ο εργαστήριο Scratch for NinjaCoders

3 ο εργαστήριο Scratch for NinjaCoders 3 ο εργαστήριο Scratch for NinjaCoders Τίτλος εφαρμογής: Space Invaders (Διαστημικοί εισβολείς) Περιγραφή στόχων, σενάριο εφαρμογής, παρουσίαση scratch, μεταβλητές, συμβάντα, προγραμματιστικές δομές 0

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

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

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

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

Breakdance Computer Game σε Scratch.

Breakdance Computer Game σε Scratch. Breakdance Computer Game σε Scratch. Ταστίογλου Μαριάννα 1, Τραντοπούλου Μαργαρίτα 2 1 Μαθήτρια Γ Τάξης, 2 ο Γυμνάσιο Ευόσμου atas94@otenet.gr 2 Μαθήτρια Γ Τάξης, 2 ο Γυμνάσιο Ευόσμου daizy@in.gr Δασκαλάκης

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

Εισαγωγή στο περιβάλλον Code::Blocks

Εισαγωγή στο περιβάλλον Code::Blocks Εισαγωγή στο περιβάλλον Code::Blocks Στο παρόν εγχειρίδιο παρουσιάζεται η διαδικασία ανάπτυξης, μεταγλώττισης και εκτέλεσης ενός προγράμματος C στο περιβάλλον του Code::Blocks. Η διαδικασία αυτή παρουσιάζεται

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

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

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

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

Συνοπτικό εγχειρίδιο χρήσης του Microsoft Visual Studio 2010

Συνοπτικό εγχειρίδιο χρήσης του Microsoft Visual Studio 2010 Τμήμα Πληροφορικής & Επικοινωνιών Τομέας Υπολογιστικών Τεχνικών & Συστημάτων Συνοπτικό εγχειρίδιο χρήσης του Microsoft Visual Studio 2010 Ιωάννης Γεωργουδάκης - Πάρις Μαστοροκώστας Σεπτέμβριος 2011 ΠΕΡΙΕΧΟΜΕΝΑ

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

1ο Φύλλο Εργασίας. της παλέτας Ήχος. Πώς μπορούμε να εισάγουμε και να αναπαράγουμε έναν ήχο;

1ο Φύλλο Εργασίας. της παλέτας Ήχος. Πώς μπορούμε να εισάγουμε και να αναπαράγουμε έναν ήχο; 1ο Φύλλο Εργασίας της παλέτας Ήχος Πώς μπορούμε να εισάγουμε και να αναπαράγουμε έναν ήχο; Για να εισάγουμε ένα ή περισσότερα μουσικά κλιπ σε ένα αντικείμενο, επιλέγουμε από το μεσαίο παράθυρο του Scratch

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

Η-Υ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ. Εργαστήριο 1 Εισαγωγή στη C. Σοφία Μπαλτζή s.mpaltzi@di.uoa.gr

Η-Υ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ. Εργαστήριο 1 Εισαγωγή στη C. Σοφία Μπαλτζή s.mpaltzi@di.uoa.gr Η-Υ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ Εργαστήριο 1 Εισαγωγή στη C Σοφία Μπαλτζή s.mpaltzi@di.uoa.gr Διαδικαστικά Ιστοσελίδα μαθήματος: http://eclass.uoa.gr/courses/f30/ Υποχρεωτική παρακολούθηση: Παρασκευή 14:00 16:00 στην

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

Σχετική κίνηση αντικειμένων

Σχετική κίνηση αντικειμένων Σχετική κίνηση αντικειμένων Πως θα μπορούσε να κινηθεί ένας χαρακτήρας προς την έξοδο ενός λαβύρινθου; Πως θα μπορούσε το αυτοκινητάκι μας να κινείται μέσα στην πίστα; Πως θα μπορούσαμε να αναπαραστήσουμε

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

ΑΝΤΙΓΡΑΦΗ ΑΡΧΕΙΟΥ ΣΕ ΔΙΣΚΕΤΑ ΑΝΤΙΓΡΑΦΗ ΑΡΧΕΙΟΥ ΑΠΟ ΔΙΣΚΕΤΑ. Από τον κατάλογο που εμφανίζεται επιλέγω: Αποστολή προς Δισκέτα (3,5)

ΑΝΤΙΓΡΑΦΗ ΑΡΧΕΙΟΥ ΣΕ ΔΙΣΚΕΤΑ ΑΝΤΙΓΡΑΦΗ ΑΡΧΕΙΟΥ ΑΠΟ ΔΙΣΚΕΤΑ. Από τον κατάλογο που εμφανίζεται επιλέγω: Αποστολή προς Δισκέτα (3,5) ΑΝΤΙΓΡΑΦΗ ΑΡΧΕΙΟΥ ΣΕ ΔΙΣΚΕΤΑ ΑΝΤΙΓΡΑΦΗ ΑΡΧΕΙΟΥ ΑΠΟ ΔΙΣΚΕΤΑ Τοποθετώ μια δισκέτα στον οδηγό τη δισκέτας του υπολογιστή. Τοποθετώ τη δισκέτα που έχει το αρχείο μου στον οδηγό τη δισκέτας του υπολογιστή.

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

Σενάριο 13: Προγραμματίζοντας ένα Ρομπότ

Σενάριο 13: Προγραμματίζοντας ένα Ρομπότ Σενάριο 13: Προγραμματίζοντας ένα Ρομπότ Φύλλο Εργασίας Τίτλος: Προγραμματίζοντας ένα Ρομπότ Γνωστικό Αντικείμενο: Πληροφορική Διδακτική Ενότητα: Ελέγχω-Προγραμματίζω τον Υπολογιστή Τάξη: Γ Γυμνασίου Διάρκεια:

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

Το δεύτερο παιχνίδι ΤΟΥΒΛΑΚΙΑ

Το δεύτερο παιχνίδι ΤΟΥΒΛΑΚΙΑ Το δεύτερο παιχνίδι ΤΟΥΒΛΑΚΙΑ Στο παιχνίδι υπάρχουν τουβλάκια διαφόρων χρωμάτων. Σκοπός του παιχνιδιού είναι να καταστραφούν όλα τα τουβλάκια. Ο παίκτης χειρίζεται από το πληκτρολόγιο μία ρακέτα. Ένα μπαλάκι

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

Σημειώσεις στο PowerPoint

Σημειώσεις στο PowerPoint Σημειώσεις στο PowerPoint Τι είναι το PowerPoint; Το PowerPoint 2010 είναι μια οπτική και γραφική εφαρμογή που χρησιμοποιείται κυρίως για τη δημιουργία παρουσιάσεων. Με το PowerPoint, μπορείτε να δημιουργήσετε

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

Εντολές της LOGO (MicroWorlds Pro)

Εντολές της LOGO (MicroWorlds Pro) Εντολές της LOGO (MicroWorlds Pro) Εντολές εμφάνισης (εξόδου) και αριθμητικές πράξεις δείξε Εμφανίζει στην οθόνη έναν αριθμό, το αποτέλεσμα πράξεων, μια λέξη ή μια λίστα (ομάδα) λέξεων. δείξε 200 200 δείξε

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

Φύλλα εργασίας. MicroWorlds Pro. Πολυμεσικές Εφαρμογές με την χρήση της γλώσσας LOGO Στο Γυμνάσιο. Β. Χ. Χρυσοχοΐδης

Φύλλα εργασίας. MicroWorlds Pro. Πολυμεσικές Εφαρμογές με την χρήση της γλώσσας LOGO Στο Γυμνάσιο. Β. Χ. Χρυσοχοΐδης Φύλλα εργασίας MicroWorlds Pro Πολυμεσικές Εφαρμογές με την χρήση της γλώσσας LOGO Στο Γυμνάσιο Β. Χ. Χρυσοχοΐδης Πρόεδρος Συλλόγου Εκπαιδευτικών Πληροφορικής Φλώρινας 2 «Σχεδίαση και ανάπτυξη δραστηριοτήτων

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

Προγραμματισμός. Το περιβάλλον του scratch

Προγραμματισμός. Το περιβάλλον του scratch Προγραμματισμός Η τέχνη του να μπορούμε να γράφουμε τα δικά μας προγράμματα ονομάζεται προγραμματισμός. Γενικότερα ως προγραμματιστικό πρόβλημα θεωρούμε κάθε ζήτημα που τίθεται προς επίλυση, κάθε κατάσταση

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

Μέρος Α Γνωριμία με το περιβάλλον προγραμματισμού του ρομπότ OTTO

Μέρος Α Γνωριμία με το περιβάλλον προγραμματισμού του ρομπότ OTTO OTTO ROBOT Εκπαιδευτικές Δραστηριότητες Μέρος Α Γνωριμία με το περιβάλλον προγραμματισμού του ρομπότ OTTO Δραστηριότητα 1 - Γνωριμία, περιγραφή Otto Τι είναι το ρομπότ Otto; Είναι ένα αλληλεπιδραστικό

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

Μάθημα 4ο. Προγράμματα

Μάθημα 4ο. Προγράμματα Μάθημα 4ο Προγράμματα Σελίδα 47 από 106 4.1 Εγκατάσταση προγραμμάτων Όπως έχουμε πει στο πρώτο μάθημα (Σημειώσεις 1ου Μαθήματος 1.3.3.Β σελ. 12) τα προγράμματα ή αλλιώς εφαρμογές αποτελούν μέρος του λογισμικού

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

Γραφικά υπολογιστών Εργαστήριο 10 Εισαγωγή στα Sprites

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

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

ΤΟ ΠΕΡΙΒΑΛΛΟΝ ΤΗΣ. Εργαλειοθήκη Παρουσιάζετε το έργο σας Εκκινείτε τα σενάριά σας Σταματάτε όλα τα σενάρια. Οι 8 ομάδες της Παλέτας εντολών

ΤΟ ΠΕΡΙΒΑΛΛΟΝ ΤΗΣ. Εργαλειοθήκη Παρουσιάζετε το έργο σας Εκκινείτε τα σενάριά σας Σταματάτε όλα τα σενάρια. Οι 8 ομάδες της Παλέτας εντολών ΤΟ ΠΕΡΙΒΑΛΛΟΝ ΤΗΣ Οι 8 ομάδες της Παλέτας εντολών Εργαλειοθήκη Παρουσιάζετε το έργο σας Εκκινείτε τα σενάριά σας Σταματάτε όλα τα σενάρια Σκηνή Εδώ ζωντανεύει το σενάριό σας Εντολές κάθε ομάδας Αυτή είναι

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

Εισαγωγή στην επανάληψη

Εισαγωγή στην επανάληψη Εισαγωγή στην επανάληψη Στο κεφάλαιο αυτό ήρθε η ώρα να μελετήσουμε την επανάληψη στον προγραμματισμό λίγο πιο διεξοδικά! Έχετε ήδη χρησιμοποιήσει, χωρίς πολλές επεξηγήσεις, σε προηγούμενα κεφάλαια τις

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

Σχεδίαση και ανάπτυξη δραστηριοτήτων στο προγραμματιστικό περιβάλλον MicroWorlds Pro

Σχεδίαση και ανάπτυξη δραστηριοτήτων στο προγραμματιστικό περιβάλλον MicroWorlds Pro «Σχεδίαση και ανάπτυξη δραστηριοτήτων στο προγραμματιστικό περιβάλλον MicroWorlds Pro» Φύλλο Εργασίας 1 Ο μαθητής εξοικειώνεται με το περιβάλλον της Logo και του Microworlds Pro και μαθαίνει να δημιουργεί

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

Slalom Race Computer Game on Scratch

Slalom Race Computer Game on Scratch Slalom Race Computer Game on Scratch Μπογιατζή Ελισάβετ ¹, Μεταξά Παυλίνα², Νεστοροπούλου Ευσεβεία³, Μαρόγλου Ευαγγελία 4 1 boelisabet@gmail.com 2 pavlinamet2@gmail.com 3 makis.nestoro@hotmail.com 4 euaggeliam2000@gmail.com

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

ΕΝΤΟΛΕΣ. 7.1 Εισαγωγικό μέρος με επεξήγηση των Εντολών : Επεξήγηση των εντολών που θα

ΕΝΤΟΛΕΣ. 7.1 Εισαγωγικό μέρος με επεξήγηση των Εντολών : Επεξήγηση των εντολών που θα 7.1 Εισαγωγικό μέρος με επεξήγηση των Εντολών : Επεξήγηση των εντολών που θα ΕΝΤΟΛΕΣ χρησιμοποιηθούν παρακάτω στα παραδείγματα Βάζοντας την εντολή αυτή σε οποιοδήποτε αντικείμενο μπορούμε να αλλάζουμε

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

Τροποποίηση συνδυασμών κίνησης

Τροποποίηση συνδυασμών κίνησης Τροποποίηση συνδυασμών κίνησης Σε αυτήν την πρακτική εξάσκηση, θα τροποποιήσετε τους συνδυασμούς που έχουν εφαρμοστεί στην παρουσίαση της εταιρείας σας. Βήμα 1: Αλλαγή του εφέ για το κείμενο του τίτλου

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

Tank Rescue Computer Game σε Scratch

Tank Rescue Computer Game σε Scratch Tank Rescue Computer Game σε Scratch Μπέλτσος Νικόλαος 1, Παναγιωτόπουλος Ευάγγελος 2, Παπαδόπουλος Βασίλης 3, Παπουδάρης Κωνσταντίνος 4 1 sokin2@yahoo.gr 2 vaggelispan@yahoo.gr 3 papadopoulos_vasilis@yahoo.gr

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

Δημιουργία μιας εφαρμογής Java με το NetBeans

Δημιουργία μιας εφαρμογής Java με το NetBeans Δημιουργία μιας εφαρμογής Java με το NetBeans Για να δημιουργήσετε μια εφαρμογή Java πρέπει να ακολουθήσετε τα εξής βήματα : Αρχικά πρέπει να δημιουργηθεί ένα project το οποίο θα περιέχει όλα τα αρχεία

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

Πως θα κατασκευάσω το πρώτο πρόγραμμα;

Πως θα κατασκευάσω το πρώτο πρόγραμμα; Εργαστήριο Δομημένος Προγραμματισμός (C#) Τμήμα Μηχανολογίας Νικόλαος Ζ. Ζάχαρης Καθηγητής Εφαρμογών Σκοπός Να γίνει εξοικείωση το μαθητών με τον ΗΥ και το λειτουργικό σύστημα. - Επίδειξη του My Computer

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

Εργαστήριο «Τεχνολογία Πολιτισμικού Λογισμικού» Ενότητα. Επεξεργασία πινάκων

Εργαστήριο «Τεχνολογία Πολιτισμικού Λογισμικού» Ενότητα. Επεξεργασία πινάκων Ενότητα 4 Επεξεργασία πινάκων 36 37 4.1 Προσθήκη πεδίων Για να εισάγετε ένα πεδίο σε ένα πίνακα που υπάρχει ήδη στη βάση δεδομένων σας, βάζετε τον κέρσορα του ποντικιού στο πεδίο πάνω από το οποίο θέλετε

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

Κεφάλαιο 14: Συμβουλές προς έναν νέο προγραμματιστή

Κεφάλαιο 14: Συμβουλές προς έναν νέο προγραμματιστή Κεφάλαιο 14: Συμβουλές προς έναν νέο προγραμματιστή Φτάσαμε σιγά σιγά στο τέλος του βιβλίου. Αντί για κάποιον επίλογο σκέφτηκα να συλλέξω κάποια πράγματα που θα ήθελα να πω σε κάποιον ο οποίος αρχίζει

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

Ελέγξτε την ταινία σας

Ελέγξτε την ταινία σας Ελέγξτε την ταινία σας Σε αυτές τις ασκήσεις, θα κάνετε εισαγωγή μιας ταινίας και θα χρησιμοποιήσετε τις επιλογές που παρουσιάστηκαν στο μάθημα. Άσκηση 1: Εισαγωγή αρχείου ταινίας 1. Κάντε κλικ στη μικρογραφία

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

Δραστηριότητα 1 γνωριμία με το περιβάλλον Karel

Δραστηριότητα 1 γνωριμία με το περιβάλλον Karel ΦΥΛΛΟ ΕΡΓΑΣΙΑΣ 1 - Εξοικείωση με τον μικρόκοσμο του ρομπότ Karel Δραστηριότητα 1 γνωριμία με το περιβάλλον Karel (1) Κατεβάστε τον μικρόκοσμο Karel γράφωντας στον φυλλομετρητή σας: http://5sek-acharn.att.sch.gr/downloads/karel_domimenos.rar

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

Ποιές εντολές του Scratch πρέπει να ξέρω;

Ποιές εντολές του Scratch πρέπει να ξέρω; Ποιές εντολές του Scratch πρέπει να ξέρω; ΕΝΤΟΛΕΣ ΚΙΝΗΣΗΣ κινήσου χ βήματα στρίψε χ μοίρες στρίψε χ μοίρες στρίψε προς την κατεύθυνση των χ μοιρών στρίψε προς το [] πήγαινε στη θέση χ:[] και y:[] πήγαινε

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

Προγραμματισμός ΙI (Θ)

Προγραμματισμός ΙI (Θ) Τεχνολογικό Εκπαιδευτικό Ίδρυμα Κεντρικής Μακεδονίας - Σέρρες Τμήμα Μηχανικών Πληροφορικής Προγραμματισμός ΙI (Θ) Δρ. Δημήτρης Βαρσάμης Επίκουρος Καθηγητής Μάρτιος 2017 Δρ. Δημήτρης Βαρσάμης Μάρτιος 2017

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

ΣΗΜΕΙΩΣΕΙΣ. στη γλώσσα προγραμματισμού. Γκέτσιος Βασίλειος

ΣΗΜΕΙΩΣΕΙΣ. στη γλώσσα προγραμματισμού. Γκέτσιος Βασίλειος ΣΗΜΕΙΩΣΕΙΣ στη γλώσσα προγραμματισμού Microsoft Worlds Pro Γκέτσιος Βασίλειος Σημειώσεις στη γλώσσα προγραμματισμού Microsoft Worlds Pro σελ. 1 Το περιβάλλον προγραμματισμού Microsoft Worlds Pro Μενού

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

Εφαρμογή δημιουργίας σεναρίων Sctatch

Εφαρμογή δημιουργίας σεναρίων Sctatch Εφαρμογή δημιουργίας σεναρίων Sctatch Δημιουργία Σεναρίων με το Scratch - τάξη Β Το Scratch είναι μια γλώσσα οπτικού προγραμματισμού οδηγούμενου από γεγονότα. Τα έργα (project) στο Scratch οικοδομούνται

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

Ο Προγραμματισμός στην Πράξη

Ο Προγραμματισμός στην Πράξη Ο Προγραμματισμός στην Πράξη Το περιβάλλον προγραμματισμού MicroWorlds Pro Μενού επιλογών Γραμμή εργαλείων Επιφάνεια εργασίας Περιοχή Καρτελών Κέντρο εντολών Καρτέλες Οι πρώτες εντολές Εντολές εμφάνισης

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

Βελώνης Γεώργιος Καθηγητής Πληροφορικής ΠΕ20 1 ο ΕΠΑΛ Κατερίνης Έκδοση 1 η Απρίλιος 2017

Βελώνης Γεώργιος Καθηγητής Πληροφορικής ΠΕ20 1 ο ΕΠΑΛ Κατερίνης Έκδοση 1 η Απρίλιος 2017 Βελώνης Γεώργιος Καθηγητής Πληροφορικής ΠΕ20 1 ο ΕΠΑΛ Κατερίνης Έκδοση 1 η Απρίλιος 2017 Τι είναι το Greenfoot Το Greenfoot είναι ένα Ολοκληρωμένο Περιβάλλον Ανάπτυξης Εφαρμογών (IDE) που έχει ως σκοπό

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

1. Τα τμήματα της επιφάνειας εργασίας των Windows

1. Τα τμήματα της επιφάνειας εργασίας των Windows 1. Τα τμήματα της επιφάνειας εργασίας των Windows Εικονίδια συντομεύσεων (αρχείου-φακέλου) Εικονίδια Ανενεργά Ενεργό Επιφάνεια (αρχείου-φακέλου) παράθυρα παράθυρο εργασίας Γραμμή μενού Γραμμή εργαλείων

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

Περιεχόμενα. Λίγα λόγια από το συγγραφέα Windows Vista Επιφάνεια εργασίας Γραμμή εργασιών... 31

Περιεχόμενα. Λίγα λόγια από το συγγραφέα Windows Vista Επιφάνεια εργασίας Γραμμή εργασιών... 31 Περιεχόμενα Λίγα λόγια από το συγγραφέα... 7 91 Windows Vista... 9 92 Επιφάνεια εργασίας... 18 93 Γραμμή εργασιών... 31 94 Χειρισμός παραθύρων... 53 95 Το παράθυρο Υπολογιστής... 77 96 Το μενού Έναρξη...

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

Προγραμματιστικό Περιβάλλον

Προγραμματιστικό Περιβάλλον Προγραμματιστικό Περιβάλλον Προγραμματίζοντας τις βασικές αριθμητικές πράξεις 2 ο Γυμνάσιο Παλλήνης Καθηγήτρια: Ευφροσύνη Σκιαδά Πρόσθεση Αφαίρεση Πολλαπλασιασμός Σύμβολα αριθμητικών πράξεων Διαίρεση Τι

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

Γ ΓΥΜΝΑΣΙΟΥ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ ΜΕ ΤΗ ΓΛΩΣΣΑ MicroWorlds Pro

Γ ΓΥΜΝΑΣΙΟΥ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ ΜΕ ΤΗ ΓΛΩΣΣΑ MicroWorlds Pro Για να μπορέσουμε να εισάγουμε δεδομένα από το πληκτρολόγιο αλλά και για να εξάγουμε εμφανίσουμε αποτελέσματα στην οθόνη του υπολογιστή χρησιμοποιούμε τις εντολές Εισόδου και Εξόδου αντίστοιχα. Σύνταξη

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

Περιεχόμενα. Κεφάλαιο 1 Γνωριμία με το Excel...9

Περιεχόμενα. Κεφάλαιο 1 Γνωριμία με το Excel...9 Περιεχόμενα Κεφάλαιο 1 Γνωριμία με το Excel...9 Τα στοιχεία του παραθύρου του Excel... 10 Κελιά και διευθύνσεις... 13 Σε ποιο κελί θα τοποθετηθούν τα δεδομένα;... 14 Καταχώριση δεδομένων... 15 Τι καταλαβαίνει

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

Βυζαντινός Ρεπαντής Κολλέγιο Αθηνών 2010

Βυζαντινός Ρεπαντής Κολλέγιο Αθηνών 2010 Βυζαντινός Ρεπαντής Κολλέγιο Αθηνών 2010 Δημιουργία ενός απλού παιχνιδιού με το Gamemaker (μετάφραση από το http://www.stuffucanuse.com/downloads/gamemaker-introductionlessons/free_game_downloads_gamemaker.htm)

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

Εγκατάσταση αρχείων βιβλιοθήκης VHOPE και VHOPE

Εγκατάσταση αρχείων βιβλιοθήκης VHOPE και VHOPE Εγκατάσταση αρχείων βιβλιοθήκης VHOPE και VHOPE Βήμα 1, εγκατάσταση VHOPE Η εφαρμογή VHOPE θα πρέπει να εγκατασταθεί στο PC σας προτού μπορείτε να αρχίσετε να χρησιμοποιείτε το υλικό παρουσίασης σε αυτό

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

α) Πώς παίρνουμε αποφάσεις στην καθημερινή μας ζωή; Συμπληρώσετε τον παρακάτω πίνακα: τότε

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

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

Τα αλφαριθμητικά αποτελούνται από γράμματα, λέξεις ή άλλους χαρακτήρες (π.χ. μήλο, Ιούλιος 2009, You win!).

Τα αλφαριθμητικά αποτελούνται από γράμματα, λέξεις ή άλλους χαρακτήρες (π.χ. μήλο, Ιούλιος 2009, You win!). ΑΛΦΑΡΙΘΜΗΤΙΚΑ Τα αλφαριθμητικά αποτελούνται από γράμματα, λέξεις ή άλλους χαρακτήρες (π.χ. μήλο, Ιούλιος 2009, You win!). Αποθηκεύονται σε μεταβλητές ή σε λίστες (όπως ή ). Μπορείτε να ενώσετε δυο αλφαριθμητικά

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

Οδηγίες Χρήσης Εφαρμογής

Οδηγίες Χρήσης Εφαρμογής Οδηγίες Χρήσης Εφαρμογής SciFY - Οκτώβριος 2016 Περιεχόμενα Εισαγωγή 3 Οδηγίες για τον εργοθεραπευτή / φροντιστή 4 Αρχική Οθόνη 4 Δημιουργία προφίλ 5 Ρυθμίσεις Επικοινωνίας 6 Ρυθμίσεις Ψυχαγωγίας 9 Ρυθμίσεις

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

Hase οδηγίες χρήσης.

Hase οδηγίες χρήσης. Hase οδηγίες χρήσης. Το Hase είναι ένα πρόγραμμα προσομοίωσης που έχει αναπτυχθεί στο πανεπιστήμιο του Εδιμβούργου (http://www.icsa.inf.ed.ac.uk/research/groups/hase/) και μπορεί να χρησιμοποιηθεί για

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

ΦΥΛΛΟ ΕΡΓΑΣΙΑΣ: Εντολές κίνησης και στροφής στο προγραμματιστικό περιβάλλον Scratch. ΟΝΟΜΑΤΕΠΩΝΥΜΟ:

ΦΥΛΛΟ ΕΡΓΑΣΙΑΣ: Εντολές κίνησης και στροφής στο προγραμματιστικό περιβάλλον Scratch. ΟΝΟΜΑΤΕΠΩΝΥΜΟ: ΦΥΛΛΟ ΕΡΓΑΣΙΑΣ: Εντολές κίνησης και στροφής στο προγραμματιστικό περιβάλλον Scratch. ΟΝΟΜΑΤΕΠΩΝΥΜΟ: 1. Ανοίξτε τον φυλλομετρητή Mozilla Firefox και στην γραμμή διευθύνσεων πληκτρολογήστε την διεύθυνση:

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

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

Αριστείδης Παλιούρας Ανακαλύψτε το Scratch 2 Αριθμομηχανή Στη δραστηριότητα αυτή θα δημιουργήσεις μια απλή αριθμομηχανή η οποία θα μπορεί να εκτελεί τις 4 βασικές πράξεις (πρόσθεση, αφαίρεση, πολλαπλασιασμός, διαίρεση) ανάμεσα σε 2 αριθμούς. Άνοιξε

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

Γνωριμία με το περιβάλλον

Γνωριμία με το περιβάλλον Γνωριμία με το περιβάλλον 1.Τι είναι http://www.makolas.blogspot.gr/ 2. Που και πως θα το βρω. Πως το εγκαθιστώ http://scratch.mit.edu/ 3. Γνωριμία με το περιβάλλον Εργασία με σκηνικά Διαγράψτε τη φιγούρα:

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

4 ο ΦΥΛΛΟ ΕΡΓΑΣΙΑΣ ΓΕΝΙΚΟΣ ΣΚΟΠΟΣ :

4 ο ΦΥΛΛΟ ΕΡΓΑΣΙΑΣ ΓΕΝΙΚΟΣ ΣΚΟΠΟΣ : 4 ο ΦΥΛΛΟ ΕΡΓΑΣΙΑΣ ΓΕΝΙΚΟΣ ΣΚΟΠΟΣ : Σκοπός του συγκεκριμένου φύλλου εργασίας είναι ο μαθητής να εξοικειωθεί με τις συναρτήσεις, τις αριθμητικές πράξεις καθώς και την επισήμανση κελιών υπό όρους με στόχο

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

1. Το ηλεκτρικό ρεύμα και τα ηλεκτρικά κυκλώματα

1. Το ηλεκτρικό ρεύμα και τα ηλεκτρικά κυκλώματα 1. Το ηλεκτρικό ρεύμα και τα ηλεκτρικά κυκλώματα Φύλλο Εργασίας Τίτλος: Το ηλεκτρικό ρεύμα και τα ηλεκτρικά κυκλώματα Γνωστικό Αντικείμενο: Ερευνώ το Φυσικό Κόσμο Διδακτική Ενότητα: Ηλεκτρισμός Τάξη: Ε'

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

Μαθήματα Scratch -Δραστηριότητα 1 Παλέτα Κίνηση

Μαθήματα Scratch -Δραστηριότητα 1 Παλέτα Κίνηση Μάθημα: Scrtach Τάξη: Ε/ΣΤ Παλέτα Κίνηση Προετοιμασία για το μάθημα: Καλό είναι πριν ξεκινήσουμε να παρακολουθήσουμε τα παρακάτω δύο videos: a) Εισαγωγή στο περιβάλλον του Scratch β) Εντολές κίνησης και

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

Τα Windows Πολύ Απλά και Πολύ Σύντομα

Τα Windows Πολύ Απλά και Πολύ Σύντομα Σαχπατζίδης Αβραάμ Καθηγητής Πληροφορικής Π.Ε 20 Master of Arts (M.A) in "Gender, New Forms of Education, New Forms of Employment and New Technologies in the Information Age". Τα Windows Πολύ Απλά και

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

Φτιάξε ένα απλό παιχνίδι

Φτιάξε ένα απλό παιχνίδι Φτιάξε ένα απλό παιχνίδι Άνοιξε το προγραμματιστικό περιβάλλον του Scratch 2.0 κάνοντας κλικ στο εικονίδιο στην επιφάνεια εργασίας. Κάνε κλικ στο κουμπί «Εισαγωγή αντικειμένου» για να εισάγεις ένα νέο

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

Δομές Δεδομένων. Σημειώσεις από το εργαστήριο για τον χειρισμό του προγράμματος Eclipse. 5ο εξάμηνο. v1.0

Δομές Δεδομένων. Σημειώσεις από το εργαστήριο για τον χειρισμό του προγράμματος Eclipse. 5ο εξάμηνο. v1.0 Δομές Δεδομένων 5ο εξάμηνο Σημειώσεις από το εργαστήριο για τον χειρισμό του προγράμματος Eclipse v1.0 Τις σημειώσεις κράτησαν και διαμόρφωσαν σε word οι: Κονδύλη Γαλήνη, ΑΜ 5576 Μάλλιου Χριστίνα, ΑΜ 5413

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

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

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

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

Σενάριο 17: Παιχνίδι μνήμης με εικόνες

Σενάριο 17: Παιχνίδι μνήμης με εικόνες Σενάριο 17: Παιχνίδι μνήμης με εικόνες Φύλλο Εργασίας Τίτλος: Παιχνίδι μνήμης με εικόνες Γνωστικό Αντικείμενο: Εφαρμογές Πληροφορικής-Υπολογιστών Διδακτική Ενότητα: Διερευνώ - Δημιουργώ Ανακαλύπτω, Συνθετικές

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

7.Α.1 Παρουσιάσεις. 7.Α.2 Περιγραφή περιεχομένων της εφαρμογής

7.Α.1 Παρουσιάσεις. 7.Α.2 Περιγραφή περιεχομένων της εφαρμογής Μάθημα 7ο Πολυμέσα 7.Α.1 Παρουσιάσεις Οι παρουσιάσεις είναι μια εφαρμογή που χρησιμεύει στην παρουσίαση των εργασιών μας. Αποτελούν μια συνοπτική μορφή των εργασιών μας. Μέσω δημιουργίας διαφανειών, μορφοποιήσεων

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

Αναπαραγωγή και stop/pause έτοιμων ηχητικών clips

Αναπαραγωγή και stop/pause έτοιμων ηχητικών clips Αναπαραγωγή και stop/pause έτοιμων ηχητικών clips Το scratch διαθέτει αρκετά μεγάλη ποικιλία έτοιμων ενσωματωμένων ηχητικών clips τα οποία θα βρείτε πολύ ενδιαφέροντα και θα σας βάλουν σε πειρασμό να πειραματιστείτε

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

Ανακύκλωσε το Computer Game σε Scratch

Ανακύκλωσε το Computer Game σε Scratch Ανακύκλωσε το Computer Game σε Scratch Καλλιόπη Σατραζέμη¹, Μαρία Χαραλαμπίδου², Κλεοπάτρα Χαριστέ³, Λαμπρινή Χρυσή 4 1 kalliopaki_s@yahoo.gr 2 maraki98_xar@hotmail.gr 3 kleo.xar@hotmail.gr 4 lamprini1998@gmail.com

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

Games: Εξοικείωση με το περιβάλλον του Game Maker μέσα από την κατασκευή ενός παιχνιδιού

Games: Εξοικείωση με το περιβάλλον του Game Maker μέσα από την κατασκευή ενός παιχνιδιού Games: Εξοικείωση με το περιβάλλον του Game Maker μέσα από την κατασκευή ενός παιχνιδιού Εκτιμώμενη διάρκεια: Τέσσερις διδακτικές ώρες Ένταξη στο πρόγραμμα σπουδών Στο νέο Πρόγραμμα Σπουδών του Γυμνασίου

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

Δομή Επιλογής. 1. Αν ο σκύλος ακουμπήσει ένα κόκαλο τότε το κόκαλο εξαφανίζεται και ο παίκτης κερδίζει 10 πόντους.

Δομή Επιλογής. 1. Αν ο σκύλος ακουμπήσει ένα κόκαλο τότε το κόκαλο εξαφανίζεται και ο παίκτης κερδίζει 10 πόντους. Τάξη : Α Λυκείου Λογισμικό : Scratch Ενδεικτική Διάρκεια : 45 λεπτά Δομή Επιλογής Μία από τις πιο σημαντικές δομές που χρησιμοποιείται στον προγραμματισμό είναι η δομή επιλογής. Η δομή αυτή μας δίνει την

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

Η εντολή «επανέλαβε Χ»

Η εντολή «επανέλαβε Χ» Η εντολή «επανέλαβε Χ» Όπως είδαμε πιο πάνω, η εντολή για πάντα είναι χρήσιμη σε διάφορα προγράμματα όταν π.χ. θέλουμε να δείξουμε την κίνηση της γης γύρω από τον ήλιο ή για να αναπαραστήσουμε το δίλημμα

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

Περιεχόμενα. Κεφάλαιο 1 Γνωριμία με το Excel... 9

Περιεχόμενα. Κεφάλαιο 1 Γνωριμία με το Excel... 9 Περιεχόμενα Κεφάλαιο 1 Γνωριμία με το Excel... 9 Τα στοιχεία του παραθύρου του Excel... 10 Κελιά και διευθύνσεις... 13 Σε ποιο κελί θα τοποθετηθούν τα δεδομένα;... 14 Καταχώριση δεδομένων... 15 Τι καταλαβαίνει

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

Μεταβλητές. Για περισσότερες λεπτομέρειες πάνω στις μεταβλητές θα ήταν χρήσιμο να διαβάσεις το

Μεταβλητές. Για περισσότερες λεπτομέρειες πάνω στις μεταβλητές θα ήταν χρήσιμο να διαβάσεις το Τάξη : Α Λυκείου Λογισμικό : Scratch Ενδεικτική Διάρκεια : 45 λεπτά Μεταβλητές Όλα όσα έμαθες στα προηγούμενα φυλλάδια είναι απαραίτητα για να υλοποιήσεις απλές εφαρμογές. Ωστόσο αν θέλεις να δημιουργήσεις

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

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

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

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

ΔΙΔΑΣΚΑΛΙΑ ΤΟΥ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ ΜΕ ΧΡΗΣΗ ΤΟΥ ΠΑΚΕΤΟΥ ΡΟΜΠΟΤΙΚΗΣ LEGO MINDSTORMS NXT

ΔΙΔΑΣΚΑΛΙΑ ΤΟΥ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ ΜΕ ΧΡΗΣΗ ΤΟΥ ΠΑΚΕΤΟΥ ΡΟΜΠΟΤΙΚΗΣ LEGO MINDSTORMS NXT ΔΙΔΑΣΚΑΛΙΑ ΤΟΥ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ ΜΕ ΧΡΗΣΗ ΤΟΥ ΠΑΚΕΤΟΥ ΡΟΜΠΟΤΙΚΗΣ LEGO MINDSTORMS NXT Φύλλο Εργασίας 1 ο Γνωριμία με το προγραμματιστικό περιβάλλον ΝΧΤ-G Όνομα Ημερομηνία Εξοικείωση με το NXT-G Στις παρακάτω

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

Παλέτα Κίνηση. Καλό είναι πριν ξεκινήσετε το παρακάτω φυλλάδιο να έχετε παρακολουθήσει τα παρακάτω δύο videos: a) Εισαγωγή στο περιβάλλον του Scratch

Παλέτα Κίνηση. Καλό είναι πριν ξεκινήσετε το παρακάτω φυλλάδιο να έχετε παρακολουθήσει τα παρακάτω δύο videos: a) Εισαγωγή στο περιβάλλον του Scratch Τάξη : Α Λυκείου Λογισμικό : Scratch Διάρκεια : 45 λεπτά Παλέτα Κίνηση Σε αυτό το φύλλο εργασίας θα εξοικειωθείτε με τις εντολές του Scratch που βρίσκονται στην παλέτα Κίνηση. Για τον σκοπό αυτό διαβάστε

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

Αντικειμενοστρεφής Προγραμματισμός

Αντικειμενοστρεφής Προγραμματισμός Αντικειμενοστρεφής Προγραμματισμός Διδάσκουσα: Αναπλ. Καθηγήτρια Ανδριάνα Πρέντζα aprentza@unipi.gr Εργαστηριακός Συνεργάτης: Δρ. Βασιλική Κούφη vassok@unipi.gr 1 Δομημένος προγραμματισμός έναντι αντικειμενοστρεφούς

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

Lego WeDo - Αεροπλάνο

Lego WeDo - Αεροπλάνο Lego WeDo - Αεροπλάνο Το σετ κατασκευής Lego WeDo δίνει τη δυνατότητα στους μαθητές του δημοτικού (ηλικίες 7 11) να κατασκευάσουν απλά μοντέλα Lego και στη συνέχεια να τα συνδέσουν με έναν υπολογιστή για

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

Το τρίτο παιχνίδι ΛΑΒΥΡΙΝΘΟΣ ΜΕ ΕΜΠΟΔΙΑ

Το τρίτο παιχνίδι ΛΑΒΥΡΙΝΘΟΣ ΜΕ ΕΜΠΟΔΙΑ σύντομες σημειώσεις βασισμένες σε δουλειά των συναδέλφων Κ. Φλώρου και Μ. Μαντουβάλου Το τρίτο παιχνίδι ΛΑΒΥΡΙΝΘΟΣ ΜΕ ΕΜΠΟΔΙΑ Σκοπός του παιχνιδιού είναι ο παππούς να μπορέσει να κινηθεί μέσα έναν λαβύρινθο

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

αντιστοιχίζεται με την εντολή περίμενε 0.5 (120/60=2 χτύποι ανά δευτερόλεπτο). Στην

αντιστοιχίζεται με την εντολή περίμενε 0.5 (120/60=2 χτύποι ανά δευτερόλεπτο). Στην Προγραμματίζοντας ήχους Το Scratch μας παρέχει εντολές για να προγραμματίσουμε ήχους, δηλαδή να ζητήσουμε την αναπαραγωγή συγκεκριμένων νοτών από διαφορετικά μουσικά όργανα σε διαφορετικές χρονικές στιγμές

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

1. Βασικές Λειτουργίες των Windows

1. Βασικές Λειτουργίες των Windows 1. Βασικές Λειτουργίες των Windows Α - Εκκίνηση του Υπολογιστή και των Windows XP Για να εκκινήσουμε τον υπολογιστή μας πατάμε το κουμπί ανοίγματος της μονάδας συστήματος και το αντίστοιχο κουμπί της οθόνης.

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

Hase οδηγίες χρήσης.

Hase οδηγίες χρήσης. Hase οδηγίες χρήσης. Το Hase είναι ένα πρόγραμμα προσομοίωσης που έχει αναπτυχθεί στο πανεπιστήμιο του Εδιμβούργου (http://www.icsa.inf.ed.ac.uk/research/groups/hase/) και μπορεί να χρησιμοποιηθεί για

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

Τα Φύλλα Εργασίας αφορά την εκμάθηση της εκτέλεσης της δομής επιλογής μέσα από το περιβάλλον του SCRATCH.

Τα Φύλλα Εργασίας αφορά την εκμάθηση της εκτέλεσης της δομής επιλογής μέσα από το περιβάλλον του SCRATCH. 15. ΠΕΡΙΓΡΑΦΗ ΚΑΙ ΑΝΑΛΥΣΗ ΦΥΛΛΩΝ ΕΡΓΑΣΙΑΣ Τα Φύλλα Εργασίας αφορά την εκμάθηση της εκτέλεσης της δομής επιλογής μέσα από το περιβάλλον του SCRATCH. 16. ΑΞΙΟΛΟΓΗΣΗ Οι βασικές διαδικασίες αξιολόγησης προέρχονται

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

Τι θα απαντούσατε αλήθεια στην ίδια ερώτηση για την περίπτωση της επόμενης εικόνας;

Τι θα απαντούσατε αλήθεια στην ίδια ερώτηση για την περίπτωση της επόμενης εικόνας; Κίνηση με συντεταγμένες Στην προηγούμενη υποενότητα είδαμε πως μπορούμε να κάνουμε το χαρακτήρα σας να κινηθεί με την εντολή κινήσου...βήματα που αποτελεί και την απλούστερη εντολή της αντίστοιχης παλέτας

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

Τι χρειάζεται ένας φοιτητής για τη σωστή παρακολούθηση και συμμετοχή στο μαθημα;

Τι χρειάζεται ένας φοιτητής για τη σωστή παρακολούθηση και συμμετοχή στο μαθημα; Εισαγωγή Τι χρειάζεται ένας φοιτητής για τη σωστή παρακολούθηση και συμμετοχή στο μαθημα; 1. Σελίδα μαθήματος Εγγραφή Ο κάθε φοιτητής πρέπει να κάνει εγγραφή στη σελίδα του μαθήματος στην πλατφόρμα e-class

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

Movie Maker (Δημιουργία βίντεο)

Movie Maker (Δημιουργία βίντεο) Movie Maker (Δημιουργία βίντεο) - Με πόσους τρόπους μπορούμε να διηγηθούμε μια ιστορία; - Μπορούμε να την πούμε ο ένας στον άλλο. - Μπορούμε να την γράψουμε. - Μπορούμε να τη ζωγραφίσουμε κομμάτι-κομμάτι.

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

Πως θα αποθηκεύσει τη λίστα με τα ψώνια του και θα την ανακτήσει στο Σ/Μ; και πως θα προσθέσει στη λίστα του επιπλέον προϊόντα;

Πως θα αποθηκεύσει τη λίστα με τα ψώνια του και θα την ανακτήσει στο Σ/Μ; και πως θα προσθέσει στη λίστα του επιπλέον προϊόντα; Λίστα για ψώνια Έννοιες: αρχεία- άνοιγμα- εγγραφή διάβασμα Προαπαιτούμενα : δομή επιλογής, επανάληψης, συναρτήσεις, λίστες Ο Άκης, τώρα που έμαθε και τις λίστες στην Python αποφάσισε να φτιάξει μια λίστα

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

«DIGITAL STORY TELLING» PROJECT

«DIGITAL STORY TELLING» PROJECT «DIGITAL STORY TELLING» PROJECT ΕΙΣΑΓΩΓΗ: Στα πλαίσια της εξοικείωσής μας με τα «πολυμέσα» θα ασχοληθούμε με το project «digital story telling». Το project αυτό θα μας μάθει πώς να «αφηγούμαστε» ψηφιακά

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

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

ΕΓΧΕΙΡΙ ΙΟ ΡΥΘΜΙΣΕΩΝ ΓΙΑ ΤΗΝ ΠΡΟΣΒΑΣΗ ΣΕ ΗΛΕΚΤΡΟΝΙΚΟΥΣ ΠΟΡΟΥΣ ΙΚΤΥΟ ΒΙΒΛΙΟΘΗΚΩΝ ΤΟΥ ΙΝΣΤΙΤΟΥΤΟΥ ΘΕΡΒΑΝΤΕΣ ΕΓΧΕΙΡΙ ΙΟ ΡΥΘΜΙΣΕΩΝ ΓΙΑ ΤΗΝ ΠΡΟΣΒΑΣΗ ΣΕ ΗΛΕΚΤΡΟΝΙΚΟΥΣ ΠΟΡΟΥΣ ΙΚΤΥΟ ΒΙΒΛΙΟΘΗΚΩΝ ΤΟΥ ΙΝΣΤΙΤΟΥΤΟΥ ΘΕΡΒΑΝΤΕΣ σ. 1 από 18 _ Εγχειρίδιο ρυθµίσεων για την πρόσβαση σε ηλεκτρονικούς πόρους bibliotecas Εγχειρίδιο

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