ΤΕΣΤ (ΑΣΚΗΣΕΙΣ) ONLINE
41 Tests / Διαγωνίσματα

Ενότητα 6 – Δραστηριότητες – Σελίδα 66-67 – ΠΛΗΡΟΦΟΡΙΚΗ Β΄ ΓΥΜΝΑΣΙΟΥ – Απαντήσεις – Λύσεις

(Πηγή: Βιβλίο Μαθητή, Πληροφορική Β΄ Γυμνασίου, Κεφάλαιο 6 «Δομές Δεδομένων», σελ. 63-67 (§6.1-6.3). Το κεφάλαιο ΔΕΝ έχει δικό του "Ερωτήσεις"/"Ασκήσεις" section στο ΠΕΡΙΕΧΟΜΕΝΑ και δεν είχε κανένα lyseis αρχείο από τη Φάση 1. Οι 5 «Δραστηριότητα 1-5» παρακάτω είναι τοπικά αριθμημένα κουτιά ενσωματωμένα μέσα στη θεωρία του §6.3 «Λειτουργίες λιστών», αμέσως μετά το Παράδειγμα 3 «Οι έσχατοι έσονται πρώτοι». Οι εκφωνήσεις είναι αυτούσιες από το σχολικό βιβλίο, με μία μικρή διόρθωση διατύπωσης έναντι του πηγαίου JSON στη Δραστηριότητα 2, επιβεβαιωμένη οπτικά πάνω στο PDF.)

Δραστηριότητες Κεφαλαίου 6

Δραστηριότητα 1 (σελ. 66)

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

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

Λύση — τα 7 πλακίδια λιστών:

  1. «πρόσθεσε [πράγμα] στη λίστα Οι φίλοι μου» → Προσθήκη στοιχείου στο τέλος της λίστας.
  2. «διάγραψε 1 από λίστα Οι φίλοι μου» → Διαγραφή στοιχείου της λίστας από τη συγκεκριμένη θέση που δείχνει ο δείκτης (εδώ τη θέση 1).
  3. «βάλε [πράγμα] στη θέση 1 λίστας Οι φίλοι μου» → Εισαγωγή στοιχείου σε συγκεκριμένη θέση της λίστας (εδώ στη θέση 1).
  4. «αντικατέστησε στοιχείο 1 λίστας Οι φίλοι μου με [πράγμα]» → Αντικατάσταση στοιχείου με άλλο στοιχείο σε συγκεκριμένη θέση.
  5. «στοιχείο 3 λίστας Οι φίλοι μου» → Επιστρέφει το στοιχείο που βρίσκεται στη θέση που θέλουμε (εδώ το 3ο στοιχείο).
  6. «Οι φίλοι μου περιέχει [πράγμα];» → Έλεγχος για την ύπαρξη στοιχείου σε λίστα· το αποτέλεσμα είναι τύπου Boolean (true/false, αληθές/ψευδές).
  7. «μήκος λίστας Οι φίλοι μου» → Επιστρέφει το μήκος της λίστας, δηλαδή το πλήθος των αποθηκευμένων σε αυτή στοιχείων.

Οργάνωση στο «κεντρικό σημείο»: τίτλος «ΛΙΣΤΑ – Πλακίδια χειρισμού» στο κέντρο και γύρω του τα 7 πλακίδια, προαιρετικά ομαδοποιημένα σε (α) πλακίδια που τροποποιούν τη λίστα: πρόσθεσε, διάγραψε, βάλε στη θέση, αντικατέστησε στοιχείο, (β) πλακίδια που διαβάζουν/ελέγχουν τη λίστα χωρίς να την αλλάζουν: στοιχείο Ν, περιέχει..., μήκος λίστας, και (γ) η βοηθητική εντολή «Δημιουργία Λίστας» (καρτέλα Μεταβλητές) που δημιουργεί τη λίστα πριν χρησιμοποιηθεί οποιοδήποτε από τα 7 πλακίδια.

