Download - Η Γλώσσα Προγραμματισμού LOGO

Transcript
Page 1: Η Γλώσσα Προγραμματισμού LOGO

Η Γλώσσα Προγραμματισμού LOGO

Page 2: Η Γλώσσα Προγραμματισμού LOGO

Η Γλώσσα Προγραμματισμού LOGO

«Μαθαίνουμε καλύτερα κάνοντας... αλλά μαθαίνουμε ακόμα καλύτερα αν συνδυάσουμε τη δράση με την ομιλία και το στοχασμό πάνω σ΄ αυτά που κάνουμε».

S. Papert, 1999

Page 3: Η Γλώσσα Προγραμματισμού LOGO

Η Γλώσσα Προγραμματισμού LOGO

Η Logo αποτελεί διάλεκτο της Lisp, της γλώσσας της τεχνητής νοημοσύνης, και έχει αξιοποιηθεί στην εκπαίδευση περισσότερο από οποιαδήποτε άλλη γλώσσα προγραμματισμού

Page 4: Η Γλώσσα Προγραμματισμού LOGO

Η Γλώσσα Προγραμματισμού LOGO

θεωρείται ιδανικό εργαλείο για να μαθαίνεις κάνοντας (learning by doing) και αναμφίβολα αποτελεί  σημαντικό εργαλείο στα χέρια του εκπαιδευτικού για την ανάπτυξη δεξιοτήτων εξερεύνησης, δημιουργικότητας, επίλυσης προβλημάτων, λογικής-αλγοριθμικής σκέψης.

Page 5: Η Γλώσσα Προγραμματισμού LOGO

Η Γλώσσα Προγραμματισμού LOGO

Όλες οι γλώσσες προγραμματισμού αποτελούν εργαλεία για την ανάπτυξη μοντέλων Η Logo είναι ιδιαίτερα κατάλληλη για την ανάπτυξη μοντέλων από παιδιά. Απ’ όλες τις γλώσσες προγραμματισμού η Logo σχεδιάστηκε για να δημιουργεί μοντέλα με πολύ εύκολο τρόπο.

Page 6: Η Γλώσσα Προγραμματισμού LOGO

Η Γλώσσα Προγραμματισμού LOGO

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

Page 8: Η Γλώσσα Προγραμματισμού LOGO

Αλληλεπιδραστικότητα

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

Page 9: Η Γλώσσα Προγραμματισμού LOGO

Αλληλεπιδραστικότητα

Τα μηνύματα λάθους είναι περιγραφικά .

Πχ μπροσά Δεν ξέρω τίποτε για μπροσά

Εξήγηση: η λέξη μπροσά δεν είναι πρωτογενής εντολή ούτε διαδικασία που ορίσατε.

Page 10: Η Γλώσσα Προγραμματισμού LOGO

Αλληλεπιδραστικότητα

μπροστάΤο μπροστά

απαιτεί περισσότερα δεδομένα

Εξήγηση: η λέξη μπροστά

αναγνωρίζεται ως πρωτογενής εντολή αλλά το πρόγραμμα

δεν τρέχει γιατί απαιτείται πρόσθετη

πληροφορία.

Page 11: Η Γλώσσα Προγραμματισμού LOGO

Αλληλεπιδραστικότητα

μπροστά 100

Εξήγηση: η χελώνα κινείται μπροστά 100

βήματα. Δεν εμφανίζεται μήνυμα

λάθους.

Page 12: Η Γλώσσα Προγραμματισμού LOGO

Αλληλεπιδραστικότητα

τύπωσε 3+4 Δεν ξέρω τίποτε για 3+4

Εξήγηση: δεν υπάρχουν κενά μεταξύ αριθμών-συμβόλου.

Page 13: Η Γλώσσα Προγραμματισμού LOGO

Αλληλεπιδραστικότητα

τύπωσε 3 + 4Δεν βρέθηκε πλαίσιο κειμένου για

την εντολή τύπωσε

Εξήγηση: Δεν βρέθηκε πλαίσιο κειμένου για την εντολή τύπωσε στην εργασία.

Page 14: Η Γλώσσα Προγραμματισμού LOGO

Αλληλεπιδραστικότητα

τύπωσε 3 + 4

Εξήγηση: τυπώνεται το 7 στο υπάρχον πλαίσιο κειμένου στην εργασία ενώ δεν εμφανίζεται μήνυμα λάθους.

Page 15: Η Γλώσσα Προγραμματισμού LOGO

Συναρμολογησιμότητα - επεκτασιμότητα

Τα προγράμματα της Logo συνήθως αποτελούν συλλογές μικρών διαδικασιών.

Οι διαδικασίες ορίζονται στην καρτέλα διαδικασίες.

Η ειδική λέξη για ακολουθείται από το όνομα της διαδικασίας.

