Αποστολέας Θέμα: Απορία στην ΕΠΙΛΕΞΕ  (Αναγνώστηκε 1245 φορές)

George Eco

  • Δεινόσαυρος
  • *****
  • Μηνύματα: 504
Απορία στην ΕΠΙΛΕΞΕ
« στις: 20 Ιουν 2021, 07:53:56 μμ »
Σωστά Άλκη!

    ΠΕΡΙΠΤΩΣΗ <= 1, >= 100

Αυτό ήρθε κατά νου και σ΄εμένα. Αλλά να, πώς να το πω τώρα κομψά; Όταν διδάσκω τους κανόνες σωστής σύνταξης σύνθετων λογικών εκφράσεων κι έρχεται μετά μια ΕΠΙΛΕΞΕ και κάνει ζογκλερικά... περισσότερο κακό παρά καλό κάνει σε μερικά παιδιά.

alkisg

  • Τεχνικός / καθαρίστρια
  • *****
  • Μηνύματα: 6147
    • Ο Διερμηνευτής της ΓΛΩΣΣΑΣ
Απ: Απορία στην ΕΠΙΛΕΞΕ
« Απάντηση #1 στις: 20 Ιουν 2021, 08:51:31 μμ »
Επίσης, με ρωτά μαθήτρια:
Αν έχουμε ακέραιο στο κλειστό 1 ως εκατό [1,100] λέμε ΠΕΡΙΠΤΩΣΗ 1..100.
Αν θέλουμε πραγματικό αριθμό, μεταξύ ανοικτό 1 ως εκατό ανοικτό (1,100) πώς θα το γράψω σε ΕΠΙΛΕΞΕ;

Τέταρτη κουκίδα στο https://alkisg.mysch.gr/ΓΛΩΣΣΑ/ΕΠΙΛΕΞΕ/

Κώδικας: ΓΛΩΣΣΑ
  1. ΠΡΟΓΡΑΜΜΑ ΑνοικτόΔιάστημα
  2. ΑΡΧΗ
  3.   ΕΠΙΛΕΞΕ 1.1
  4.     ΠΕΡΙΠΤΩΣΗ <= 1, >= 100
  5.       ΓΡΑΨΕ "Ο αριθμός ανήκει στο (-∞..1] ∪ [100..∞)"
  6.     ΠΕΡΙΠΤΩΣΗ ΑΛΛΙΩΣ
  7.       ΓΡΑΨΕ "Ο αριθμός ανήκει στο (1..100)"
  8.   ΤΕΛΟΣ_ΕΠΙΛΟΓΩΝ
  9. ΤΕΛΟΣ_ΠΡΟΓΡΑΜΜΑΤΟΣ

Σωστά Άλκη!

    ΠΕΡΙΠΤΩΣΗ <= 1, >= 100

Αυτό ήρθε κατά νου και σ΄εμένα. Αλλά να, πώς να το πω τώρα κομψά; Όταν διδάσκω τους κανόνες σωστής σύνταξης σύνθετων λογικών εκφράσεων κι έρχεται μετά μια ΕΠΙΛΕΞΕ και κάνει ζογκλερικά... περισσότερο κακό παρά καλό κάνει σε μερικά παιδιά.

Αυτό μπορεί να σπάσει και σε δύο περιπτώσεις, δεν είναι υποχρεωτικό να μπει σε μία.

ΠΕΡΙΠΤΩΣΗ <= 1
ΠΕΡΙΠΤΩΣΗ >= 100
ΠΕΡΙΠΤΩΣΗ ΑΛΛΙΩΣ  ! δηλαδή (1..100)

petrosp13

  • Ομάδα Νέου Λυκείου
  • *
  • Μηνύματα: 2383
Απ: Απορία στην ΕΠΙΛΕΞΕ
« Απάντηση #2 στις: 20 Ιουν 2021, 11:25:05 μμ »
Η επίλεξε μπορεί να έχει σύνθετες λογικές εκφράσεις;;;
Παπαδόπουλος Πέτρος
Καθηγητής Πληροφορικής


Γιαννούλης Γιώργος

  • Βετεράνος
  • ****
  • Μηνύματα: 87