Απάντηση: 7 πλακίδια συνολικά — πρόσθεσε, διάγραψε, βάλε στη θέση, αντικατέστησε στοιχείο, στοιχείο Ν, περιέχει...;, μήκος λίστας — καθένα με τη λειτουργία του όπως παραπάνω.

Πρόσεξε:

  • Η «Δημιουργία Λίστας» δεν είναι πλακίδιο χειρισμού μιας ήδη υπάρχουσας λίστας — δημιουργεί τη μεταβλητή-λίστα, δεν μετράει στα 7 πλακίδια λειτουργιών.
  • Η φυσική «τοποθέτηση στο κεντρικό σημείο» είναι δραστηριότητα οργάνωσης/παρουσίασης χωρίς μοναδική σωστή διάταξη, αλλά το περιεχόμενο (ποια πλακίδια + ποια λειτουργία) είναι πλήρως καθορισμένο από τη θεωρία.

Δραστηριότητα 2 (σελ. 66)

  1. Έστω ότι, στο παράδειγμα 2, την τελευταία στιγμή η Ηλέκτρα ενημερώνει ότι δε θα μπορέσει να έρθει στο πάρτι σας. Αφαιρέστε την από τη λίστα.
  2. Στη συνέχεια σας ενημερώνει η φίλη σας, η Αθηνά, ότι θα τα καταφέρει τελικά να έρθει και θα φέρει και την αδερφή της, τη Μυρσίνη. Να τις προσθέσετε στη λίστα. Πόσους καλεσμένους έχετε τώρα;

Σκέψη / Μεθοδολογία: Ξεκινάμε από τη γνωστή λίστα του Παραδείγματος 2: «Οι φίλοι μου» = [1.Φανή, 2.Εβελίνα, 3.Βανέσα, 4.Ηλέκτρα, 5.Οδυσσέας], μήκος 5. Η Ηλέκτρα είναι στη θέση 4 — «διάγραψε 4 από λίστα». Η Αθηνά δεν βρισκόταν καθόλου στην αρχική λίστα, οπότε η προσθήκη της (και της Μυρσίνης) είναι απλή προσθήκη δύο νέων ονομάτων στο τέλος, με δύο πλακίδια «πρόσθεσε».

Λύση:

  • Αρχική λίστα: 1.Φανή, 2.Εβελίνα, 3.Βανέσα, 4.Ηλέκτρα, 5.Οδυσσέας — μήκος 5.
  • Βήμα 1: «διάγραψε 4 από λίστα Οι φίλοι μου» → 1.Φανή, 2.Εβελίνα, 3.Βανέσα, 4.Οδυσσέας — μήκος 4 (ο Οδυσσέας μετακινείται από τη θέση 5 στη θέση 4).
  • Βήμα 2: «πρόσθεσε Αθηνά στη λίστα» → …, 5.Αθηνά — μήκος 5. «πρόσθεσε Μυρσίνη στη λίστα» → …, 6.Μυρσίνη — μήκος 6.
  • Επαληθεύτηκε με εκτέλεση της ίδιας ακολουθίας σε Python: τελική λίστα ['Φανή','Εβελίνα','Βανέσα','Οδυσσέας','Αθηνά','Μυρσίνη'], μήκους 6.

Απάντηση: Τελική λίστα: 1.Φανή, 2.Εβελίνα, 3.Βανέσα, 4.Οδυσσέας, 5.Αθηνά, 6.Μυρσίνη. Έχετε τώρα 6 καλεσμένους.

Πρόσεξε:

  • Μετά τη διαγραφή, όλα τα επόμενα στοιχεία μετατοπίζονται μία θέση προς τα πάνω — το μήκος μειώνεται κατά 1, δεν μένει κενή θέση.
  • Η Αθηνά δεν ήταν μέλος της αρχικής λίστας — δεν αντικαθιστά κανέναν, προστίθεται μαζί με τη Μυρσίνη ως 2 εντελώς νέα ονόματα.
  • 6 = 5 − 1 (Ηλέκτρα) + 2 (Αθηνά, Μυρσίνη), όχι απλή πρόσθεση 5+2=7.

