Αποστολέας Θέμα: Η επιλογή της Python ως γλώσσα προγραμματισμού στην δευτεροβάθμια εκπαίδευση  (Αναγνώστηκε 7615 φορές)

ApoAntonis

  • Βετεράνος
  • ****
  • Μηνύματα: 82
@evry
Επίσης η παρακάτω αναζήτηση στοιχείου σε πίνακα δυο διαστάσεων η οποία τερματίζει αμέσως μόλις διαπιστώσει την ύπαρξη
Κώδικας: Python
  1. def search( Matrix, key )
  2.   for row in Matrix:
  3.     for item in row:
  4.       if item == key:
  5.         return True
  6.  
  7.   return False
ειναι πιο κοντά στην αλγοριθμική σκέψη ναι ή όχι?Ένας άνθρωπος που ελέγχει αν υπάρχει ένα αντικείμενο σε ένα σύνολο αντικείμενων δεν θα σταματήσει αμέσως μόλις το βρει? Break θα κάνει, δεν θα κάτσει να ψάχνει αν κάποια συνθήκη ή κάποιος μετρητής άλλαξε τιμή!
 Για δοκιμάστε να κάνετε το παραπάνω σε ΓΛΩΣΣΑ, να δούμε πόσο "αλγοριθμικό" θα είναι.


Μπορεί και να έχω ξαναρωτήσει, όμως επανάληψη μήτηρ μαθήσεως οπότε,
με ποιό σκεπτικό δεν παρουσιάζεται η αναζήτηση κατά αυτό τον τρόπο στο βιβλίο ΕΠΑΛ; Θυμάμαι σωστά ότι υπήρχαν αντιδράσεις;
Το αιτιολογικό τους δεν θυμάμαι.
Για να το γράψω και καθαρότερα, με αυτή την παρουσίαση των αλγορίθμων (στο ΕΠΑΛ) δεν γίνεται καλή διαχείριση των δυνατοτήτων της γλώσσας, απλώς έγινε μετάφραση σε Python.
Πως θα εξασφαλιστεί ότι αυτό δεν θα γίνει και με μια πιθανή εισαγωγή της Python στο ΓΕΛ;

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

Και ένα τεχνικό: Υπάρχει τρόπος να πάρουμε τον τύπο των στοιχείων μιας συλλογής; Εννοώ χωρίς να τα κοιτάξουμε ένα ένα.