Απ: Απορία στην ΕΠΙΛΕΞΕ
« Απάντηση #4 στις: 27 Ιουν 2021, 01:55:43 μμ »
Η επίλεξε μπορεί να έχει σύνθετες λογικές εκφράσεις;;;

H επίλεξε μπορεί να έχει σύνθετες λογικές εκφράσεις μόνο δεξιά από το επίλεξε, όχι στις περιπτώσεις.

Π.χ.
Κώδικας: [Επιλογή]
ΕΠΙΛΕΞΕ χ>0 ΚΑΙ ψ>0
ΠΕΡΙΠΤΩΣΗ ΑΛΗΘΗΣ
  ΓΡΑΨΕ 'ΚΑΙ ΟΙ ΔΥΟ ΘΕΤΙΚΟΙ'
ΠΕΙΠΤΩΣΗ ΑΛΛΙΩΣ
  ΓΡΑΨΕ 'ΟΧΙ ΚΑΙ ΟΙ ΔΥΟ ΘΕΤΙΚΟΙ'
ΤΕΛΟΣ_ΕΠΙΛΟΓΩΝ

alkisg

  • Τεχνικός / καθαρίστρια
  • *****
  • Μηνύματα: 6147
    • Ο Διερμηνευτής της ΓΛΩΣΣΑΣ
Απ: Απορία στην ΕΠΙΛΕΞΕ
« Απάντηση #5 στις: 27 Ιουν 2021, 03:59:24 μμ »
Εεε αν λέμε για ΕΠΙΛΕΞΕ με τελεστή λογικού τύπου, τότε προφανώς επιτρέπονται οποιεσδήποτε λογικές τιμές στις εντολές ΠΕΡΙΠΤΩΣΗ, συμπεριλαμβανομένων και των σύνθετων.
Το παρακάτω πρόγραμμα είναι συντακτικά σωστό (αν και δεν βγάζει νόημα, είναι μόνο για επίδειξη του συντακτικού):

Κώδικας: ΓΛΩΣΣΑ
  1. ΠΡΟΓΡΑΜΜΑ Δοκιμή
  2. ΑΡΧΗ
  3.   ΕΠΙΛΕΞΕ 1 > 0 ΚΑΙ 2 > 1
  4.     ΠΕΡΙΠΤΩΣΗ 1 > 0 Η 2 > 1
  5.       ΓΡΑΨΕ 'Ισχύει'
  6.   ΤΕΛΟΣ_ΕΠΙΛΟΓΩΝ
  7. ΤΕΛΟΣ_ΠΡΟΓΡΑΜΜΑΤΟΣ

oldBugman

  • Οπαδός
  • **
  • Μηνύματα: 13
Απ: Απορία στην ΕΠΙΛΕΞΕ
« Απάντηση #6 στις: 27 Ιουν 2021, 05:30:18 μμ »
Ερώτηση άσχετου:
Με δεδομένο ότι στις περιπτώσεις μπορούμε να βάζουμε συνθήκες πχ:
ΠΕΡΙΠΤΩΣΗ > 20
Αν είχαμε τύπο στην Επίλεξε Λογικό τότε δεν θα μπορούσαμε να βάλουμε συνθήκες αφού τα >  <  δεν ισχύουν στους λογικούς (στη ΓΛΩΣΣΑ). Πχ το ΑΛΗΘΗΣ>ΨΕΥΔΗΣ δεν ισχύει. Εκτός αν ισχύει, οπότε ενημερώστε με!

Γιαννούλης Γιώργος

  • Βετεράνος
  • ****
  • Μηνύματα: 87
Απ: Απορία στην ΕΠΙΛΕΞΕ
« Απάντηση #7 στις: 27 Ιουν 2021, 05:36:04 μμ »
Κώδικας: ΓΛΩΣΣΑ
  1. ΠΡΟΓΡΑΜΜΑ Δοκιμή
  2. ΑΡΧΗ
  3.   ΕΠΙΛΕΞΕ 1 > 0 ΚΑΙ 2 > 1
  4.     ΠΕΡΙΠΤΩΣΗ 1 > 0 Η 2 > 1
  5.       ΓΡΑΨΕ 'Ισχύει'
  6.   ΤΕΛΟΣ_ΕΠΙΛΟΓΩΝ
  7. ΤΕΛΟΣ_ΠΡΟΓΡΑΜΜΑΤΟΣ

