Οδηγίες αξιοποίησης του λογισμικού Περιβάλλον Δομημένου Προγραμματισμού για τον Εκπαιδευτικό

Ε ρευνητικό Α καδημαϊκό Ι νστιτούτο Τ εχνολογίας Υ πολογιστών

Περιεχόμενα

1. Λίγα λόγια για το Περιβάλλον Δομημένου Προγραμματισμού. 6

2. Στόχοι των εκπαιδευτικών δραστηριοτήτων. 7

Παιδαγωγικοί σκοποί 7

Εκπαιδευτικοί στόχοι 7

3. Δραστηριότητες. 8

Γνωριμία με το ΠΔΠ.. 8

Παραδείγματα. 9

Εντολές εισόδου και εξόδου. 9

Εντολές επανάληψης. 10

Εντολές απόφασης. 10

Εντολές εκχώρησης με τελεστές απλών αριθμητικών πράξεων. 11

Εντολές εκχώρησης μαθηματικών συναρτήσεων. 12

Πίνακες. 13

Ρυθμίσεις συστήματος. 14

Εκπαιδευτικές δραστηριότητες. 14

Εκπαιδευτικές δραστηριότητες και προτεινόμενος τρόπος ένταξής τους στη μαθησιακή διαδικασία 14

Ένταξη των εκπαιδευτικών δραστηριοτήτων στις διδακτικές ενότητες του μαθήματος. 15

Δραστηριότητα 1: Εφαρμογή βασικών αλγοριθμικών εννοιών για τη δημιουργία απλών προγραμμάτων 16

Δραστηριότητα 1α: Εκχώρηση τιμών σε μεταβλητές και εμφάνιση του αποτελέσματος. 16

Δραστηριότητα 1β: Δομές επανάληψης. 18

Δραστηριότητα 1γ: Πίνακες – Εισαγωγή και ανάκτηση τιμών των στοιχείων. 19

Δραστηριότητα 1δ: Εμφωλευμένες εντολές – Δομές επιλογής – Είσοδος δεδομένων. 20

Δραστηριότητα 2: Επίλυση του τριωνύμου Ax2+Bx+C = 0. 21

Δραστηριότητα 3: Δημιουργία σχήματος «δέντρου» που αποτελείται από X αριθμό γραμμών, με χρήση ενός χαρακτήρα (κάθετη γραμμή «|»). 22

Δραστηριότητα 4: Ταξινόμηση των στοιχείων μονοδιάστατου πίνακα Ν στοιχείων κατά αύξουσα σειρά με τη μέθοδο «ταξινόμηση φυσαλίδας» (bubble sort) 24

#

# 1. Λίγα λόγια για το Περιβάλλον Δομημένου Προγραμματισμού

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

Το Περιβάλλον Δομημένου Προγραμματισμού

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

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

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

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

# 2. Στόχοι των εκπαιδευτικών δραστηριοτήτων

## Παιδαγωγικοί σκοποί

Η εφαρμογή εκπαιδευτικών δραστηριοτήτων στο ΠΔΠ αποσκοπεί:

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

## Εκπαιδευτικοί στόχοι

Η εφαρμογή των δραστηριοτήτων, στο ειδικά διαμορφωμένο ΠΔΠ, στοχεύει:

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

# 3. Δραστηριότητες

## Γνωριμία με το ΠΔΠ

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

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

Μια από τις εντολές που θα πρέπει να παρουσιαστεί εξαρχής στους μαθητές είναι η εντολή εξόδου δεδομένων

-Εμφάνισε ( .. )

Ο ρόλος της εντολής αυτής είναι καθοριστικής σημασίας για την εξέταση του τρόπου λειτουργίας των υπόλοιπων εντολών, μέσω του αποτελέσματος που επιστρέφουν.

Η επόμενη εντολή που θα πρέπει να γνωρίσουν οι μαθητές είναι η

-Καθαρισμός οθόνης αποτελεσμάτων

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

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

### Παραδείγματα

Στον παρακάτω πίνακα με τα παραδείγματα χρήσης των εντολών, στην αριστερή στήλη εμφανίζεται το όνομα της εντολής, στη μεσαία ένα παράδειγμα του ψευδοκώδικα και στη δεξιά το όνομα του αρχείου του κάθε παραδείγματος που υπάρχει στο φάκελο Δραστηριότητες\ Παραδείγματα Εντολών του CD-ROM.