Αφού πήρα σβάρνα τις ερωτήσεις θα ήθελα να ρωτήσω αν το ερώτημα Δ2 2019 στις επαναληπτικές ΕΠΑΛ
(βλ. μνμ #78) βαθμολογείται με τις ίδιες μονάδες η σειριακή με την δυαδική αναζήτηση.
Και τελευταίο αν αυτά τα δύο είναι ισοδύναμα βαθμολογικά, αλλά κυρίως αν είναι προγραμματιστικά ισοδύναμα:

Κώδικας: [Επιλογή]
#v1
position=search(A,key)

#v2
if key in A:
   position=search(A,key)

evry

  • Γενικός διαχειριστής
  • *****
  • Μηνύματα: 3391
  • to Iterate is human to Recurse divine
@apoantonis
Σχετικά με τη χρήση της break και της return έχεις δίκιο. Έγινε μια προσπάθεια να μπει η Python στο ΕΠΑΛ αλλά να μην αλλάξουμε εντελώς τη φιλοσοφία του μαθήματος. Εγώ διαφωνούσα με αυτό αλλά οι αποφάσεις σε μια συγγραφική ομάδα είναι συλλογικές και πρέπει να τις σέβεσαι και να τις στηρίζεις. Εκ των υστέρων όμως φάνηκε ότι δεν είχα δίκιο γιατί δεν αρκεί να εισάγεις κάτι που είναι επιστημονικά ορθό αλλά θα πρέπει να ξέρεις και σε τι ακροατήριο απευθύνεσαι. Αν οι εκπαιδευτικοί δεν είναι έτοιμοι να δεχτούν και να υιοθετήσουν αυτές τις αλλαγές τότε η προσπάθεια είναι καταδικασμένη σε αποτυχία. Να θυμίσω ότι την πρώτη χρονιά που είχε μπει η Python κάποιοι συνάδελφοι συνέχισαν να κάνουν Pascal στη Β' Λυκείου με αποτέλεσμα τα παιδιά αυτά όταν πήγαν στην Γ να πρέπει να κάνουν τα πάντα από την αρχή. Τις αντιδράσεις αυτές τις έζησα και από κοντά όταν μου ζητήθηκε να επιμορφώσω  περίπου 400 εκπαιδευτικούς Πειραιά και Δ Αθήνας. Το ενδιαφέρον ήταν ότι οι συνάδελφοι που δουλεύαν σε ΕΠΑΛ έδειξαν πολύ ενδιαφέρον. Αυτοί όμως που δεν ήθελαν να ακούσουν με τίποτα για Python ήταν οι συνάδελφοι των Λυκείων και αυτό μου είχε κάνει εντύπωση.

Τότε κατάλαβα ότι κάποιες αλλαγές πρέπει να γίνονται σταδιακά και όχι απότομα, γιατί υπήρχαν πάρα πολλές αντιδράσεις για την εισαγωγή της Python. Δυστυχώς πολλοί συνάδελφοι έχουν κάποια στερεότυπα στη διδασκαλία τους (ΓΛΩΣΣΑ, Logo, Visual Basic, Word, Ramtype κλπ) τα οποία δεν αλλάζουν με τίποτα και είναι δύσκολο να πειστούν ότι το μάθημα της Πληροφορικής θα έπρεπε να ακολουθεί τις εξελίξεις ώστε να παραμένει σύγχρονο.
Άρα δε νομίζω ότι τότε ήταν ώριμες οι συνθήκες για κάτι τέτοιο. Ελπίζω ότι σε μια μελλοντική αναμόρφωση του μαθήματος θα πάμε ένα βήμα ακόμα πιο πέρα, και θα διορθωθούν πολλά και στο βιβλίο και στο πρόγραμμα σπουδών.

Για το ερώτημα με τη βαθμολόγηση δεν βαθμολογώ σε ΕΠΑΛ και δεν ξέρω αλλά υποθέτω ότι αφού απαντάς στο ερώτημα σωστά από πλευράς ορθότητας και δεν υπάρχει θέμα απόδοσης από την εκφώνηση δεν μπορείς να κόψεις.
Αν αναφέρεσαι στο γεγονός ότι μπορεί ο μαθητής να χρησιμοποιήσεις τον τελεστή in για να αποφύγει να κάνει αναζήτηση, τότε θα πρέπει αυτό ο θεματοδότης να το έχει υπόψη του και να θέσει το θέμα έτσι ώστε να μην μπορεί να χρησιμοποιηθεί η in.
« Τελευταία τροποποίηση: 28 Φεβ 2020, 09:04:30 μμ από evry »
What I cannot create I do not understand -- Richard Feynman
http://evripides.mysch.gr

George Eco

  • Δεινόσαυρος
  • *****
  • Μηνύματα: 190
Παραθέτω το παρακάτω, ως αναφορά στο γιατί ΟΧΙ σε θεωτητική γλώσσα, αλλά ναι σε μία κανονική κι ορθά ορισμένη, με σωστό ορισμό κατά τα πλαίσια του μαθήματος.

https://alkisg.mysch.gr/steki/index.php?topic=8141.msg89347#msg89347

ilias_s

  • Δεινόσαυρος
  • *****
  • Μηνύματα: 363
Να ξεκαθαρίσουμε μερικά πράγματα?

1) Η ΓΛΩΣΣΑ δεν είναι εξελληνισμένη Pascal καθώς η 2η έχει τρομερά περισσότερες δυνατότητες σχεδόν σε όλα τα πεδία. Η ΓΛΩΣΣΑ θυμίζει τόσο Pascal όσο και GW-BASIC μόνο που σε ορισμένα πράγματα η GW-BASIC πάλι έχει περισσότερες δυνατότητες..!

2) Σε περιβάλλον σχολείου η ΑΕΠΠ (και η Πληροφορική Ο.Π) είναι εργαστηριακό μάθημα... Κάτι διάβασα, κάπου εδώ, για το τι γίνεται "στο χαρτί".