Έχω την εντύπωση Άλκη ότι ο παραπάνω κώδικας είναι σωστός με βάση το Διερμηνευτή της Γλώσσας άλλα όχι με βάση το βιβλίο. 

Στο βιβλίο αναφέρει ότι στο ΕΠΙΛΕΞΕ δεξιά μπορεί να μπει μια έκφραση (άρα τα πάντα), αλλά στην ΠΕΡΙΠΤΩΣΗ αναφέρει χαρακτηριστικά 3 πράγματα που μπορούν να μπουν :
<λίστα_τιμών_Ν>:
οι τιμές που μπορεί να πάρει μια έκφραση. Οι τιμές αυτές μπορεί να είναι διακριτές τιμές,
περιοχή τιμών από…έως ή να υπακούν σε μια συνθήκη.

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

Πάντως νομίζω βγαίνουμε εκτός θέματος και το συγκεκριμένο topic είναι από τα σημαντικότερα για το μέλλον του μαθήματος...

Γιαννούλης Γιώργος

  • Βετεράνος
  • ****
  • Μηνύματα: 87
Απ: Απορία στην ΕΠΙΛΕΞΕ
« Απάντηση #8 στις: 27 Ιουν 2021, 05:37:36 μμ »
Ερώτηση άσχετου:
Με δεδομένο ότι στις περιπτώσεις μπορούμε να βάζουμε συνθήκες πχ:
ΠΕΡΙΠΤΩΣΗ > 20
Αν είχαμε τύπο στην Επίλεξε Λογικό τότε δεν θα μπορούσαμε να βάλουμε συνθήκες αφού τα >  <  δεν ισχύουν στους λογικούς (στη ΓΛΩΣΣΑ). Πχ το ΑΛΗΘΗΣ>ΨΕΥΔΗΣ δεν ισχύει. Εκτός αν ισχύει, οπότε ενημερώστε με!
θα μπορούσαμε όμως να βάλουμε = (αν και θα ήταν σαν να μην το βάλαμε) ή <>.

alkisg

  • Τεχνικός / καθαρίστρια
  • *****
  • Μηνύματα: 6147
    • Ο Διερμηνευτής της ΓΛΩΣΣΑΣ
Απ: Απορία στην ΕΠΙΛΕΞΕ
« Απάντηση #9 στις: 27 Ιουν 2021, 06:00:02 μμ »
<λίστα_τιμών_Ν>:
οι τιμές που μπορεί να πάρει μια έκφραση. Οι τιμές αυτές μπορεί να είναι διακριτές τιμές,
περιοχή τιμών από…έως ή να υπακούν σε μια συνθήκη.

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

Στα πλαίσια του βιβλίου, τιμή σημαίνει έκφραση. Σελίδα 131 βιβλίου μαθητή: `Όταν μια τιμή προκύπτει από υπολογισμό, τότε αναφερόμαστε σε εκφράσεις (expressions)`.

Π.χ. ο ορισμός της ΓΙΑ στη σελίδα 150 του βιβλίου είναι: `ΓΙΑ μεταβλητή ΑΠΟ τιμή1 ΜΕΧΡΙ τιμή2 ΜΕ ΒΗΜΑ τιμή3`. Αν εκεί θεωρήσουμε ότι το "τιμή" ΔΕΝ σημαίνει "έκφραση", τότε βγαίνουν λάθος οι μισές ασκήσεις του βιβλίου και των πανελλαδικών που έχουν εκφράσεις στη ΓΙΑ.

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

Γιαννούλης Γιώργος

  • Βετεράνος
  • ****
  • Μηνύματα: 87
Απ: Απορία στην ΕΠΙΛΕΞΕ
« Απάντηση #10 στις: 27 Ιουν 2021, 07:10:35 μμ »
Απλά Άλκη στο συγκεκριμένο σημείο κάνει επιπλέον προσπάθεια να αποτρέψει πράξεις στις Περιπτώσεις. Αλλιώς γιατί να γραφεί : " Οι τιμές αυτές μπορεί να είναι διακριτές τιμές,". Θα ήταν σαν να έλεγε οι τιμές είναι τιμές.

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

