Ανορθόδοξοι αλγόριθμοι

Ξεκίνησε από gpapargi, 11 Ιαν 2006, 10:40:57 ΠΜ

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

gpapargi

Καλημέρα

Θα ήθελα να θέσω το εξής θέμα: Θα περιγράψω λεκτικά  4 αλγόριθμους που λειτουργούν και δίνουν σωστά αποτελέσματα αλλά είναι ανορθόδοξοι. Θα ήθελα να μου πείτε πόσους βαθμούς θα κόβατε (αν θα κόβατε) και γιατί.

Περίπτωση 1

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

Περίπτωση 2

Η άσκηση ζητάει να γίνει σάρωση πίνακα και η σάρωση να διακόπτεται όταν συμβεί κάποια συνθήκη διακοπής. Ο μαθητής χρησιμοποιεί τη «Για» και όταν συμβεί η συνθήκη διακοπής βάζει το μετρητή της «Για» να είναι ίσος με την τελική τιμή της «Για» προκαλώντας τη διακοπή του βρόχου.

Περίπτωση 3

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

Περίπτωση 4

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

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

Για... να δούμε τοποθετήσεις σε αυτό το πονηρό ερώτημα  :)  

Sergio

πολύ καλή ερώτηση !!

Για να ακούσουμε απόψεις !!
Απ τη μια η θητεία μου σε σχολικές αίθουσες: να φλυαρώ - να ελπίζω πως κατι κατάλαβαν - να εξερευνώ - να μαθαίνω. Απ την άλλη, σχεδόν συνομήλικη, η Διδακτική της Πληροφορικής: ερευνά διαδικασίες μάθησης - φλερτάρει με την Ψυχολογία - με καλεί να αφήσω το βλέμμα του Πληροφορικού και να δω με τα μάτια του δασκάλου. Τέκνα των 2, οι απόψεις μου.. (προσαρμοσμένο από τον πρόλογο του βιβλίου "Το μακρόν Φυσική προ του βραχέως διδάσκω" του Ανδρέα Κασσέτα)

EleniK

Λαμβάνοντας υπόψη ότι οι οδηγίες λένε ότι 'κάθε λύση επιστημονικά τεκμηριωμένη είναι σωστή', προσωπικά δε νομίζω ότι θα έκοβα μονάδες.

Μου έχει τύχει να συναντήσω τις περιπτώσεις 3 και 4 και δεν έκοψα μονάδες μια που το αποτέλεσμα είναι σωστό.

Εξάλλου με τι δικαιολογία να αφαιρέσεις μονάδες;  

Πάντως όντως πολύ καλή ερώτηση
Ελένη Κοκκίνου
Καθηγήτρια Πληροφορικής, ΠΕ19

peterpan

ΟΛΑ ΤΑ ΠΑΡΑΠΑΝΩ ΕΙΝΑΙ ΑΝΤΙΣΤΟΙΧΑ ΜΕ ΤΟ ΘΕΜΑ 3 ΙΟΥΝΙΟΣ 2005 ΣΤΟ ΟΠΟΙΟ ΑΠ' ΟΤΙ ΓΝΩΡΙΖΩ ΚΑΙ ΟΠΩΣ ΕΧΕΙ ΣΥΖΗΤΗΘΕΙ ΣΕ ΠΑΛΑΙΟΤΕΡΟ POST, ΟΙ ΔΙΟΡΘΩΤΕΣ ΕΒΑΖΑΝ ΤΟ ΠΟΛΥ ΤΙΣ ΜΙΣΕΣ ΜΟΝΑΔΕΣ ΧΩΡΙΣ ΝΑ ΥΠΑΡΧΕΙ ΕΠΙΣΗΜΗ ΔΙΕΥΚΡΙΝΗΣΗ ΣΕ ΟΠΟΙΟΝ ΕΙΧΕ ΛΥΣΕΙ ΤΗ ΑΣΚΗΣΗ ΜΕ «ΓΙΑ» ΑΝΤΙ ΓΙΑ «ΟΣΟ».
ΚΑΠΟΙΑ ΣΤΙΓΜΗ ΠΡΕΠΕΙ ΕΠΙΤΕΛΟΥΣ ΝΑ ΓΙΝΕΙ ΜΙΑ ΚΟΙΝΗ ΣΥΜΦΩΝΙΑ ΓΙΑ ΟΛΕΣ ΑΥΤΕΣ ΤΙΣ ΠΕΡΙΠΤΩΣΕΙΣ.   :juggle:

P.Tsiotakis

Κατά τη γνώμη μου:

- Περίπτωση 1: Σωστή. Έχεις βάλει σε εισαγωγικά τους αριθμούς; Εκτύπωσε "1", Εκτύπωσε "2", .... Σε διαφορετική περίπτωση καμία μονάδα.  Αν θες να αποτρέψεις τις "μπακαλοδουλειές" μη βάζεις 30, αλλά 3000 επαναλήψεις

- Περίπτωση 2: Τελείως Λάθος (καμία μονάδα σωστή). Στο τετράδιο μαθητή (κεφάλαιο 8 αν δεν κάνω λάθος) λέει οτι δεν πρέπει να τροποποιείται στη δομή Για η τιμή του μετρητή (και η αρχική και τελική τιμή) εντός του βρόχου.

- Περίπτωση 3: Σωστή. Κάνει αυτό που ζητάει, αρκεί η ταξινόνηση να είναι φθίνουσα, έτσι;  ;)

- Περίπτωση 4: Σωστή. Κάνει αυτό που ζητάει, αρκεί η ταξινόνηση να είναι επίσης φθίνουσα, έτσι;  ;)

Μου ξέφυγε κάτι άλλο;