#### Εντολές εισόδου και εξόδου
-Διάβασε .. | ΑΡΧΗ -Διάβασε Metabliti -Εμφάνισε ( Metabliti ) ΤΕΛΟΣ | ReadPrint.elp
-Εμφάνισε ( .. ) | ΑΡΧΗ -Εμφάνισε ( 1 ) -Εμφάνισε ( 2 ) -Εμφάνισε ( 3 ) -Εμφάνισε ( 4 ) -Εμφάνισε ( 5 ) ΤΕΛΟΣ | print.elp
-Εμφάνισε ( .. ) και άλλαξε γραμμή | ΑΡΧΗ -Εμφάνισε ( 1 ) και άλλαξε γραμμή -Εμφάνισε ( 2 ) και άλλαξε γραμμή -Εμφάνισε ( 3 ) και άλλαξε γραμμή -Εμφάνισε ( 4 ) και άλλαξε γραμμή -Εμφάνισε ( 5 ) και άλλαξε γραμμή ΤΕΛΟΣ | printline.elp
-Καθαρισμός οθόνης αποτελεσμάτων | ΑΡΧΗ -Εμφάνισε ( "!@#$%6&*()" ) -Καθαρισμός οθόνης αποτελεσμάτων -Εμφάνισε ( "Γεια σου, κόσμε" ) ΤΕΛΟΣ | CLS.elp
#### Εντολές επανάληψης
-Για .. από .. μέχρι .. κάνε ΤέλοςΓια | ΑΡΧΗ -Για Count από 1 μέχρι 10 κάνε -Εμφάνισε ( Count ) και άλλαξε γραμμή ΤέλοςΓια ΤΕΛΟΣ | repeat.elp
-Για .. από .. μέχρι .. μειώνοντας κάνε ΤέλοςΓια | ΑΡΧΗ -Για Count από 10 μέχρι 1 μειώνοντας κάνε -Εμφάνισε ( Count ) και άλλαξε γραμμή ΤέλοςΓια ΤΕΛΟΣ | repeatdown.elp
-'Οσο .. Τέλος'Οσο | ΑΡΧΗ -Καθαρισμός οθόνης αποτελεσμάτων -Θέσε Count ίσο με 1 -'Οσο Count<=10 -Εμφάνισε ( Count ) και άλλαξε γραμμή -Θέσε Count ίσο με Count+1 Τέλος΄Οσο ΤΕΛΟΣ | repeatwhile.elp
#### Εντολές απόφασης
-Αν .. τότε ΤέλοςΑν | ΑΡΧΗ -Θέσε Flag ίσο με 1 -Αν Flag = 1 τότε -Εμφάνισε ( Flag ) και άλλαξε γραμμή ΤέλοςΑν ΤΕΛΟΣ | if.elp
#### Εντολές εκχώρησης με τελεστές απλών αριθμητικών πράξεων
-Θέσε .. ίσο με .. | ΑΡΧΗ -Θέσε Metabliti ίσο με 5 -Εμφάνισε ( Metabliti ) και άλλαξε γραμμή ΤΕΛΟΣ | set.elp
-Θέσε .. ίσο με το άθροισμα του .. και του .. | ΑΡΧΗ -Θέσε Metabliti ίσο με το άθροισμα του 5 και του 3 -Εμφάνισε ( Metabliti ) και άλλαξε γραμμή ΤΕΛΟΣ | Prosthesi.elp
-Θέσε .. ίσο με τη διαφορά .. μείον .. | ΑΡΧΗ -Θέσε Metabliti ίσο με τη διαφορά 5 μείον 3 -Εμφάνισε ( Metabliti ) και άλλαξε γραμμή ΤΕΛΟΣ | afairesi.elp
-Θέσε .. ίσο με το γινόμενο του .. επί το .. | ΑΡΧΗ -Θέσε Metabliti ίσο με το γινόμενο του 5 επί το 3 -Εμφάνισε ( Metabliti ) και άλλαξε γραμμή ΤΕΛΟΣ | poll.elp
-Θέσε .. ίσο με το πηλίκο του .. διά του .. | ΑΡΧΗ -Θέσε Metabliti ίσο με το πηλίκο του 6 διά του 2 -Εμφάνισε ( Metabliti ) και άλλαξε γραμμή ΤΕΛΟΣ | diairesi.elp
-Θέσε .. ίσο με το υπόλοιπο της διαίρεσης .. διά του .. | ΑΡΧΗ -Θέσε Metabliti ίσο με το υπόλοιπο της διαίρεσης 7 διά του 4 -Εμφάνισε ( Metabliti ) και άλλαξε γραμμή ΤΕΛΟΣ | mod.elp
#### Εντολές εκχώρησης μαθηματικών συναρτήσεων
-Θέσε .. ίσο με την τετραγωνική ρίζα του .. | ΑΡΧΗ -Θέσε Metabliti ίσο με την τετραγωνική ρίζα του 81 -Εμφάνισε ( Metabliti ) και άλλαξε γραμμή ΤΕΛΟΣ | riza.elp
-Θέσε .. ίσο με την εφαπτομένη του .. | ΑΡΧΗ -Θέσε Metabliti ίσο με την εφαπτομένη του 45 -Εμφάνισε ( Metabliti ) και άλλαξε γραμμή ΤΕΛΟΣ | efaptomeni.elp
-Θέσε .. ίσο με το τόξο εφαπτομένης .. | ΑΡΧΗ -Θέσε Metabliti ίσο με το τόξο εφαπτομένης 45 -Εμφάνισε ( Metabliti ) και άλλαξε γραμμή ΤΕΛΟΣ | toxoefaptomenis.elp
-Θέσε .. ίσο με το ημίτονο του .. | ΑΡΧΗ -Θέσε Metabliti ίσο με το ημίτονο του 45 -Εμφάνισε ( Metabliti ) και άλλαξε γραμμή ΤΕΛΟΣ | sin.elp
-Θέσε .. ίσο με το συνημίτονο του .. | ΑΡΧΗ -Θέσε Metabliti ίσο με το συνημίτονο του 45 -Εμφάνισε ( Metabliti ) και άλλαξε γραμμή ΤΕΛΟΣ | cos.elp
-Θέσε .. ίσο με τη δύναμη του .. στη .. | ΑΡΧΗ -Θέσε Metabliti ίσο με τη δύναμη του 2 στο 8 -Εμφάνισε ( Metabliti ) και άλλαξε γραμμή ΤΕΛΟΣ | power.elp
-Θέσε .. ίσο με την απόλυτη τιμή του .. | ΑΡΧΗ -Θέσε Metabliti ίσο με την απόλυτη τιμή του -32 -Εμφάνισε ( Metabliti ) και άλλαξε γραμμή ΤΕΛΟΣ | apoliti.elp
-Θέσε .. ίσο με το νεπέριο λογάριθμο του .. | ΑΡΧΗ -Θέσε Metabliti ίσο με το νεπέριο λογάριθμο του 590 -Εμφάνισε ( Metabliti ) και άλλαξε γραμμή ΤΕΛΟΣ | logarithmosE.elp
-Θέσε .. ίσο με το λογάριθμο του .. με βάση .. | ΑΡΧΗ -Θέσε Metabliti ίσο με το λογάριθμο του 100 με βάση 10 -Εμφάνισε ( Metabliti ) και άλλαξε γραμμή ΤΕΛΟΣ | logarithmos.elp
-Θέσε .. ίσο με τη νεπέρια δύναμη του .. | ΑΡΧΗ -Θέσε Metabliti ίσο με τη νεπέρια δύναμη του 23 -Εμφάνισε ( Metabliti ) και άλλαξε γραμμή ΤΕΛΟΣ | exp.elp
-Θέσε .. ίσο με τυχαίο αριθμό από 1 έως .. | ΑΡΧΗ -Θέσε Metabliti ίσο με τυχαίο αριθμό από 1 έως 50 -Εμφάνισε ( Metabliti ) και άλλαξε γραμμή ΤΕΛΟΣ | random.elp
#### Πίνακες
-Δήλωση πίνακα .. με αριθμό στοιχείων .. | ΑΡΧΗ -Δήλωση πίνακα Pin με αριθμό στοιχείων 5 -Για Count από 1 μέχρι 5 κάνε -Θέσε Pin[Count] ίσο με τυχαίο αριθμό από 1 έως 50 ΤέλοςΓια -Για Count από 1 μέχρι 5 κάνε -Εμφάνισε ( Pin[Count] ) και άλλαξε γραμμή ΤέλοςΓια ΤΕΛΟΣ | pinakas.elp
#### Ρυθμίσεις συστήματος
-Θέσε ακρίβεια .. δεκαδικών ψηφίων | ΑΡΧΗ -Θέσε ακρίβεια 5 δεκαδικών ψηφίων -Εμφάνισε ( 5.0 ) ΤΕΛΟΣ | dekadika.elp