Δραστηριότητα 3 (σελ. 67)

Δημιουργήστε μια λίστα με τα ζώα που σας αρέσουν. Ονομάστε την Animals.

Σκέψη / Μεθοδολογία: Προσωπικού/δημιουργικού χαρακτήρα δραστηριότητα (τα ζώα διαφέρουν ανά μαθητή) — δίνουμε σαφή, ελέγξιμα βήματα υλοποίησης στο Scratch, ίδια λογική με το χτίσιμο της λίστας «Οι φίλοι μου» στο Παράδειγμα 2.

Λύση:

  1. Στην καρτέλα «Μεταβλητές», «Δημιουργία Λίστας» με όνομα «Animals» (ακριβώς όπως ζητά η εκφώνηση), επιλογή «Για όλα τα αντικείμενα».
  2. Πλακίδιο «πρόσθεσε [όνομα ζώου] στη λίστα Animals» μία φορά για κάθε ζώο.
  3. Ενδεικτικό παράδειγμα: «πρόσθεσε Σκύλος στη λίστα Animals», «πρόσθεσε Γάτα στη λίστα Animals», «πρόσθεσε Δελφίνι στη λίστα Animals», «πρόσθεσε Ελέφαντας στη λίστα Animals», «πρόσθεσε Λιοντάρι στη λίστα Animals».
  4. Αποτέλεσμα: λίστα «Animals» = 1.Σκύλος, 2.Γάτα, 3.Δελφίνι, 4.Ελέφαντας, 5.Λιοντάρι, μήκος 5.

Απάντηση (ενδεικτική): Λίστα «Animals» με τα αγαπημένα ζώα του μαθητή, χτισμένη με «Δημιουργία Λίστας» + διαδοχικά πλακίδια «πρόσθεσε», ίδια μέθοδο με το Παράδειγμα 2 του βιβλίου.

Πρόσεξε:

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

Δραστηριότητα 4 (σελ. 67)

Δημιουργήστε μια λίστα με όλους του ζυγούς αριθμούς που είναι μικρότεροι του 10. Στη συνέχεια δημιουργήστε μια δεύτερη λίστα με όλους τους μονούς αριθμούς που είναι μικρότεροι του 100.

Σκέψη / Μεθοδολογία: Θεωρούμε τους φυσικούς αριθμούς (0, 1, 2, …), οπότε το 0 μετράει ως ζυγός αριθμός μικρότερος του 10. Αντί για πολλά χειροκίνητα πλακίδια «πρόσθεσε», χτίζουμε κάθε λίστα αλγοριθμικά με επανάληψη + έλεγχο υπολοίπου διαίρεσης δια 2 (mod 2): υπόλοιπο 0 → ζυγός, υπόλοιπο 1 → μονός.

Λύση:

Λίστα «Ζυγοί» (ζυγοί < 10):

Δημιουργία Λίστας «Ζυγοί»
όρισε αριθμός σε 0
επανάλαβε μέχρι αριθμός = 10
    αν (αριθμός mod 2 = 0) τότε πρόσθεσε αριθμός στη λίστα Ζυγοί
    άλλαξε αριθμός κατά 1

Αποτέλεσμα: [0, 2, 4, 6, 8], μήκος 5.

Λίστα «Μονοί» (μονοί < 100), ίδια λογική:

Δημιουργία Λίστας «Μονοί»
όρισε αριθμός σε 0
επανάλαβε μέχρι αριθμός = 100
    αν (αριθμός mod 2 = 1) τότε πρόσθεσε αριθμός στη λίστα Μονοί
    άλλαξε αριθμός κατά 1

Αποτέλεσμα: [1, 3, 5, 7, 9, …, 97, 99], μήκος 50 (επαληθεύτηκε με εκτέλεση Python).