alkisg

  • Τεχνικός / καθαρίστρια
  • *****
  • Μηνύματα: 6147
    • Ο Διερμηνευτής της ΓΛΩΣΣΑΣ
Απ: Απορία στην ΕΠΙΛΕΞΕ
« Απάντηση #11 στις: 27 Ιουν 2021, 07:58:19 μμ »
> μία ή περισσότερες διακριτές τιμές, περιοχή τιμών από - έως ή (τιμές που) να υπακούουν σε μια συνθήκη

Διακριτές τιμές: 1, 3+8, Τ_Ρ(23)
Περιοχή τιμών: 1..3+8
(τιμές που υπακούουν σε) συνθήκη: >= 3+8

Το "διακριτές" δεν είναι για να αποτρέψει τις πράξεις. Είναι σε αντιπαράθεση με τις άλλες 2 περιπτώσεις, τις περιοχές και τις συνθήκες.

Αλλιώς θα έπρεπε να λέει και "διακριτές περιοχές τιμών" και "διακριτές συνθήκες" για να αποτρέψει τις πράξεις και στις άλλες δύο περιπτώσεις.

Κανένας

  • Βετεράνος
  • ****
  • Μηνύματα: 83
    • Νικηφόρος Μανδηλαράς (blog)
Απ: Απορία στην ΕΠΙΛΕΞΕ
« Απάντηση #12 στις: 25 Οκτ 2021, 05:57:19 μμ »
Τι τυπώνει το παρακάτω πρόγραμμα;

ΠΡΟΓΡΑΜΜΑ ΑΠΡΟΣΔΙΟΡΙΣΤΟ
ΜΕΤΑΒΛΗΤΕΣ
 ΠΡΑΓΜΑΤΙΚΕΣ:Χ
ΑΡΧΗ
Χ<--1.5
ΕΠΙΛΕΞΕ Χ
ΠΕΡΙΠΤΩΣΗ 1..10
  ΓΡΑΨΕ 'ΠΡΙΤΣ'
ΠΕΡΙΠΤΩΣΗ ΑΛΛΙΩΣ
  ΓΡΑΨΕ 'ΟΚ'
ΤΕΛΟΣ_ΕΠΙΛΟΓΩΝ
ΤΕΛΟΣ_ΠΡΟΓΡΑΜΜΑΤΟΣ

Νικηφόρος Μανδηλαράς
ΓΕΛ Νάξου "Μανώλης Γλέζος"
https://eclass03.sch.gr/courses/D21100/

alkisg

  • Τεχνικός / καθαρίστρια
  • *****
  • Μηνύματα: 6147
    • Ο Διερμηνευτής της ΓΛΩΣΣΑΣ
Απ: Απορία στην ΕΠΙΛΕΞΕ
« Απάντηση #13 στις: 25 Οκτ 2021, 06:42:04 μμ »
Γιατί είναι απροσδιόριστο; Η περιοχή τιμών `από .. έως` δεν ορίζεται κάπου ως ακέραια, σωστά;
Στον Διερμηνευτή πάντως, τυπώνει ΠΡΙΤΣ... :)

Γιαννούλης Γιώργος

  • Βετεράνος
  • ****
  • Μηνύματα: 87
Απ: Απορία στην ΕΠΙΛΕΞΕ
« Απάντηση #14 στις: 25 Οκτ 2021, 08:31:11 μμ »
> μία ή περισσότερες διακριτές τιμές, περιοχή τιμών από - έως ή (τιμές που) να υπακούουν σε μια συνθήκη

Διακριτές τιμές: 1, 3+8, Τ_Ρ(23)
Περιοχή τιμών: 1..3+8
(τιμές που υπακούουν σε) συνθήκη: >= 3+8

Το "διακριτές" δεν είναι για να αποτρέψει τις πράξεις. Είναι σε αντιπαράθεση με τις άλλες 2 περιπτώσεις, τις περιοχές και τις συνθήκες.

Αλλιώς θα έπρεπε να λέει και "διακριτές περιοχές τιμών" και "διακριτές συνθήκες" για να αποτρέψει τις πράξεις και στις άλλες δύο περιπτώσεις.