spinach

ΠαράθεσηΜου ξέφυγε κάτι άλλο;
nai. to

grapse 1
grapse 2
......
grapse 30

dhladh xoris eisagogika, den einai lathos.
meta apo mia grapse mporoyme na exoyme arithmitikh timh eite ayth proerxetai apo kapoia praksh (grapse 1+1) eite einai sketh.

P.Tsiotakis


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

gpapargi

Παιδιά δε θα ήθελα να πάει η κουβέντα σε λάθος κατεύθυνση. Τους αλγόριθμους τους περιέγραψα λεκτικά και δε στάθηκα στα εισαγωγικά. Θεωρήστε ότι υπάρχουν. Άλλωστε όπως διευκρινίζω παρακάτω (στην περίπτωση 1 εννοώ) αυτό που θέλω να σχολιαστεί είναι το ότι χρησιμοποιήθηκαν 30 εντολές εκτύπωσης αντί για  εντολή επανάληψης.

Το θέμα που έθεσα ουσιαστικά είναι το πόσο κακός μπορεί να είναι ένας αλγόριθμος και παρόλα αυτά να γίνει αποδεκτός, κάτι που για μένα σχετίζεται άμεσα με το πόσο επιστημονικά διδάσκεται το μάθημα.

Εντάξει, η αλγοριθμική είναι επιστήμη. Αλλά πόσο επιστημονικά διδάσκεται; Από τη μία υπάρχει η θέση της αλγοριθμικής ως προς την ποιότητα ενός αλγορίθμου αλλά από την άλλη υπάρχει και το ρητό "ότι βγάζει σωστά αποτελέσματα είναι σωστό και αποδεκτό".

Αυτά συμβαδίζουν; Πρέπει να συμβαδίζουν;




EleniK

Γιώργο σχετικά με τον τελευταίο σου προβληματισμό,

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

Πάντως έχω τύχει σε περίπτωση που καθηγητής αφαίρεσε μονάδες γιατί ο μαθητής χρησιμοποίησε πολλές απλές δομές επιλογής και όχι μια πολλαπλή. Συμφωνούσα ότι η πολλαπλή ήταν η καλύτερη λύση, αλλά ο αλγόριθμος ήταν σωστός και με τις απλές. Τι να απαντούσα στο μαθητή που με ρώτησε 'Γιατί κυρία αφαιρέθηκαν οι μονάδες, αφού κάθε σωστή λύση είναι αποδεκτή;'

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

Εξάλλου ποιος μπορεί να κρίνει αντικειμενικά την ποιότητα ενός αλγορίθμου; Μέχρι ενός σημείου γίνεται, από εκεί και πέρα;...

Σχετικά με την Περίπτωση 2 νομίζω ότι παρασύρθηκα από τις άλλες. Συμφωνώ με τον Παναγιώτη ότι είναι λάθος. Νομίζω ότι έχουμε κάνει μια παρόμοια συζήτηση για το συγκεκριμένο θέμα σε ένα άλλο topic.
  
Ελένη Κοκκίνου
Καθηγήτρια Πληροφορικής, ΠΕ19

P.Tsiotakis

Το οτι εγώ διδάσκω το μάθημα μου σωστά, δεν σημαίνει οτι κάποιος μαθητής δεν θα γράψει 30 εκτύπωσε !!

Είναι οι εξετάσεις στη μέση που μας δεσμεύουν. Αν δεν υπήρχαν όμως, δεν θα υπήρχε και το μάθημα !!

Θα πρέπει να ζήσουμε με αυτό ...

evry

Άσκηση: Να γραφτεί αλγόριθμος ο οποίος να υπολογίζει το άθροισμα όλων των αριθμών από 1 εώς N.

Απάντηση μαθητή: Σ <-- Ν(Ν+1)/2

Τι κάνουμε;
What I cannot create I do not understand -- Richard Feynman
http://evripides.mysch.gr

EleniK

Συγγνώμη επειδή έχουν περάσει αρκετά χρόνια από τότε που έκανα αριθμητικές σειρές, Ο τύπος αυτός σου δίνει το άθροισμα από 1 μέχρι Ν;

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

gpapargi


P.Tsiotakis


Ο μικρός Gauss δεν πούλησε μαγκιά στον καθηγητή του έτσι;

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

Εκτός κι αν ο μικρός/ή είναι "Gauss" οπότε ...



Βαγγέλης  Κανίδης

Στου διαγωνισμούς πληροφορικής (Ελληνικούς και Παγκόσμιους) μετράει μόνο το αποτέλεσμα.  Για το λόγο αυτό ζητούν πάντα το πρόγραμα που θα γράψουν να διαβάζει απο ένα αρχείο τα δεδομένα και να γράφει τα αποτελέσματα σε ένα άλλο αρχείο.  Στη συνέχεια η επιτροπή έχει ορισμένα υποδειγματικά αρχεία εισόδου και με βάση αυτά ελέγχει τι αποτέλεσμα βγάζει το κάθε πρόγραμμα και έτσι βαθμολογείται.   Δηλαδή κανένας δεν ελέγχει τον κώδικα!!!
Προσωπικά θα δεχόμουν σωστά όλα τα παραδείγματα του Παναγιώτη  ακόμα και αν το τετράδιο μαθητή αναφέρει ότι δεν αλλάζει τιμή ο μετρητής στη δομή ΓΙΑ.  (Ιστορικά -Πρίν από πολλά χρόνια ήταν ενας διαδεδομένος τρόπος  τερματισμού της ΓΙΑ  στην BASIC-.)    Κακός αλγόριθμος αλλα αλγόριθμος !!!  

Βαγγέλης