3) indentation της python στο χαρτί... βλ. εξέταση (πανελλαδικά) της COBOL σε χαρτί πριν το 1999 (βαρέθηκα να το λέω)

4) Στις εξετάσεις υπάρχει συγκεκριμένη ύλη. Σε περίπτωση που κάποιος μαθητής λύσει άσκηση με χρήση βιβλιοθήκης που είναι υπαρκτή μεν αλλά εκτός ύλης δε, κάνουμε... ακριβώς ότι θα κάναμε αν κάποιος σε ΓΛΩΣΣΑ χρησιμοποιήσει το ΚΑΛΕΣΕ ΑΝΤΙΜΕΤΑΘΕΣΗ(χ,ψ) ή μία_άλλη_μαγική_συνάρτηση() που έφτιαξε ένας γνωστός του μπάρμπα του... χωρίς να την ορίσει (δεν αναφέρεται μέσα στην ύλη άρα δεν υπάρχει ...τουλάχιστον για εμάς).

Αν δεν μας κάνει η python ας βρούμε μία άλλη που να μας κάνει καλύτερα. Ο προγραμματισμός διδάσκονταν παγκοσμίως (αλλά και στην Ελλάδα) πριν κάποιος σκαρφιστεί τη ΓΛΩΣΣΑ στα τέλη του '90.

Τέλος πάντων, αν καταλήγουμε ότι η ΓΛΩΣΣΑ είναι ό,τι καλύτερο έχει βγει για τη διδασκαλία προγραμματισμού ας την κρατήσουμε..! Όσο το μάθημα παραμένει στάσιμο λόγω της ΓΛΩΣΣΑΣ απλά θα αφήνει το "τρένο της εξέλιξης" να φύγει πιο μακριά. Αν πιστεύετε πως κάποιος θα κερδίσει από αυτό μακροπρόθεσμα καλώς πράττουμε!!!

evry

  • Γενικός διαχειριστής
  • *****
  • Μηνύματα: 3391
  • to Iterate is human to Recurse divine
Είσαι σίγουρος? Γιατί νομίζω ότι κανένα μάθημα πληροφορικής στο Λύκειο δεν έχει πλέον τον χαρακτηρισμό "εργαστηριακό" για να μην μπαίνουν 2 καθηγητές.
Τώρα η διατύπωση είναι πως το μάθημα διδάσκεται στο εργαστήριο ή κάτι τέτοιο.

2) Σε περιβάλλον σχολείου η ΑΕΠΠ (και η Πληροφορική Ο.Π) είναι εργαστηριακό μάθημα... Κάτι διάβασα, κάπου εδώ, για το τι γίνεται "στο χαρτί".
« Τελευταία τροποποίηση: 29 Φεβ 2020, 06:34:26 μμ από evry »
What I cannot create I do not understand -- Richard Feynman
http://evripides.mysch.gr

petrosp13

  • Ομάδα Νέου Λυκείου
  • *
  • Μηνύματα: 2279
4) Στις εξετάσεις υπάρχει συγκεκριμένη ύλη. Σε περίπτωση που κάποιος μαθητής λύσει άσκηση με χρήση βιβλιοθήκης που είναι υπαρκτή μεν αλλά εκτός ύλης δε, κάνουμε... ακριβώς ότι θα κάναμε αν κάποιος σε ΓΛΩΣΣΑ χρησιμοποιήσει το ΚΑΛΕΣΕ ΑΝΤΙΜΕΤΑΘΕΣΗ(χ,ψ) ή μία_άλλη_μαγική_συνάρτηση() που έφτιαξε ένας γνωστός του μπάρμπα του... χωρίς να την ορίσει (δεν αναφέρεται μέσα στην ύλη άρα δεν υπάρχει ...τουλάχιστον για εμάς).

Εγώ δεν μίλησα για βιβλιοθήκη αλλά για σύνταξη απλής εντολής
Στην Python μπορώ να αντιμεταθέσω έτσι
x,y=y,x
Εγώ δεν το γνωρίζω, το βιβλίο δεν το αναφέρει, οι βαθμολογητές δεν το γνωρίζουν
Ο μαθητής το έχει κάνει σε πραγματικό περιβάλλον μόνος του
Τι κάνουμε;
Παπαδόπουλος Πέτρος
Καθηγητής Πληροφορικής