## Εκπαιδευτικές δραστηριότητες

### Εκπαιδευτικές δραστηριότητες και προτεινόμενος τρόπος ένταξής τους στη μαθησιακή διαδικασία

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

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

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

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

### Ένταξη των εκπαιδευτικών δραστηριοτήτων στις διδακτικές ενότητες του μαθήματος

Δραστηριότητες | Διδακτικές ενότητες (ΔΕ) και υποενότητες (ΥΕ)
Δραστηριότητα 1 Εφαρμογή βασικών αλγοριθμικών εννοιών για τη δημιουργία απλών προγραμμάτων | ΔΕ Σχεδίαση αλγορίθμου ΥΕ Αλγόριθμοι – Βασικές έννοιες ΥΕ Ανάπτυξη αλγορίθμων
Δραστηριότητα 2 Επίλυση του τριωνύμου Ax2+Bx+C = 0 | ΔΕ Ανάλυση του προβλήματος ΥΕ Καθορισμός και κατανόηση του προβλήματος ΥΕ Δομή του προβλήματος ΥΕ Καθορισμός απαιτήσεων ΔΕ Σχεδίαση αλγορίθμου ΥΕ Αλγόριθμοι – Βασικές έννοιες ΔΕ Υλοποίηση σε προγραμματιστικό περιβάλλον ΥΕ Στοιχεία δομημένου προγραμματισμού
Δραστηριότητα 3 Δημιουργία σχήματος «δέντρου» που αποτελείται από X αριθμό γραμμών, με χρήση ενός χαρακτήρα (κάθετη γραμμή «|») | ΔΕ Ανάλυση του προβλήματος ΥΕ Καθορισμός και κατανόηση του προβλήματος ΥΕ Δομή του προβλήματος ΥΕ Καθορισμός απαιτήσεων ΔΕ Σχεδίαση αλγορίθμου ΥΕ Αλγόριθμοι – Βασικές έννοιες ΔΕ Υλοποίηση σε προγραμματιστικό περιβάλλον ΥΕ Στοιχεία δομημένου προγραμματισμού
Δραστηριότητα 4 Ταξινόμηση των στοιχείων μονοδιάστατου πίνακα Ν στοιχείων κατά αύξουσα σειρά με τη μέθοδο «ταξινόμηση φυσαλίδας» (bubble sort) | ΔΕ Σχεδίαση αλγορίθμου ΥΕ Ανάπτυξη αλγορίθμων ΥΕ Έλεγχος αλγορίθμων ΔΕ Υλοποίηση σε προγραμματιστικό περιβάλλον ΥΕ Στοιχεία δομημένου προγραμματισμού

