Κεφάλαιο 1: Προγραμματισμός

.....................................
Σε αυτό το κεφάλαιο:

1.1 Τι είναι ο προγραμματισμός

1.2 Τι χρειάζεται για να δημιουργήσουμε ένα πρόγραμμα;

1.3 Οφέλη από τον προγραμματισμό

1.4 Scratching

.....................................
«Πρώτα λύσε το πρόβλημα. Μετά γράψε τον κώδικα»
.

(John Johnson)



1.1 Τι είναι ο προγραμματισμός;

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

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

kid-n-computer.jpg

Το να χρησιμοποιούμε τεχνολογία αλλά να μην μπορούμε να δημιουργήσουμε, μήπως μοιάζει με το να είμαστε σε θέση να διαβάζουμε αλλά να μη μπορούμε να γράψουμε;

Η τέχνη του να μπορούμε να γράφουμε τα δικά μας προγράμματα ονομάζεται προγραμματισμός. Ο ορισμός του προ-γραμματισμού από την ελληνική Wikipedia:

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

Γενικότερα ως προγραμματιστικό πρόβλημα θεωρούμε κάθε ζήτημα που τίθεται προς επίλυση, κάθε κατάσταση που μας απασχολεί, κάθε ηλεκτρονική συμπεριφορά που επιθυμούμε να επιδειχθεί από τον υπολογιστή μας. Μην ανησυχείτε, τα προβλήματα που θα εξετάσουμε σε αυτό το βιβλίο αφορούν κυρίως την κατασκευή παιχνιδιών! Ακόμη όμως και τα παιχνίδια, όπως όλα τα προβλήματα, έχουν τα δικά τους συγκεκριμένα δεδομένα και ζητούμενα. Π.χ. σε ένα παιχνίδι ράλι, θέ-λουμε, αν ο χρήστης πατά το δεξί βέλος του πληκτρολογίου, το αυτοκινητάκι μας να στρίβει προς τα δεξιά. Πριν λύσουμε λοιπόν οποιοδήποτε πρόβλημα ως προγραμματιστές, οφεί-λουμε να κατανοήσουμε σε βάθος αυτά τα δυο στοιχεία, τα δεδομένα και τα ζητούμενα.

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

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

Τι μορφή όμως έχουν οι εντολές αυτές; Πολλές και διαφορετικές. Υπάρχουν δηλαδή πολλές «γλώσσες προγραμματισμού» με τις οποίες μπορείτε να δημιουργήσετε τα παιχνίδια σας. Κάθε γλώσσα προγραμματισμού έχει το δικό της σύνολο διαθέσιμων εντολών και τους δικούς της κανόνες. Όπως θυμάστε όμως από την πρώτη γυμνασίου που είχαμε συζητήσει ότι ο υπολογιστής καταλαβαίνει μόνο 01011101..; Άρα, αφού γράψουμε το πρόγραμμά μας σε οποιαδήποτε γλώσσα, μετά απαιτείται ένα στάδιο το οποίο ονομάζεται μεταγλώττιση. Όπως αποκαλύπτει η ίδια η λέξη, κατά τη μεταγλώττιση οι εντολές μας μετατρέπονται σε μια μορφή που είναι κατανοητή από τον υπολογιστή, τη γνωστή μορφή 00101010... (γλώσσα μηχανής). Μετά από αυτό το βήμα, μπορούμε να τρέξουμε το πρόγραμμά μας (ή αλλιώς να «εκτελέσουμε» το πρόγραμμά μας) έτσι ώστε να ελέγξουμε αν όντως κάνει αυτό που αρχικά σχεδιάσαμε.

Σχηματικά, η παραπάνω διαδικασία απεικονίζεται στο παρακάτω σχήμα:

1.1.jpg

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

1.2 Τι χρειάζεται για να γράψουμε ένα πρόγραμμα;

Ήρθε όμως η ώρα να δούμε με περισσότερη λεπτομέρεια τι χρειάζεται για να γράψουμε ένα πρόγραμμα.

