Απορία στην ΕΠΙΛΕΞΕ

Ξεκίνησε από George Eco, 20 Ιουν 2021, 07:53:56 ΜΜ

« προηγούμενο - επόμενο »

George Eco

Σωστά Άλκη!

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

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

alkisg

#1
Παράθεση από: George Eco στις 20 Ιουν 2021, 06:28:55 ΜΜ
Επίσης, με ρωτά μαθήτρια:
Αν έχουμε ακέραιο στο κλειστό 1 ως εκατό [1,100] λέμε ΠΕΡΙΠΤΩΣΗ 1..100.
Αν θέλουμε πραγματικό αριθμό, μεταξύ ανοικτό 1 ως εκατό ανοικτό (1,100) πώς θα το γράψω σε ΕΠΙΛΕΞΕ;

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

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


Παράθεση από: George Eco στις 20 Ιουν 2021, 07:53:56 ΜΜ
Σωστά Άλκη!

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

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

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

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

petrosp13

Η επίλεξε μπορεί να έχει σύνθετες λογικές εκφράσεις;;;
Παπαδόπουλος Πέτρος
Καθηγητής Πληροφορικής


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

Παράθεση από: petrosp13 στις 20 Ιουν 2021, 11:25:05 ΜΜ
Η επίλεξε μπορεί να έχει σύνθετες λογικές εκφράσεις;;;

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

Π.χ.
ΕΠΙΛΕΞΕ χ>0 ΚΑΙ ψ>0
ΠΕΡΙΠΤΩΣΗ ΑΛΗΘΗΣ
  ΓΡΑΨΕ 'ΚΑΙ ΟΙ ΔΥΟ ΘΕΤΙΚΟΙ'
ΠΕΙΠΤΩΣΗ ΑΛΛΙΩΣ
  ΓΡΑΨΕ 'ΟΧΙ ΚΑΙ ΟΙ ΔΥΟ ΘΕΤΙΚΟΙ'
ΤΕΛΟΣ_ΕΠΙΛΟΓΩΝ

alkisg

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

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

oldBugman

Ερώτηση άσχετου:
Με δεδομένο ότι στις περιπτώσεις μπορούμε να βάζουμε συνθήκες πχ:
ΠΕΡΙΠΤΩΣΗ > 20
Αν είχαμε τύπο στην Επίλεξε Λογικό τότε δεν θα μπορούσαμε να βάλουμε συνθήκες αφού τα >  <  δεν ισχύουν στους λογικούς (στη ΓΛΩΣΣΑ). Πχ το ΑΛΗΘΗΣ>ΨΕΥΔΗΣ δεν ισχύει. Εκτός αν ισχύει, οπότε ενημερώστε με!

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

Παράθεση από: alkisg στις 27 Ιουν 2021, 03:59:24 ΜΜ
Κώδικας: ΓΛΩΣΣΑ
ΠΡΟΓΡΑΜΜΑ Δοκιμή
ΑΡΧΗ
  ΕΠΙΛΕΞΕ 1 > 0 ΚΑΙ 2 > 1
    ΠΕΡΙΠΤΩΣΗ 1 > 0 Η 2 > 1
      ΓΡΑΨΕ 'Ισχύει'
  ΤΕΛΟΣ_ΕΠΙΛΟΓΩΝ
ΤΕΛΟΣ_ΠΡΟΓΡΑΜΜΑΤΟΣ


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

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

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

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

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

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

alkisg

Παράθεση από: Γιαννούλης Γιώργος στις 27 Ιουν 2021, 05:36:04 ΜΜ
<λίστα_τιμών_Ν>:
οι τιμές που μπορεί να πάρει μια έκφραση. Οι τιμές αυτές μπορεί να είναι διακριτές τιμές,
περιοχή τιμών από...έως ή να υπακούν σε μια συνθήκη.

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

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

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

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

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

Απλά Άλκη στο συγκεκριμένο σημείο κάνει επιπλέον προσπάθεια να αποτρέψει πράξεις στις Περιπτώσεις. Αλλιώς γιατί να γραφεί : " Οι τιμές αυτές μπορεί να είναι διακριτές τιμές,". Θα ήταν σαν να έλεγε οι τιμές είναι τιμές.

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

alkisg

> μία ή περισσότερες διακριτές τιμές, περιοχή τιμών από - έως ή (τιμές που) να υπακούουν σε μια συνθήκη

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

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

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

Κανένας

Τι τυπώνει το παρακάτω πρόγραμμα;

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

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

alkisg

Γιατί είναι απροσδιόριστο; Η περιοχή τιμών `από .. έως` δεν ορίζεται κάπου ως ακέραια, σωστά;
Στον Διερμηνευτή πάντως, τυπώνει ΠΡΙΤΣ... :)

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

Παράθεση από: alkisg στις 27 Ιουν 2021, 07:58:19 ΜΜ
> μία ή περισσότερες διακριτές τιμές, περιοχή τιμών από - έως ή (τιμές που) να υπακούουν σε μια συνθήκη

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

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

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

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