ΑΠΟΡΙΑ ΣΤΗΝ ΔΟΜΗ ΕΠΙΛΟΓΗΣ

Ξεκίνησε από silver, 29 Σεπ 2007, 10:46:31 ΜΜ

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

silver

Ειναι δυνατον να συντάξουμε την δομη επιλογης ΑΝ .. ΤΟΤΕ .. ΑλΛΙΩΣ_ΑΝ χρησιμοποιωντας στην τελευταια επιλογη μονο ΑΛΛΙΩΣ_ΑΝ και οχι ΑΛΛΙΩΣ οπως λεει το βιβλιο ?

anasta

ΤΟ "ΑΛΛΙΩΣ_ΑΝ" ΠΡΕΠΕΙ ΝΑ ΑΚΟΛΟΥΘΕΙΤΑΙ ΑΠΟ ΛΟΓΙΚΗ ΣΥΝΘΗΚΗ.
ΤΟ "ΑΛΛΙΩΣ" ΔΕΝ ΑΚΟΛΟΥΘΕΙΤΑΙ ΑΠΟ ΣΥΝΘΗΚΗ Κ ΕΚΤΕΛΕΙΤΑΙ ΟΤΑΝ ΔΕΝ ΙΣΧΥΕΙ ΚΑΜΙΑ ΑΠΟ ΤΙΣ ΣΥΝΘΗΚΕΣ ΠΟΥ ΠΡΟΗΓΟΥΝΤΑΙ.
ΕΞΑΡΤΑΤΑΙ ΑΠΟ ΤΗΝ ΕΚΦΩΝΗΣΗ Κ ΤΟ ΠΩΣ ΘΑ ΣΧΕΔΙΑΣΕΙ ΚΑΠΟΙΟΣ ΤΗΝ ΛΥΣΗ.
ΠΡΟΓΡΑΜΜΑΤΙΣΤΙΚΑ ΔΕΝ ΥΠΑΡΧΕΙ ΠΡΟΒΛΗΜΑ ΑΝ ΔΕΝ ΥΠΑΡΧΕΙ ΤΟ "ΑΛΛΙΩΣ" Κ Η ΠΟΛΛΑΠΛΗ ΕΠΙΛΟΓΗ ΚΛΕΙΝΕΙ ΜΕ

ΑΛΛΙΩΣ_ΑΝ <ΛΟΓ_ΣΥΝΘΗΚΗ> ΤΟΤΕ
...
ΤΕΛΟΣ_ΑΝ

ΑΠΛΑ ΕΤΣΙ ΥΠΑΡΧΕΙ ΚΙΝΔΥΝΟΣ Ο ΑΛΓΟΡΙΘΜΟΣ ΝΑ ΜΗΝ ΕΙΝΑΙ ΑΠΟΤΕΛΕΣΜΑΤΙΚΟΣ!

P.Tsiotakis

χρειάζεται προσοχή όντως, μπορεί πάντως στην πολλαπλή επιλογή βα μην υπάρχει αλλιώς...

silver

ΑΝ ΥΠΟΘΕΣΟΥΜΕ ΟΤΙ ΜΠΟΡΕΙ ΝΑ ΣΤΑΘΕΙ ΛΟΓΙΚΑ Η ΧΡΗΣΗ ΤΟΥ , ΤΟΤΕ ΥΠΑΡΧΕΙ ΠΕΡΙΠΤΩΣΗ ΚΑΠΟΙΟΣ ΔΙΟΡΘΩΤΗΣ ΝΑ ΑΦΑΙΡΕΣΕΙ ΜΟΝΑΔΕΣ ΑΠΟ ΤΟ ΓΡΑΠΤΟ ΤΟΥ ΜΑΘΗΤΗ ...?

gpapargi

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

Δε δικαιούται κανείς να σου κόψει βαθμό. Αν σου κόψει είναι φάουλ.

Ήξερα πέρυσι κάποιον που έκοβε βαθμό στην πολλαπλή χωρίς αλλιώς γιατί κάνει... ΕΝΑΝ ...ολόκληρο περιττό έλεγχο.  :D
Ήμαρτον. Μετά από μια ανάγνωση του παρακάτω θέματος καταλαβαίνει κανείς ότι έχοντας καταπιεί αμάσητες τόσες χοντράδες είναι αστείο το να κόβεις βαθμούς για μια περιττή συνθήκη.
https://alkisg.mysch.gr/steki/index.php?topic=988.0