Τι οδηγίες θα δίναμε στο μικρό μας αδερφάκι για το πως θα λύσει το γνωστό σε όλους μας παιχνίδι του λαβυρίνθου, που φαίνεται στην εικόνα 1.3;

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

1.      Κίνησε τον ήρωα επτά βήματα προς τα πάνω

2.      Κίνησε τον ήρωα τρία βήματα προς τα αριστερά

3.      Κίνησε τον ήρωα ένα βήμα προς τα κάτω

4.      Κίνησε τον ήρωα ένα βήμα προς τα αριστερά

5.      Κίνησε τον ήρωα δύο βήματα προς τα πάνω

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

.jpg

Αλλά το παραπάνω παράδειγμα ήταν πολύ απλό και στην ουσία δε θα μπορούσε να εφαρμοστεί σε οποιοδήποτε λαβύρινθο!

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

http://www.kcconfidential.com/wp-content/uploads/2009/08/pacman-300x100.png

Πως δημιουργούμε ένα αντίστοιχο πρόγραμμα ως προγραμματιστές; Σε πρώτο στάδιο πρέπει να μελετήσουμε προσεκτικά το πρόβλημα και να εντοπίσουμε τα δεδομένα του και στη συνέχεια τα ζητούμενά του. Ποιοι είναι οι κανόνες του παιχνιδιού; Ποιες είναι οι συμπεριφορές που θέλουμε να επιδεικνύουν όλα τα στοιχεία του; Αμέσως μετά πρέπει να κάνουμε μια αποδόμηση του προβλήματος σε μικρότερα υποπροβλήματα, τα οποία είναι πιο εύκολο να λυθούν. Επιμέρους προβλήματα στο packman μπορούν να θεωρηθούν τα εξής:

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

ü  πρέπει να σχεδιάσουμε τους χαρακτήρες μας που δεν είναι άλλοι από τον packman, τα φαντασματάκια που τον κυνηγούν και τα φρουτάκια που τρώει ο πάκμαν.

ü  πρέπει να προσδιορίσουμε ποιες είναι οι συμπεριφορές του κάθε αντικειμένου; Ο packman κινείται όταν χρησιμοποιούμε τα βελάκια του πληκτρολογίου. Τα φαντασματάκια κινούνται διαρκώς τυχαία σε όλες τις δυνατές διαδρομές μέσα στο λαβύρινθο. Τα φρούτα εμφανίζονται με τυχαίο τρόπο μέσα στο λαβύρινθο.

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

skepsi2.jpg

Με έναν αντίστοιχο τρόπο, απλό και συστηματικό, συνεχίζουμε να αποδομούμε λογικά το πρόβλημα σε μικρότερα προβλήματα έτσι ώστε στο τέλος να γράψουμε πολλά μικρά και εύκολα σύνολα εντολών-οδηγιών που όλα μαζί συνιστούν το παιχνίδι. Φυσικά, δεν πρέπει να ξεχνάμε ότι ένα πρόβλημα πολλές φορές μπορεί να λυθεί με πολλούς διαφορετικούς τρόπους.

pacman.jpg

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

1.3 Οφέλη προγραμματισμού

Τι κερδίζουμε όμως μαθαίνοντας προγραμματισμό; Γιατί να μάθουμε προγραμματισμό; Καταρχάς, σε αυτό το βιβλίο θα μάθουμε προγραμματισμό για να δημιουργούμε τα δικά μας παιχνίδια και άρα προβλέπεται πολύ διασκέδαση! Επιπλέον όμως μπορούμε να σκεφτούμε τον προγραμματισμό σαν ένα καμβά πάνω στον οποίο μας δίνεται η δυνατότητα να φτιάχνουμε δικές μας δημιουργίες, να ζωγραφίζουμε και να δη-μιουργούμε εφαρμογές ανάλογα με τις προσωπικές μας προτιμήσεις και ανάγκες. Για παράδειγμα, μπορούμε να δη-μιουργήσουμε ένα ηλεκτρονικό ημερολόγιο που μας βοηθά στην οργάνωση της καθημερινότητας μας ή ένα πρόγραμμα που εκτελεί μουσικές συνθέσεις και μας χαλαρώνει από τις υποχρεώσεις μας. Ο προγραμματισμός μπορεί να συνεισφέρει πρακτικά στην καθημερινή μας διασκέδαση και ψυχαγωγία.