###

### Δραστηριότητα 1: Εφαρμογή βασικών αλγοριθμικών εννοιών για τη δημιουργία απλών προγραμμάτων

Διδακτικές ώρες: 2

Διδακτικοί στόχοι

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

- στην 1α:

§ Ποια είναι η χρησιμότητα των μεταβλητών

§ Να εκχωρούν τιμή σε μεταβλητή

§ Να χρησιμοποιούν τον τύπο της συμβολοσειράς

§ Να εμφανίζουν τα αποτελέσματα ενός προγράμματος.

- στην 1β:

§ Ποια η χρησιμότητα και πώς λειτουργεί μια δομή επανάληψης

§ Να χρησιμοποιούν τον τύπο δεδομένων των ακέραιων αριθμών

§ Να εφαρμόζουν τις αριθμητικές πράξεις

- στην 1γ:

§ Πότε χρησιμοποιείται ένας πίνακας

§ Να διαχειρίζονται (εκχώρηση-ανάκτηση τιμής) τα στοιχεία ενός πίνακα

§ Πώς γίνεται σειριακή σάρωση όλων των στοιχείων ενός πίνακα

- Και τέλος, στην 1δ:

§ Να χρησιμοποιούν τις εμφωλευμένες δομές

§ Να χρησιμοποιούν τις λογικές συνθήκες και τις δομές επιλογής (απόφασης)

§ Να εμφανίζουν τα δεδομένα, διαχωρισμένα με κάποιο χαρακτήρα, στην ίδια γραμμή

§ Να εισάγουν δεδομένα σε ένα πρόγραμμα κατά την εκτέλεσή του

#### Δραστηριότητα 1α: Εκχώρηση τιμών σε μεταβλητές και εμφάνιση του αποτελέσματος

Ζητούμενο

Να κατασκευαστεί ο ψευδοκώδικας του προγράμματος το οποίο εκχωρεί στις μεταβλητές ONOMA, EPWNYMO, HLIKIA, TAKSH, TMHMA τα προσωπικά σας στοιχεία και εμφανίζει τα αποτελέσματα το ένα κάτω από το άλλο στο παράθυρο των αποτελεσμάτων. Τέλος, αποθηκεύστε το πρόγραμμα με το όνομα Ask_1 a.elp, εκτελέστε το και δείτε τα αποτελέσματα.

Ψευδοκώδικας

Αρχή

-Καθαρισμός οθόνης αποτελεσμάτων

-Θέσε ONOMA ίσο με “Εδώ γράψτε το όνομά σας”

-Θέσε EPWNYMO ίσο με “Εδώ γράψτε το επώνυμό σας”

-Θέσε HLIKIA ίσο με “Εδώ γράψτε την ηλικία σας”

-Θέσε TAKSH ίσο με “Εδώ γράψτε την τάξη σας”

-Θέσε TMHMA ίσο με “Εδώ γράψτε το τμήμα σας”

-Εμφάνισε (ONOMA) και άλλαξε γραμμή

-Εμφάνισε (EPWNYMO) και άλλαξε γραμμή

-Εμφάνισε (HLIKIA) και άλλαξε γραμμή

-Εμφάνισε (TAKSH) και άλλαξε γραμμή

-Εμφάνισε (TMHMA) και άλλαξε γραμμή

Τέλος

##### Επέκταση της δραστηριότητας 1α

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

Αρχή

-Καθαρισμός οθόνης αποτελεσμάτων

