2 μικρές διευκρινήσεις

Ξεκίνησε από Wizard, 14 Μαρ 2006, 04:49:34 ΜΜ

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

P.Tsiotakis


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

Επισκέπτης

Αυτό είχα κατά νου, γιστί αν μπούμε σε τέτοια "κανάλια" αυστηρότητας σε επίπεδο αλγοριθμικής ψευδογλώσσας, όντως ο div δε μπορεί να χρησιμοποιηθεί με πραγματικούς τελεσταίους!

Οπότε νομίζω ότι είναι προτιμότερο ο μαθητής να χρησιμοποιήσει την Α_Μ σε αυτή την περίπτωση.

Αλήθεια, στις επαναληπτικές 2005 (Εσπερινά) τέθηκε τέτοιο θέμα (2ο): "β) να ελέγχει αν είναι ακέραιος και να εμφανίζει τη λέξη «ΑΚΕΡΑΙΟΣ» αλλιώς να εμφανίζει τη λέξη «ΠΡΑΓΜΑΤΙΚΟΣ»"

Είδε κανείς ενδεικτικές λύσεις που να στάλθηκαν από την ΚΕΕΕΛ στα βαθμολογικά σχετικά με αυτό το θέμα;

Επίσης, ας μην ξεχνάμε και τις επαναληπτικές του 2003 (Ενιαία) με το θέμα 2 να διατυπώνει (μεταξύ άλλων) και την έκφραση:

"Μέχρις_ότου Κ > Ρίζα (Α)....Θεωρείστε ότι η συνάρτηση Ρίζα (Α) επιστρέφει την τετραγωνική ρίζα του Α"

EleniK

Ναι έχεις δίκηο. Από κεκτημένη ταχύτητα έγραψα div σχετικά με τον έλεγχο ακεραίου. Κακό παράδειγμα. Εννοούσα ότι χρησιμοποιώ div 2 στον αλγόριθμο του πολλαπλασιασμού αλά ρωσικά μεταξύ ακεραίων α <- α div 2
Ελένη Κοκκίνου
Καθηγήτρια Πληροφορικής, ΠΕ19

DMitsos

Σχετικά με το τελευταίο σχόλιο για το
χ DIV 1,  αντί του Α_Μ(χ)
έχω την εξής απορία:
Δεν πρέπει οι ποσότητες που συμμετέχουν στο DIV ως διαιρετέος και διαιρέτης να είναι δηλωμένες ως ακέραιες; Άρα το παραπάνω "κόλπο" δεν είναι σωστό...


Christos

Γεια σε όλους.

Σχετικά με την άσκηση στη σελίδα 10 στο Τετράδιο Μαθητή όπου χρησιμοποιείται αλλιώς_αν για να κλείσει την εντολή πολλαπλής επιλογής, μπορεί να χρησιμοποιηθεί και το σκέτο αλλιώς χωρίς να μεταβάλλεται η λειτουργία του αφού θεωρούμε οτι οι τιμές που διαβάζει ο αλγόριθμος είναι μόνο 1,2,3. Άρα αφού δεν είναι 1 ή 2, υποχρεωτικά η τιμή θα είναι 3 και θα πηγαίνει στο αλλιώς.

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


P.Tsiotakis


Αν στο Αλλιώς δεν επιθυμούμε να κάνουμε κάποια ενέργεια, γιατί να μπει;

Ασφάλεια σημαίνει οτι μπορεί κάποιος να το πάρει λάθος αν δεν υπάρχει Αλλιώς;

Christos

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

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

Αν δεν γίνεται έλεγχος θεωρούμε οτι ο χειριστής δίνει έγκυρα δεδομένα στην είσοδο. Κατά συνέπεια, το αλλιώς θα καλύπτει οπωσδήποτε την τελευταία έγκυρη τιμή.

Δεν νομίζω οτι μπορεί κάποιος να θεωρήσει λάθος την παράλειψη του αλλιώς, απλά αφήνει την υπόνοια οτι υπάρχει ενδεχόμενο ο χειριστής να δώσει μη έγκυρη τιμή και για το λόγο αυτό εξετάζουμε ρητά μόνο τις έγκυρες τιμές (π.χ. 1,2,3) χωρίς το τελευταίο αλλιώς. Τότε γιατί δεν κάναμε έλεγχο να το αποτρέψουμε αυτό ;

xaidi

η μεταβλητή για την οποία πρέπει να χρησιμοποιήσουμε το div πρέπει να είναι ακέραια μην το ξεχνάς!!
Ευχαριστώ,

andreas_p

Στη θέση του Α_Μ, προτείνω το div. Το ακέραιο μέρος ενός αριθμού βρίσκεται και x div1 .

Δηλαδή :

χ <-- 8,3
ακέραιο <-- χ  div 1 ;

Μπορείς, Ελένη, να εφαρμόσεις DIV  σε πραγματικό ;

alkisg

#24
Το [glossa]x <- 8.3
ακέραιο <- x div 1[/glossa] είναι λάθος, όμως το [glossa]ακέραιο <- A_M(x) div 1[/glossa] είναι σωστό.

Φυσικά η δεύτερη περίπτωση πλέον δεν έχει νόημα, έχουμε ήδη βρει το ακέραιο μέρος...

andreas_p

Το ακέραιο μέρος ενός αριθμού βρίσκεται και x div1 .

Δηλαδή, ΜΠΟΡΩ  :

χ <- 8,3
ακέραιο <- χ DIV 1   ;

alkisg

Όχι, το div ορίζεται μόνο για ακεραίους.

EleniK

Αντρέα νομίζω ότι σε μπέρδεψα με το κακό παράδειγμα που επέλεξα. Όπως έχουν προαναφέρρει οι συνάδελφοι το div είναι μόνο για ακεραίους.
Σχετικά όμως με το συγκεκριμένο πρόβλημα τη διερεύνηση αν ένας αριθμός είναι ακέραιος, μπορούμε νομίζω να κάνουμε:

Αν χ=Α_Μ(χ) τότε

εμφάνισε 'Ακέραιος'
Τέλος_αν

(κατ' αντιστοιχία με την int της Basic)
Ελένη Κοκκίνου
Καθηγήτρια Πληροφορικής, ΠΕ19