computer.jpg

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

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

1.4 Scratching

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

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

tetris.JPG

pacman1.JPG

garden.JPG

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

solar_system.JPG

Ας δούμε όμως πρώτα μερικά ιστορικά στοιχεία για το Scratch. Αναπτύχθηκε από το Lifelong Kindergarten group στο MIT (όλοι μας έχουμε ακούσει για το τρομερό ερευνητικό εργαστήριο) με επικεφαλή τον Mitchel Resnick και πρωτοεμφανίστηκε το καλοκαίρι του 2007, είναι δηλαδή σχετικά καινούριο περιβάλλον. Το λογισμικό διανέμεται δωρεάν για διαφορετικά λειτουργικά συστήματα (Windows, Mac OS X ή Linux) και η εγκατάστασή του είναι πολύ απλή. Σήμερα χρησιμοποιείται ευρέως για τη διδασκαλία του προγραμματισμού, ενώ η διάδοσή του είναι ταχύτατη. Ενδεικτικά μπορούμε να αναφέρουμε ότι στην ιστοσελίδα του Scratch (http://scratch.mit.edu/) υπάρχουν γύρω στα 700.000 εγγεγραμμένα μέλη και γύρω στους 200.000 προγραμματιστές που δημοσιεύουν τα προγράμματά τους στον συγκεκριμένο ιστοχώρο!

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

sinthesi.jpg

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

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

Όλες αυτές οι στοίβες από τουβλάκια δημιουργούν το πρόγραμμά μας. Ποια είναι όμως τα πλεονεκτήματα της χρήσης του Scratch;

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

Περίληψη

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

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

Όσον αφορά το δεύτερο μέρος του βιβλίου, αρχικά στο κεφάλαιο 4, θα μάθουμε να δημιουργούμε τους ήρωες των παιχνιδιών μας και στη συνέχεια στα κεφάλαια 5 έως 8 θα τους κάνουμε να κινούνται, να ζωγραφίζουν, να παίζουν μουσική και θέατρο.

Στο τρίτο και τελευταίο μέρος του βιβλίου, οι ήρωες μας θα γίνουν πιο «έξυπνοι» και θα αποκτήσουν περισσότερες δυνατότητες. Πώς θα το πετύχουμε αυτό; Θα τους κάνουμε να αντιλαμβάνονται καλύτερα το περιβάλλον τους και να ανταλλάσουν μηνύματα μεταξύ τους, να επαναλαμβάνουν διαδικασίες, όπως άλλωστε κάνουμε και εμείς καθημερινά μεταξύ μας και να εκτελούν ενέργειες μόνο εφόσον ισχύουν ορισμένες συνθήκες. Το τελευταίο κεφάλαιο του βιβλίου δε θα μπορούσε παρά να παρουσιάζει τη δημιουργία 6 παιχνιδιών!

Καλή διασκέδαση!

Ερωτήσεις

1) Περιγράψτε τι είναι προγραμματισμός και ποιά τα βασικά χαρακτηριστικά ενός προγράμματος.

2) Τι πιστεύετε ότι μπορεί να σας προσφέρει ο προγραμματισμός στην καθημερινότητα σας;

3) Γιατί πρέπει να κατανοούμε καλά ένα πρόβλημα πριν το επιλύσουμε;
4) Ποιά είναι τα στάδια επίλυσης προβλημάτων που πρέπει να ακολουθούμε;
5) Αναφέρετε καθημερινές σας δραστηριότητες στις οποίες πιθανότατα ο προγραμματιστικός τρόπος σκέψης μπορεί να σας βοηθήσει.