-Θέσε ONOMA ίσο με “Εδώ γράψτε το όνομά σας”

-Εμφάνισε (ONOMA) και άλλαξε γραμμή

-Θέσε EPWNYMO ίσο με “Εδώ γράψτε το επώνυμό σας”

-Εμφάνισε (EPWNYMO) και άλλαξε γραμμή

-Θέσε HLIKIA ίσο με “Εδώ γράψτε την ηλικία σας”

-Εμφάνισε (HLIKIA) και άλλαξε γραμμή

-Θέσε TAKSH ίσο με “Εδώ γράψτε την τάξη σας”

-Εμφάνισε (TAKSH) και άλλαξε γραμμή

-Θέσε TMHMA ίσο με “Εδώ γράψτε το τμήμα σας”

-Εμφάνισε (TMHMA) και άλλαξε γραμμή

Τέλος

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

Αρχή

-Καθαρισμός οθόνης αποτελεσμάτων

-Θέσε METABLHTH ίσο με “Εδώ γράψτε το όνομά σας”

-Εμφάνισε (METABLHTH) και άλλαξε γραμμή

-Θέσε METABLHTH ίσο με “Εδώ γράψτε το επώνυμό σας”

-Εμφάνισε (METABLHTH) και άλλαξε γραμμή

-Θέσε METABLHTH ίσο με “Εδώ γράψτε την ηλικία σας”

-Εμφάνισε (METABLHTH) και άλλαξε γραμμή

-Θέσε METABLHTH ίσο με “Εδώ γράψτε την τάξη σας”

-Εμφάνισε (METABLHTH) και άλλαξε γραμμή

-Θέσε METABLHTH ίσο με “Εδώ γράψτε το τμήμα σας”

-Εμφάνισε (METABLHTH) και άλλαξε γραμμή

Τέλος

#### Δραστηριότητα 1β: Δομές επανάληψης

Ζητούμενο Α´

Να κατασκευαστεί ο ψευδοκώδικας του προγράμματος που υπολογίζει το τετράγωνο όλων των ακέραιων αριθμών από το 1 έως το 20 και εμφανίζει τα αποτελέσματα, το ένα κάτω από το άλλο. Αποθηκεύστε το πρόγραμμα με το όνομα Ask_1 b_1.elp, εκτελέστε το και δείτε τα αποτελέσματα.

Ψευδοκώδικας

Αρχή

-Καθαρισμός οθόνης αποτελεσμάτων

-Για j από 1 μέχρι 20 κάνε

-Θέσε TETRAGWNO ίσο με j*j

-Εμφάνισε (TETRAGWNO) και άλλαξε γραμμή

ΤέλοςΓια

Τέλος

Ζητούμενο Β´

Να κατασκευαστεί ο ψευδοκώδικας του προγράμματος που υπολογίζει το τετράγωνο όλων των μονών ακέραιων αριθμών από το 1 μέχρι το 20 και εμφανίζει τα αποτελέσματα, το ένα κάτω από το άλλο. Αποθηκεύστε το πρόγραμμα με το όνομα Ask_1 b_2.elp, εκτελέστε το και δείτε τα αποτελέσματα.

Ψευδοκώδικας

Αρχή

-Καθαρισμός οθόνης αποτελεσμάτων

-Για j από 1 μέχρι 20 κάνε

-Θέσε TETRAGWNO ίσο με j*j

-Εμφάνισε (TETRAGWNO) και άλλαξε γραμμή

-Θέσε j ίσο με το άθροισμα του j και του 1

ΤέλοςΓια

Τέλος

Ζητούμενο Γ´

Να κατασκευαστεί ο ψευδοκώδικας του προγράμματος που υπολογίζει το τετράγωνο όλων των ζυγών ακέραιων αριθμών από το 1 μέχρι το 20 και εμφανίζει τα αποτελέσματα, το ένα κάτω από το άλλο. Αποθηκεύστε το πρόγραμμα με το όνομα Ask_1 b_3.elp, εκτελέστε το και δείτε τα αποτελέσματα.

Ψευδοκώδικας

Αρχή

-Καθαρισμός οθόνης αποτελεσμάτων

-Για j από 1 μέχρι 20 κάνε

-Θέσε j ίσο με το άθροισμα του j και του 1

-Θέσε TETRAGWNO ίσο με j*j

-Εμφάνισε (TETRAGWNO) και άλλαξε γραμμή

ΤέλοςΓια

Τέλος

#### Δραστηριότητα 1γ: Πίνακες – Εισαγωγή και ανάκτηση τιμών των στοιχείων

Ζητούμενο