Απάντηση: Λίστα «Ζυγοί»: [0, 2, 4, 6, 8] (μήκος 5). Λίστα «Μονοί»: [1, 3, …, 97, 99] (μήκος 50).

Πρόσεξε:

  • Αν θεωρήσουμε μόνο θετικούς ζυγούς (χωρίς το 0), η λίστα «Ζυγοί» γίνεται [2, 4, 6, 8], μήκος 4 — και οι δύο συμβάσεις είναι αποδεκτές, αρκεί να δηλωθεί ρητά. Στους μονούς δεν υπάρχει τέτοιο δίλημμα (το 0 δεν είναι μονός).
  • Το «πρόσθεσε» πρέπει να είναι ΜΕΣΑ στο «αν...τότε» — αν μπει έξω, θα προστεθούν όλοι οι αριθμοί.
  • «Μικρότεροι του 10/100» αποκλείει το ίδιο το 10 και το 100 (γνήσια ανισότητα): τελευταίο στοιχείο 8 (όχι 10) και 99 (όχι 100) αντίστοιχα.

Δραστηριότητα 5 (σελ. 67)

Η ακολουθία Fibonacci ξεκινάει με τους αριθμούς 0 και 1 και, στη συνέχεια, κάθε επόμενος αριθμός είναι το άθροισμα των δυο προηγούμενων, δηλαδή 0, 1, 1, 2, 3, 5, 8, 13 κ.ο.κ. Να δημιουργήσετε μια λίστα με τους πρώτους 30 αριθμούς της ακολουθίας Fibonacci.

Σκέψη / Μεθοδολογία: Οι δύο πρώτοι όροι (0 και 1) μπαίνουν χειροκίνητα με δύο πλακίδια «πρόσθεσε». Κάθε επόμενος όρος είναι το άθροισμα των δύο αμέσως προηγούμενων στοιχείων της ίδιας λίστας: «στοιχείο (μήκος λίστας) της Fibonacci» + «στοιχείο (μήκος λίστας − 1) της Fibonacci». Χρειαζόμαστε 30 όρους συνολικά, άρα 28 ακόμη επαναλήψεις μετά τους 2 αρχικούς.

Λύση:

Δημιουργία Λίστας «Fibonacci»
πρόσθεσε 0 στη λίστα Fibonacci
πρόσθεσε 1 στη λίστα Fibonacci
επανάλαβε 28 φορές
    πρόσθεσε (στοιχείο (μήκος λίστας Fibonacci) της Fibonacci + στοιχείο (μήκος λίστας Fibonacci − 1) της Fibonacci) στη λίστα Fibonacci

Επαλήθευση με εκτέλεση Python: παράγονται ακριβώς 30 όροι:

0, 1, 1, 2, 3, 5, 8, 13, 21, 34, 55, 89, 144, 233, 377, 610, 987, 1597, 2584, 4181, 6765, 10946, 17711, 28657, 46368, 75025, 121393, 196418, 317811, 514229.

Απάντηση: Λίστα «Fibonacci» με τους πρώτους 30 όρους όπως παραπάνω (30ός όρος = 514.229).

Πρόσεξε:

  • «Οι πρώτοι 30 αριθμοί» περιλαμβάνει και τους δύο αρχικούς όρους 0 και 1 — δεν είναι 30 όροι ΜΕΤΑ από αυτούς (που θα έδινε 32 όρους).
  • Ο όρος «1» εμφανίζεται δύο φορές στη σειρά (2ος και 3ος όρος) — δεν είναι λάθος, προκύπτει από τον ίδιο τον ορισμό (0+1=1).
  • Το «στοιχείο (μήκος λίστας) της Fibonacci» αναφέρεται πάντα στο τελευταίο στοιχείο ΤΗ ΣΤΙΓΜΗ εκτέλεσης — η νέα προσθήκη γίνεται ΜΕΤΑ τον υπολογισμό του αθροίσματος.
 ΣΧΟΛΙΚΟ ΒΙΒΛΙΟ