6) Περιγράψτε τι είδους εφαρμογές πιστεύετε ότι μπορείτε να δημιουργήσετε με το Scratch και ποιές από αυτές μπορείτε να τις χρησιμοποιήσετε στην καθημερινότητα σας;

Δραστηριότητες

1) Αναλύστε το πρόβλημα της δημιουργίας του παιχνιδιού «tetris».
2) Δώστε τη σειρά των βημάτων που πρέπει να ακολουθήσουμε για να ζωγραφίσουμε ένα ρόμβο χωρίς να χρειαστεί σηκώσουμε το στυλό από το χαρτί.

3) Που πιστεύετε ότι είναι το λάθος στις παρακάτω οδηγίες που δώσαμε στον υπολογιστή για να δημιουργήσει την αρχική εικόνα του παιχνιδιού "τρίλιζα":

Σχεδίασε ένα κατακόρυφο ευθύγραμμο τμήμα (τμήμα 1)

Σχεδίασε ένα κατακόρυφο ευθύγραμμο τμήμα (τμήμα 2) παράλληλο στο τμήμα 1

Σχεδίασε ένα κατακόρυφο ευθύγραμμο τμήμα (τμήμα 3) παράλληλο στο τμήμα 2

Σχεδίασε ένα ευθύγραμμο τμήμα (τμήμα 4) κάθετο στο τμήμα 2

Σχεδίασε ένα ευθύγραμμο τμήμα (τμήμα 5) κάθετο στο τμήμα 3
Σχεδίασε ένα ευθύγραμμο τμήμα (τμήμα 6) κάθετο στο τμήμα 4

4) Ανακαλύψτε τις κρυμμένες λέξεις : προγραμματισμός, σύνθεση, μεταγλώττιση, κώδικας, αποδόμηση, έλεγχος, σφάλμα, γλώσσα, εκτέλεση, εντολές.

Π

Ε

Ρ

Τ

Υ

Θ

Ι

Σ

Υ

Ν

Θ

Ε

Σ

Η

Ι

Κ

Ρ

Ο

Π

Α

Σ

Δ

Φ

Γ

Η

Ξ

Ν

Κ

Λ

Ξ

Ζ

Ω

Ο

Χ

Ψ

Ω

Β

Ν

Μ

Ρ

Τ

Τ

Γ

Κ

Δ

Λ

Β

Δ

Γ

Λ

Ω

Σ

Σ

Α

Σ

Χ

Ο

Ν

Φ

Ψ

Α

Φ

Ξ

Ι

Ρ

Λ

Ω

Ρ

Σ

Φ

Α

Λ

Μ

Α

Υ

Ε

Φ

Γ

Η

Κ

Α

Ν

Ξ

Κ

Λ

Χ

Ε

Ρ

Κ

Ο

Ζ

Σ

Δ

Ε

Η

Α

Μ

Ν

Ξ

Ρ

Μ

Σ

Σ

Λ

Ψ

Ε

Ρ

Τ

Κ

Υ

Θ

Σ

Μ

Ι

Ο

Π

Λ

Κ

Ξ

Η

Η

Γ

Φ

Τ

Δ

Σ

Α

Β

Α

Μ

Β

Ω

Ψ

Χ

Ζ

Ρ

Η

Μ

Ε

Τ

Α

Γ

Λ

Ω

Τ

Τ

Ι

Σ

Η

Γ

Ε

Ρ

Τ

Λ

Υ

Θ

Ι

Ο

Π

Α

Ι

Δ

Φ

Γ

Ξ

Ζ

Ε

Λ

Ε

Γ

Χ

Ο

Σ

Ω

Β

Ν

Σ

Δ

Γ

Σ

Ε

Ρ

Τ

Σ

Υ

Θ

Ι

Ο

Π

Α

Δ

Γ

Μ

Φ

Γ

Ζ

Χ

Ψ

Η

Ω

Β

Ν

Μ

Ξ

Δ

Τ

Δ

Α

Ο

Β

Φ

Γ

Η

Α

Π

Ο

Δ

Ο

Μ

Η

Σ

Η

Λ

Κ

Σ

 

_1(2).JPG