Να κατασκευαστεί ο ψευδοκώδικας του προγράμματος που δημιουργεί έναν κενό πίνακα, με το όνομα PINAKAS, 20 στοιχείων, και στη συνέχεια αναθέτει στα στοιχεία του πίνακα αυτού τα τετράγωνα των ακέραιων αριθμών από 1 μέχρι 20. Τέλος, να γίνεται η εμφάνιση των τιμών όλων των στοιχείων του πίνακα, η μια κάτω από την άλλη. Αποθηκεύστε το πρόγραμμα με το όνομα Ask_1 c.elp, εκτελέστε το και δείτε τα αποτελέσματα.

Ψευδοκώδικας

Αρχή

-Καθαρισμός οθόνης αποτελεσμάτων

-Δήλωση πίνακα PINAK Α S με αριθμό στοιχείων 20

-Για j από 1 μέχρι 20 κάνε

-Θέσε TETRAGWNO ίσο με j*j

-Θέσε PINAK Α S[j] ίσο με TETRAGWNO

ΤέλοςΓια

-Για k από 1 μέχρι 20 κάνε

-Εμφάνισε (PINAK Α S[k]) και άλλαξε γραμμή

ΤέλοςΓια

Τέλος

#### Δραστηριότητα 1δ: Εμφωλευμένες εντολές – Δομές επιλογής – Είσοδος δεδομένων

Ζητούμενο Α´

Να κατασκευαστεί ο ψευδοκώδικας του προγράμματος το οποίο βρίσκει και εμφανίζει σε μια γραμμή (διαχωρίζοντας με «,») όλους τους ακέραιους αριθμούς μεταξύ 20 και 55 που είναι πολλαπλάσια του τρία. Στη συνέχεια, αποθηκεύστε το πρόγραμμα ως Ask_1 d_1.elp και εκτελέστε το για να δείτε τα αποτελέσματα.

Ψευδοκώδικας

Αρχή

-Καθαρισμός οθόνης αποτελεσμάτων

-Θέσε k ίσο με 0

-Δήλωση πίνακα PINAK Α S με αριθμό στοιχείων 55 - 20

-Για j από 20 μέχρι 55 κάνε

-Θέσε YPOLOIPO ίσο με το υπόλοιπο της διαίρεσης j διά του 3

-Αν YPOLOIPO = 0 τότε

-Θέσε k ίσο με k+1

-Θέσε PINAK Α S [k] ίσο με j

ΤέλοςΑν

ΤέλοςΓια

-Για f από 1 μέχρι k κάνε

-Εμφάνισε (PINAK Α S [f])

-Αν (f < k) τότε

-Εμφάνισε (“, ”)

ΤέλοςΑν

ΤέλοςΓια

Τέλος

Ζητούμενο Β´

Να τροποποιηθεί ο ψευδοκώδικας του Ζητουμένου Α´, έτσι ώστε το πρόγραμμα να γίνει πιο δυναμικό: να γίνεται η εύρεση των πολλαπλάσιων ενός τυχαίου αριθμού Χ, τα οποία είναι μεταξύ δύο οποιωνδήποτε ακέραιων αριθμών Α και Β (με Α>Β). Τέλος, αποθηκεύστε το τροποποιημένο πρόγραμμα ως Ask_1 d_2.elp. Εκτελέστε το και δείτε τα αποτελέσματα.

Ψευδοκώδικας

Αρχή

-Καθαρισμός οθόνης αποτελεσμάτων

-Διάβασε Α, Β, Χ

-Θέσε k ίσο με 0

-Δήλωση πίνακα PINAK Α S με αριθμό στοιχείων Β - Α

-Για j από Α μέχρι Β κάνε

-Θέσε YPOLOIPO ίσο με το υπόλοιπο της διαίρεσης j διά του Χ

-Αν YPOLOIPO = 0 τότε

-Θέσε k ίσο με k+1

-Θέσε PINAK Α S [k] ίσο με j

ΤέλοςΑν

ΤέλοςΓια

-Για f από 1 μέχρι k κάνε

-Εμφάνισε (PINAK Α S[f])

-Αν (f < k) τότε

-Εμφάνισε (“, ”)

ΤέλοςΑν

ΤέλοςΓια

Τέλος

### Δραστηριότητα 2: Επίλυση του τριωνύμου Ax2+Bx+C = 0

Διδακτικές ώρες: 2

Διδακτικοί στόχοι

Στη δραστηριότητα αυτή οι μαθητές μαθαίνουν:

§ Να αναλύουν ένα σύνθετο πρόβλημα σε λογικά βήματα.

§ Να δημιουργούν τον αλγόριθμο για την επίλυση ενός μαθηματικού προβλήματος.

§ Να χρησιμοποιούν τις εντολές εκχώρησης (αποτελέσματος αριθμητικών πράξεων και μαθηματικών συναρτήσεων) σε μεταβλητές, καθώς και την εντολή απόφασης.

Ζητούμενο

Να δημιουργηθεί ο αλγόριθμος και στη συνέχεια ο ψευδοκώδικας του προγράμματος που υπολογίζει τις ρίζες του τριωνύμου Ax2+Bx+C = 0. Αποθηκεύστε το πρόγραμμα με το όνομα Ask_2.elp και εκτελέστε το για να δείτε τα αποτελέσματα.