d_bam

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

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

koniordos

Γράφεις
"Σε αντίθεση με το αν πρέπει να κόψει για περιττό έλεγχο, πιστεύω πως μπορεί να κόψει, μια που το βιβλίο το αναφέρει καθαρά πως είναι λάθος! "

Έστω το πρόβλημα της εύρεσης μεγίστου και ελαχίστου πολλών αριθμών και οι ενδεχόμενες υλοποιήσεις του
εντός βρόχου

1η λύση

Αν Χ>max τοτε
max<-x
Τελος_αν
Αν Χ<min τοτε
min<-x
Τελος_αν

2η λύση

Αν Χ>max τοτε
max<-x
Αλλιως_αν Χ<min τοτε
min<-x
Τελος_αν

Η δεύτερη λύση γλιττώνει τον υπολογιστή από ορισμένους περιττούς ελέγχους σε σχέση με τον ελάχιστο. Είναι δυνατόν να κοπούν μονάδες αν δοθεί η πρώτη ?
Θέλω να πω πως είναι πολύ σχετικό το τι είναι περιττό και τι όχι και καλό είναι να μην εξαντλείται η αυστηρότητά μας όσον αφορά ζητήματα αποδοτικότητας αλγορίθμων
Τσορώνης Τάκης
Ηλ.Μηχ. & Μηχ. Η/Υ ΕΜΠ

Laertis

Τάκη, είναι προφανές ότι δεν κόβονται μονάδες στην 1η λύση, αλλά οι 2 λύσεις δεν είναι εντελώς ισοδύναμες. Εξαρτάται απο την αρχικοποίηση των max και min. Αν είναι αυθαίρετη αρχικοποίηση η 2η λύση δεν βγάζει πάντα σωστό αποτέλεσμα.
Υπάρχουν τόσα σημεία για να κοπούν μονάδες που δε νομίζω ότι πρέπει να στεκόμαστε στους περιττούς ελέγχους που δεν αλλιώνουν τον αλγόριθμο.

Νικολακάκης Γιώργος
Μηχανικός Η/Υ Συστημάτων
Καθηγητής Πληροφορικής
http://users.sch.gr/gnikola

gpapargi

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

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

koniordos

Laertis συμφωνώ πως στην αυθαίρετη αρχικοποίηση εκτός πεδίου ορισμού των αριθμών, αν είναι σε αύξουσα ταξινόμηση οι αριθμοί δεν προκύπτει σωστό αποτέλεσμα. Θεώρησα αρχικοποίηση με τον πρώτο των δοθέντων.

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

Βέβαια μια λύση με αλλιως_αν και περιττούς ελέγχους της μορφής

αν χ>0 τοτε
...
αλλιώς_αν χ<=0 και χ>-4 τοτε
..

παρόλο που δεν παραβιάζει την τάξη, τη θεωρώ μη παραδεκτή, διότι υποδηλώνει τη μη κατανόηση της εντολής
Τσορώνης Τάκης
Ηλ.Μηχ. & Μηχ. Η/Υ ΕΜΠ

gpapargi

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

https://alkisg.mysch.gr/steki/index.php?topic=674.msg3827#msg3827

bagelis

Παράθεση από: koniordos στις 08 Οκτ 2007, 12:19:44 ΜΜ
παρόλο που δεν παραβιάζει την τάξη, τη θεωρώ μη παραδεκτή, διότι υποδηλώνει τη μη κατανόηση της εντολής
Υποδηλώνει ίσως, μη κατανόηση της εντολής
Ίσως επίσης να υποδηλώνει ανασφάλεια απλά
έχω ακούσει από μαθητές: "το ήξερα ότι δεν χρειαζόταν αλλά το έβαλα γιατί δεν είναι λάθος έτσι και αλλιώς" (νόμιζαν ότι θα κάνουν καλή εντύπωση;)

Όπως και να έχει όμως ο αλγόριθμος δουλεύει και βγάζει σωστό αποτέλεσμα, άρα πως μπορείς να κόψεις μονάδες;