evry

  • Γενικός διαχειριστής
  • *****
  • Μηνύματα: 3391
  • to Iterate is human to Recurse divine
Αυτό που θα έκανες αν κάποιος μαθητής σου έδινε την αναδρομική έκδοση του αλγορίθμου της δυαδικής αναζήτησης που είναι εκτός ύλης και
μάλιστα υπάρχει και στο βιβλίο.

Εγώ δεν μίλησα για βιβλιοθήκη αλλά για σύνταξη απλής εντολής
Στην Python μπορώ να αντιμεταθέσω έτσι
x,y=y,x
Εγώ δεν το γνωρίζω, το βιβλίο δεν το αναφέρει, οι βαθμολογητές δεν το γνωρίζουν
Ο μαθητής το έχει κάνει σε πραγματικό περιβάλλον μόνος του
Τι κάνουμε;
What I cannot create I do not understand -- Richard Feynman
http://evripides.mysch.gr

petrosp13

  • Ομάδα Νέου Λυκείου
  • *
  • Μηνύματα: 2279
Δηλαδή θα την δεχόμουν ως σωστή;
 ;) ;)
Παπαδόπουλος Πέτρος
Καθηγητής Πληροφορικής

evry

  • Γενικός διαχειριστής
  • *****
  • Μηνύματα: 3391
  • to Iterate is human to Recurse divine
Δεν ξέρω, δέχεσαι ως σωστό κάτι που είναι εκτός ύλης?
Στα μαθηματικά αν κάποιος χρησιμοποιήσει το θεώρημα μέσης τιμής του ολοκληρωτικού λογισμού που είναι εκτός ύλης επειδή τον βολεύει θα το πάρουν σωστό?
What I cannot create I do not understand -- Richard Feynman
http://evripides.mysch.gr

dimitrios67

  • Δεινόσαυρος
  • *****
  • Μηνύματα: 108
το θέμα της πείρας είναι σχετικό, οπότε καλό είναι να στηριζόμαστε σε έρευνες που έχουν γίνει διεθνώς και θεωρούνται αξιόπιστες,
γιατί συμφωνείς φαντάζομαι ότι ο τρόπος που έχουμε μάθει και εμείς επηρεάζει την κρίση μας σε αυτά τα θέματα.
Αυτο που λες ειναι πολύ σημαντικό και μας "ξεγελαει" μερικες φορες...
Θα διαβασω το paper που εχεις και θα σου τις σκεψεις μου.
Δ.

ApoAntonis

  • Βετεράνος
  • ****
  • Μηνύματα: 82
Το ανάλογο της αντιμετάθεσης δεν είναι θεώρημα που δεν υπάρχει αλλά χρήση ποσοδεικτών/συμβολισμού που δεν υπάρχουν.
Στην πλειονότητα των βαθμολογητών νομίζω πως δεν υπάρχει πρόβλημα με την χρήση ποσοδεικτών.
Για να είναι σαφέστερη η αναλογία σκεφτόμαστε τους τελεστές +=, -=, *=, /=
Ε, δεν νομίζω ότι κάποιος από τους βαθμολογητές θα απορρίψει την χρήση των τελεστών αυτών επειδή δεν υπάρχουν στο βιβλίο.

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


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

Το να λέμε τι γινόταν σε εξέταση προ 20ετίας (και βγάλε) είναι αναχρονισμός. Τρέχα γύρευε να μάθεις άλλο τρόπο ταξινόμησης το '98,το '99, το '20. Τώρα την "τσεκάρεις" στο διάλειμμα στο κινητό.

Ειδικά όμως για την python του ΕΠΑΛ, όπου η διδακτέα δεν ταυτίζεται με την εξεταστέα υπάρχει μείζων ζήτημα.

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