Ψευδοκώδικας

Αρχή

-Καθαρισμός οθόνης αποτελεσμάτων

-Διάβασε A, B, C

-Θέσε DIAKRINOYSA ίσο με (B*B) - 4*A*C

-Αν DIAKRINOYSA<0 τότε

-Εμφάνισε ( "Δεν υπάρχουν πραγματικές ρίζες" )

ΤέλοςΑν

-Αν DIAKRINOYSA=0 τότε

-Θέσε RIZA ίσο με το πηλίκο του -B διά του 2*A

-Εμφάνισε ( "Υπάρχει μια διπλή ρίζα : ", RIZA )

ΤέλοςΑν

-Αν DIAKRINOYSA>0 τότε

-Θέσε DIAKRINOYSA_RIZA ίσο με την τετραγωνική ρίζα του DIAKRINOYSA

-Θέσε RIZA1 ίσο με (-B+DIAKRINOYSA_RIZA)/(2*A)

-Θέσε RIZA2 ίσο με (-B-DIAKRINOYSA_RIZA)/(2*A)

-Εμφάνισε ( "Οι πραγματικές ρίζες είναι: ", RIZA1, " και ", RIZA2 )

ΤέλοςΑν

Τέλος

### Δραστηριότητα 3: Δημιουργία σχήματος «δέντρου» που αποτελείται από X αριθμό γραμμών, με χρήση ενός χαρακτήρα (κάθετη γραμμή «|»).

Διδακτικές ώρες: 2

Διδακτικοί στόχοι

Στη δραστηριότητα αυτή οι μαθητές μαθαίνουν:

§ Να δημιουργούν τον αλγόριθμο για το σχεδιασμό ενός παραμετροποιημένου γραφικού σχήματος.

§ Να χρησιμοποιούν τις εντολές εκχώρησης αποτελέσματος αριθμητικών πράξεων σε μεταβλητές, καθώς και τις εμφωλευμένες εντολές επανάληψης.

Ζητούμενο

Να δημιουργηθεί ο αλγόριθμος και στη συνέχεια ο ψευδοκώδικας του προγράμματος που σχηματίζει ένα δέντρο X γραμμών από το χαρακτήρα pipeline «|». Αποθηκεύστε το πρόγραμμα με το όνομα Ask_3.elp. Εκτελέστε το και δείτε τα αποτελέσματα.

Ψευδοκώδικας

Αρχή

-Καθαρισμός οθόνης αποτελεσμάτων

-Διάβασε X

-Για i από 1 μέχρι X κάνε

-Θέσε ΚΕΝΑ ίσο με X-i

-Θέσε CHARACTERS ίσο με (2*i)-1

-Για j από 1 μέχρι ΚΕΝΑ κάνε

-Εμφάνισε (“ ”)

ΤέλοςΓια

-Για k από 1 μέχρι CHARACTERS κάνε

-Εμφάνισε (“|”)

ΤέλοςΓια

-Εμφάνισε (“”) και άλλαξε γραμμή

ΤέλοςΓια

Τέλος

##### Επέκταση της δραστηριότητας 3

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

### Δραστηριότητα 4: Ταξινόμηση των στοιχείων μονοδιάστατου πίνακα Ν στοιχείων κατά αύξουσα σειρά με τη μέθοδο «ταξινόμηση φυσαλίδας» (bubble sort)

Διδακτικές ώρες: 2

Διδακτικοί στόχοι

Στόχος της δραστηριότητας αυτής είναι:

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

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

Ζητούμενο

Να μελετήσετε τον αλγόριθμο «ταξινόμηση φυσαλίδας» (bubble sort) και στη συνέχεια να κατασκευάσετε τον ψευδοκώδικα που εφαρμόζει τον αλγόριθμο αυτό για την ταξινόμηση των στοιχείων ενός πίνακα Α που περιέχει Ν στοιχεία, όπου Ν ακέραιος αριθμός ο οποίος εισάγεται από το πληκτρολόγιο κατά την εκτέλεση του προγράμματος. Στην αρχή του προγράμματος εισάγονται στα στοιχεία του πίνακα Α τυχαίοι αριθμοί μεταξύ του 1 και του 450. Αποθηκεύστε το πρόγραμμα με το όνομα Ask_4.elp. Εκτελέστε το και δείτε τα αποτελέσματα.

Ψευδοκώδικας

Αρχή

-Καθαρισμός οθόνης αποτελεσμάτων

-Διάβασε Ν

-Δήλωση πίνακα Α με αριθμό στοιχείων Ν

-Για i από 1 μέχρι N κάνε

-Θέσε A[i] ίσο με τυχαίο αριθμό από 1 έως 450