Συμφωνώ μαζί σου Άλκη. Αφού θεωρούμε τιμή το αποτέλεσμα πράξης με σταθερές (Χ = 5+3), δεν έχουμε λόγο να μην επιτρέπουμε τιμή στο Επίλεξε με ότι τύπο μεταβλητών και αν είναι.

Κανένας

  • Βετεράνος
  • ****
  • Μηνύματα: 83
    • Νικηφόρος Μανδηλαράς (blog)
Απ: Απορία στην ΕΠΙΛΕΞΕ
« Απάντηση #15 στις: 26 Οκτ 2021, 01:43:18 πμ »
Γιατί είναι απροσδιόριστο; Η περιοχή τιμών `από .. έως` δεν ορίζεται κάπου ως ακέραια, σωστά;
Στον Διερμηνευτή πάντως, τυπώνει ΠΡΙΤΣ... :)
Μετά από αρκετά χρόνια κολύμπι στην ασάφεια, στις οδηγίες διδασκαλίας 2020-2021 στη σελίδα 7-8, μαθαίνουμε πώς να γράφουμε τους τύπους υποπεριοχής (Από..έως) στην εντολή ΕΠΙΛΕΞΕ. (δηλαδή τις δύο τελείες (..))
Παραθέτω αυτούσιο το παράδειγμα:
Διευκρινίζεται ότι μια έγκυρη σύνταξη της εντολής ΕΠΙΛΕΞΕ στη ΓΛΩΣΣΑ είναι και η ακόλουθη:
Επίλεξε τιμή
Περίπτωση 0..100 ! 0 <= τιμή <= 100
<εντολές1>
Περίπτωση 101..1000 ! 101 <= τιμή <= 1000
<εντολές2>
Περίπτωση Αλλιώς ! 1000 < τιμή
<εντολές3>
Τέλος__επιλογών
όπου <τιμή>: ακέραια μεταβλητή. 


Όλα καλά, επιτέλους πήραμε απάντηση.
Η τελευταία γραμμή όμως μας ξαναπετάει στη θάλασσα της αμφιβολίας. Γιατί σώνει και καλά ακέραια η μεταβλητή <τιμή>;

Υπόθεση-ερμηνεία:
Μήπως γίνεται μια προσπάθεια να συμμαζέψουμε τα ασυμμάζευτα σχετικά με την ΕΠΙΛΕΞΕ;
Μήπως προσπαθούμε να ευθυγραμμιστούμε με σχεδόν όλες τις Γλώσσες προγραμματισμού που απαιτούν βαθμωτούς τύπους (scalar types) στις αντίστοιχες εντολές τους; (case της Pascal, switch της C και Java κλπ). (Δηλαδή απλά δεν δουλεύουν με πραγματικές τιμές)
Βέβαια το πράγμα δεν συμμαζεύεται αν έχεις αυτό το απίθανο: π.χ. ΠΕΡΙΠΤΩΣΗ  > 100 
Ο ρόλος της εντολής σ' όλες τις γλώσσες είναι βέβαια άλλος, να συμπληρώνει τις εντολές if-then-else κυρίως για τις περιπτώσεις ελέγχου πολλών διαφορετικών τιμών. Γι' αυτό βέβαια ελέγχουν μόνο ισότητες.

Στους μαθητές μου συνιστώ εφ' όσον δεν τους επιβάλλεται, να μην χρησιμοποιούν την EΠΙΛΕΞΕ με πραγματικούς αριθμούς και να ελέγχουν μόνο ισότητες (δηλαδή όχι συγκριτικούς τελεστές στις ΠΕΡΙΠΤΩΣΕΙΣ)

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

Υ.Γ.
Κάποιοι συνάδελφοι στο παρελθόν κάτι ήξεραν και την πέταξαν εκτός ύλης. Με το μπλέ βιβλίο δόθηκε η ευκαιρία να διορθωθεί αλλά είχαμε Το δις εξαμαρτείν.
Νικηφόρος Μανδηλαράς
ΓΕΛ Νάξου "Μανώλης Γλέζος"
https://eclass03.sch.gr/courses/D21100/