Για κλείσιμο, σύμφωνα με το φεκ Φ.251/25089/Α5
αριθμός φύλλου 643
άρθρο 7 εδάφιο 4
σε περίπτωση ισοβαθμίας για το τέταρτο επιστημονικό πεδίο τα μαθήματα που υπολογίζονται είναι (κατά σειρά)
Μαθηματικά, Οικονομία, Πληροφορική, Νεολληνική Γλώσσα και Λογοτεχνία.

Εκπληκτική αναβάθμιση.


ilias_s

  • Δεινόσαυρος
  • *****
  • Μηνύματα: 363
Ναι, Ευρυπίδη, χρόνια τώρα το μάθημα ΑΕΠΠ και τώρα η Πληροφορική Ο.Π. χαρακτηρίζεται ως εργαστηριακό αλλά εδώ και πολλά χρόνια ο 2ος καθηγητής στα ΓΕΛ δεν προβλέπεται.

Αν θυμάμαι καλά καταργήθηκε κάπου το 2010-11 γιατί μου έχει μείνει πως όταν το έμαθα το βασικό πρόβλημά μου ήταν πως είχα δύο τμήματα επιλογής Γ' ΓΕΛ των 25 κ' 26 μαθητών αντίστοιχα σε εργαστήριο με 9 workstations.

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


Πέτρο παίρνεις το ρίσκο? Αν είναι μάθε σε έναν την quick sort και πες του όπου βλέπει "ταξινόμηση" να την εφαρμόζει να δούμε τι θα πάρει..!

Δηλαδή θα την δεχόμουν ως σωστή;
 ;) ;)

Είναι η ίδια περίπτωση με την βιβλιοθήκη εκτός ύλης. Δίνεις οδηγία οι μαθητές να περιοριστούν στην διδακτέα ύλη. Επίσης, φροντίζεις το βιβλίο να μην είναι τόσο λειψό σε βασικά πράγματα τα οποία δεν είναι δα και τόσο μεγάλης σημασίας σήμερα!!! Εδώ βρεθήκαμε να μιλάμε (στη θεωρία) για πολυμορφισμό και ακόμα θα κολλάμε αν η αντιμετάθεση θα γίνεται αποκλειστικά με διαδοχικές εκχωρήσεις τιμής ή με μία εντολή εκχώρηση ή μία έτοιμη διαδικασία τύπου SWAP(x,y); Αν είναι τα ψειρίζουμε όλα ας κάνουμε και πρόσθεση στυλ assembly, σε καταχωρητές!

Εγώ δεν μίλησα για βιβλιοθήκη αλλά για σύνταξη απλής εντολής
Στην Python μπορώ να αντιμεταθέσω έτσι
x,y=y,x
Εγώ δεν το γνωρίζω, το βιβλίο δεν το αναφέρει, οι βαθμολογητές δεν το γνωρίζουν
Ο μαθητής το έχει κάνει σε πραγματικό περιβάλλον μόνος του
Τι κάνουμε;



petrosp13

  • Ομάδα Νέου Λυκείου
  • *
  • Μηνύματα: 2279
Το δικό μου σκεπτικό είναι απλό και το συνοψίζω
Δημιουργείς μια "μικρή" γλώσσα με σαφώς ορισμένο συντακτικό και δυνατότητες
Μικρή σε σχέση με μια πραγματική γλώσσα που έχει χιλιάδες δυνατότητες και βιβλιοθήκες
Σαφώς ορισμένο συντακτικό και δυνατότητες σημαίνει απλά πράγματα
Θέλεις πρόσβαση σε αρχεία; Δίνεις τις επιτρεπόμενες εντολές και λειτουργίες
Θέλεις pointers; Δίνεις το συντακτικό και τις λειτουργίες τους για να υλοποιείς τις δομές
Θέλεις κλάσεις και αντικείμενα; Δίνεις τον τρόπο
Δεν έχει σημασία αν η γλώσσα είναι "φτιαχτή" για ένα μάθημα
Δεν έχει σημασία αν αντιγράψει σε αυτές τις δυνατότητες κάποια πραγματική γλώσσα
Σημασία έχει να μπορούν τα παιδιά να μάθουν την λογική της αλγοριθμικής και να μπορούν να την εφαρμόζουν σε μια υποθετική γλώσσα, που θα τους επιτρέψει να την εφαρμόζουν και σε κάθε πραγματική γλώσσα από εκεί και πέρα

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