-Εμφάνισε (A[i], “ - “)

ΤέλοςΓια

-Εμφάνισε ( “” ) και άλλαξε γραμμή

-Εμφάνισε ( “” ) και άλλαξε γραμμή

-Για i από 1 μέχρι Ν-2 κάνε

-Για j από 1 μέχρι N-i κάνε

-Αν A[j] > A[j+1] τότε

-Θέσε TEMP ίσο με A[j]

-Θέσε A[j] ίσο με A[j+1]

-Θέσε A[j+1] ίσο με TEMP

ΤέλοςΑν

ΤέλοςΓια

ΤέλοςΓια

-Για i από 1 μέχρι N κάνε

-Εμφάνισε (A[i], “ - “)

ΤέλοςΓια

Τέλος

##### Επέκταση της δραστηριότητας 4

Οι μαθητές καλούνται να απαντήσουν στα ερωτήματα:

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

Οι μαθητές θα πρέπει να σκεφτούν να τροποποιήσουν τον ψευδοκώδικα, προσθέτοντας τις υπογραμμισμένες εντολές στον ψευδοκώδικα που ακολουθεί:

Αρχή

-Καθαρισμός οθόνης αποτελεσμάτων

-Διάβασε Ν

-Δήλωση πίνακα Α με αριθμό στοιχείων Ν

-Για i από 1 μέχρι N κάνε

-Θέσε A[i] ίσο με τυχαίο αριθμό από 1 έως 450

-Εμφάνισε (A[i], “ - “)

ΤέλοςΓια

-Εμφάνισε ( “” ) και άλλαξε γραμμή

-Εμφάνισε ( “” ) και άλλαξε γραμμή

-Θέσε Sygriseis ίσο με 0

-Για i από 1 μέχρι Ν-2 κάνε

-Για j από 1 μέχρι N-I κάνε

-Θέσε Sygriseis ίσο με Sygriseis + 1

-Αν A[j] > A[j+1]

-Θέσε TEMP ίσο με A[j]

-Θέσε A[j] ίσο με A[j+1]

-Θέσε A[j+1] ίσο με TEMP

ΤέλοςΑν

ΤέλοςΓια

ΤέλοςΓια

-Εμφάνισε (“Ο αλγόριθμος ταξινόμηση φυσαλίδας κάνει: ”, Sygriseis , “ συγκρίσεις στοιχείων”) και άλλαξε γραμμή

-Για i από 1 μέχρι N κάνε

-Εμφάνισε (A[i], “ - “)

ΤέλοςΓια

Τέλος

Β. Με ποιον τρόπο μπορεί να μετρηθεί το πλήθος των μεταθέσεων των στοιχείων;

Οι μαθητές θα πρέπει να σκεφτούν να τροποποιήσουν τον ψευδοκώδικα, προσθέτοντας τις υπογραμμισμένες εντολές, όπως φαίνεται στον επόμενο ψευδοκώδικα:

Αρχή

-Καθαρισμός οθόνης αποτελεσμάτων

-Διάβασε Ν

-Δήλωση πίνακα Α με αριθμό στοιχείων Ν

-Για i από 1 μέχρι N κάνε

-Θέσε A[i] ίσο με τυχαίο αριθμό από 1 έως 450

-Εμφάνισε (A[i], “ - “)

ΤέλοςΓια

-Εμφάνισε ( “” ) και άλλαξε γραμμή

-Εμφάνισε ( “” ) και άλλαξε γραμμή

-Θέσε Sygriseis ίσο με 0

-Θέσε Metatheseis ίσο με 0

-Για i από 1 μέχρι Ν-2 κάνε

-Για j από 1 μέχρι N-i κάνε

-Θέσε Sygriseis ίσο με Sygriseis + 1

-Αν A[j] > A[j+1]

-Θέσε Metatheseis ίσο με Metatheseis + 1

-Θέσε TEMP ίσο με A[j]

-Θέσε A[j] ίσο με A[j+1]

-Θέσε A[j+1] ίσο με TEMP

ΤέλοςΑν

ΤέλοςΓια

ΤέλοςΓια

-Εμφάνισε (“Ο αλγόριθμος ταξινόμηση φυσαλίδας κάνει: ”, Sygriseis , “συγκρίσεις στοιχείων”) και άλλαξε γραμμή

-Εμφάνισε (“Για την ταξινόμηση του πίνακα Α έγιναν: ”, Metatheseis, “ μεταθέσεις στοιχείων”) και άλλαξε γραμμή

-Για i από 1 μέχρι N κάνε

-Εμφάνισε (A[i], “ - “)

ΤέλοςΓια

Τέλος

[1] Στο ήδη έτοιμο πρόγραμμα μπορεί να γίνουν μετακινήσεις γραμμών σε άλλες θέσεις στο πεδίο του ψευδοκώδικα. Βλ. Εγχειρίδιο χρήσης.