Ακόλουθες γραμμές σχηματίζουν τον ορισμό της διαδικασίας.

Η λέξη τέλος σηματοδοτεί τη λήξη του ορισμού της διαδικασίας.

Page 16: Η Γλώσσα Προγραμματισμού LOGO

Συναρμολογησιμότητα - επεκτασιμότητα

Πχ για την κατασκευή τετραγώνου ορίζουμε τη διαδικασία τετράγωνο

για τετράγωνοεπανάλαβε 4[ μπ 100 δε 90]τέλος

Page 17: Η Γλώσσα Προγραμματισμού LOGO

Συναρμολογησιμότητα - επεκτασιμότητα

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

για λουλούδιεπανάλαβε 18[ δε 20 τετράγωνο]τέλος

Page 18: Η Γλώσσα Προγραμματισμού LOGO

Συναρμολογησιμότητα - επεκτασιμότητα

Ομοίως, η υπερδιαδικασία λουλούδι χρησιμοποιείται ως δομικό στοιχείο για την κατασκευή άλλης υπερδιαδικασίας:

για κήποςεπανάλαβε 20[ θέσεχ τυχαίο 50 θέσεψ τυχαίο 100 θέσεχρώμα τυχαίο 50 λουλούδι]τέλος

Page 19: Η Γλώσσα Προγραμματισμού LOGO

Συναρμολογησιμότητα - επεκτασιμότητα

Από τη στιγμή που μια διαδικασία οριστεί λειτουργεί όπως οι πρωτογενείς διαδικασίες.

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

Η εντολή διάλεξε αποτελεί πρωτογενής λέξη σε μερικές εκδόσεις της Logo, ενώ σε άλλες όχι.

Page 20: Η Γλώσσα Προγραμματισμού LOGO

Συναρμολογησιμότητα - επεκτασιμότητα

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

Page 21: Η Γλώσσα Προγραμματισμού LOGO

Ευκαμψία ως προς τύπους δεδομένων

Η Logo δουλεύει με λέξεις και λίστες. Μια λέξη της Logo είναι μια σειρά χαρακτήρων. Μια λίστα είναι μια διατεταγμένη σειρά λέξεων ή λιστών. Οι αριθμοί είναι λέξεις, αλλά είναι σπέσιαλ γιατί μπορείς να κάνεις αριθμητική μ’ αυτούς.

Page 22: Η Γλώσσα Προγραμματισμού LOGO

Ευκαμψία ως προς τύπους δεδομένων

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

Page 23: Η Γλώσσα Προγραμματισμού LOGO

Ευκαμψία ως προς τύπους δεδομένων

Πιθανά να δημιουργηθεί έκπληξη σε όσους δεν είναι εξοικειωμένοι με τη Logo αλλά έχουν δουλέψει με άλλες γλώσσες προγραμματισμού

Page 24: Η Γλώσσα Προγραμματισμού LOGO

Ευκαμψία ως προς τύπους δεδομένων

τύπωσε λέξη "κα "λάτυπώνει σε υπάρχον πλαίσιο κειμένου τη λέξη καλά

τύπωσε λέξη "5 "4τυπώνει σε υπάρχον πλαίσιο κειμένου τον αριθμό 54

τύπωσε 20 + λέξη "5 "4τυπώνει σε υπάρχον πλαίσιο κειμένου τον αριθμό 74

Page 25: Η Γλώσσα Προγραμματισμού LOGO

Ευκαμψία ως προς τύπους δεδομένων

Στην παραδοσιακή Logo η εντολή στη χελώνα

επανάλαβε 9999 [ μπ 1 δε 1]

χρειάζεται λίγο χρόνο για να εκτελεστεί.

Page 26: Η Γλώσσα Προγραμματισμού LOGO

Ευκαμψία ως προς τύπους δεδομένων

Η εντολή επανάλαβε 9999 [ μπ 1 δε 1] τύπωσε "γεια 

θα τυπώσει τη λέξη γεια αφού ολοκληρώσει η χελώνα την κίνησή της.

Page 27: Η Γλώσσα Προγραμματισμού LOGO

Ευκαμψία ως προς τύπους δεδομένων

Η εντολή εκκίνηση [επανάλαβε 9999 [ μπ 1 δε 1]]

τύπωσε "γεια

θα τυπώσει τη λέξη γεια μόλις ξεκινήσει η χελώνα την κίνησή της.

Page 28: Η Γλώσσα Προγραμματισμού LOGO

Ευκαμψία ως προς τύπους δεδομένων

Η εντολή συνεχώς [ μπ 1 δε 1] τύπωσε "γεια

θα ξεκινήσει μια διεργασία που θα συνεχιστεί μέχρι να την διακόψετε. Η λέξη γεια θα τυπωθεί μόλις ξεκινήσει η χελώνα την κίνησή της.