Θεωρώ ότι το πρόβλημα αυτό λύνεται πολύ εύκολα με μια περιορισμένη αλλά "φτιαχτή" γλώσσα. Δεν ξέρω αν θα είναι μια εμπλουτισμένη ΓΛΩΣΣΑ ή κάποια καινούρια.

Το μειονέκτημα της μη εκμάθησης κάποιας πραγματικής γλώσσας πραγματικά δεν το καταλαβαίνω.
Οι περισσότεροι από εμάς δεν διδάχτηκαν ποτέ Python.
Πόσες ΩΡΕΣ χρειάζεται κάποιος από εμάς για να την "μάθει" ξέροντας αλγοριθμική με ΓΛΩΣΣΑ;
Παπαδόπουλος Πέτρος
Καθηγητής Πληροφορικής

alkisg

  • Τεχνικός / καθαρίστρια
  • *****
  • Μηνύματα: 5387
    • Ο Διερμηνευτής της ΓΛΩΣΣΑΣ
Παλιά είχα αναγκαστεί να ρωτήσω κάποιους από τους συγγραφείς της ΑΕΠΠ κάτι σαν το παρακάτω, αν το θυμάμαι καλά:

"Μερικοί καθηγητές λένε ότι δεν επιτρέπεται π.χ. να κάνουμε
ΓΡΑΨΕ 1+2
επειδή το βιβλίο αναφέρει λίστα μεταβλητών και όχι εκφράσεων"

Οι συγγραφείς προφανώς απάντησαν "φυσικά και επιτρέπεται".

Αντίστοιχα τώρα αν ρωτήσουμε τους καθηγητές αν επιτρέπεται το παρακάτω:

ΓΙΑ ι ΑΠΟ 1 ΜΕΧΡΙ 10 ΜΕ_ΒΗΜΑ ΜΙΑ_ΣΥΝΑΡΤΗΣΗ(ι)

...είμαι αρκετά σίγουρος ότι θα υπάρξουν μπόλικες αντιρρήσεις και διαφωνίες. Γιατί; Ο τυπικός ορισμός της ΓΛΩΣΣΑΣ προφανώς θα έλεγε ότι δεξιά από το ΜΕ_ΒΗΜΑ μπαίνει "αριθμητική έκφραση", και μια αριθμητική συνάρτηση είναι προφανώς έκφραση, άρα επιτρέπεται.
Ή για να το κάνουμε πιο απλό, μερικοί δεν θα δέχονταν να μπει συνάρτηση ούτε καν δεξιά από το "ΑΠΟ", που δεν προκαλεί καμία αμφιβολία για τον τρόπο εκτέλεσης.

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

pgrontas

  • Ομάδα διαγωνισμάτων 2016
  • *
  • Μηνύματα: 1402
  • There are always possibilities...
Το δικό μου σκεπτικό είναι απλό και το συνοψίζω
...
Το μειονέκτημα της μη εκμάθησης κάποιας πραγματικής γλώσσας πραγματικά δεν το καταλαβαίνω.
Οι περισσότεροι από εμάς δεν διδάχτηκαν ποτέ Python.
Πόσες ΩΡΕΣ χρειάζεται κάποιος από εμάς για να την "μάθει" ξέροντας αλγοριθμική με ΓΛΩΣΣΑ;

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

Και στην τελική: η αλγοριθμική δεν είναι μόνο για τις εξετάσεις.

Αυτοί όμως που δεν ήθελαν να ακούσουν με τίποτα για Python ήταν οι συνάδελφοι των Λυκείων και αυτό μου είχε κάνει εντύπωση.
Ρώτησες τα πτυχία τους; Γιατί βάζω στοίχημα, δεν θα ήταν πολλά πληροφορικής και αντιμετωπίζουν το πρόβλημα που περιγράφω παραπάνω.
« Τελευταία τροποποίηση: 01 Μάρ 2020, 09:19:40 πμ από pgrontas »
Programs must be written for people to read, and only incidentally for machines to execute - Harold Abelson