Το Στέκι των Πληροφορικών

Γενικό Λύκειο => Τμηματικός προγραμματισμός => Γ΄ Λυκείου => Συναρτήσεις => Μήνυμα ξεκίνησε από: meteo_xampos στις 31 Μαρ 2006, 10:31:36 ΠΜ

Τίτλος: 2 τρόποι λύσεις μιας άσκησης. Ποιος ο σωστός???
Αποστολή από: meteo_xampos στις 31 Μαρ 2006, 10:31:36 ΠΜ
Γεια σας συνάδελφοι. Είμαι καθηγητής στο μάθημα ΑΕΠΠ, και είναι η πρώτη φορά που γράφω στη λίστα για το μάθημα. Θα ήθελα να σας παρουσιάσω μια άσκηση, η οποία εμφανίστηκε στο ΕΘΝΟΣ στο έντυπο για τους μαθητές 3ης Λυκείου. Ήταν 3η άσκηση σε ένα σύνολο 4 θεμάτων, σε στυλ πανελληνίων.

ΑΣΚΗΣΗ
Ένα εργοστάσιο παραγωγής αντιστάσεων της τάξης των 100 kΩ, θέλοντας να κάνει έλεγχο για την ποιότητα της παραγωγής του, υπέβαλε σε τρείς διαφορετικές πραγματικές μετρήσεις τις τιμές των Ωμικών αντιστάσεων τριακοσίων μονάδων (300).
Να γραφεί κύριο πρόγραμμα σε ΓΛΩΣΣΑ το οποίο να κάνει τα παρακάτω:
(α) Διαβάζει τις τιμές των 3 μετρήσεων για κάθε αντίσταση. (θεωρήστε ότι οι τιμές είναι θετικές και δίνονται σε kΩ). (μονάδες 4)
(β) Βρίσκει και τυπώνει τη μέση τιμή των 3 μετρήσεων για κάθε αντίσταση. (μονάδες 6)
(γ) Να γραφεί υποπρόγραμμα, το οποίο να καλείται μέσα από το κύριο πρόγραμμα, που θα υπολογίζειτη διαφορά του μεγαλύτερου μέσου όρου των μετρήσεων των αντιστάσεων από το μικρότερο μέσο όρο. (μονάδες 10)

Λοιπόν, η λύση η δικιά μου:

Πρόγραμμα ΑΣΚΗΣΗ_3
Μεταβλητές
    Πραγματικές:min,max,μ1,μ2,μ3,ΜΟ,Δ
Αρχή
    min<--100
    max<--0
    Για i από 1 μέχρι 300
        Διάβασε μ1,μ2,μ3 !οι 3 μετρήσεις για κάθε μια απ'τις 300 ΄
        ΜΟ<--(μ1+μ2+μ3)/3 !ο ΜΟ κάθε αντίστασης
        Γράψε ΜΟ
        Αν ΜΟ<min τότε
            min<--MO
        Τέλος_ΑΝ !εύρεση ελάχιστου ΜΟ
        Αν ΜΟ>max τότε
            max<--MO
        Tέλος_Αν !εύρεση μέγιστου ΜΟ
     Τέλος_επανάληψης
     Δ<--Διαφορά(max,min)
Tέλος_Προγράμματος

Συνάρτηση Διαφορά(α,β):πραγματική
Μεταβλητές
    Πραγματικές:α,β
Αρχή
    Διαφορά<--α-β
Τέλος_Συνάρτησης

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

Πρόγραμμα ΑΣΚΗΣΗ_3
Μεταβλητές
     Πραγματικές:Α[300,3],ΜΟ[300],Δ
     Ακέραιες:i,j
Αρχή
     Για i από 1 μέχρι 300
           Γράψε "Μετρήσεις αντίστασης", i
           MO<--0
           Για j από 1 μέχρι 3
                 Διάβασε Α[i,j]
                 MO<--MO+A[i,j]
           Tέλος_Επανάληψης
           ΜΟ<--MO/3
     Tέλος_Επανάληψης
     Για i από 1 μέχρι 300
           Γράψε "Μέση τιμή μετρήσεων αντίστασης",i,ΜΟ   
     Τέλος_Επανάληψης
     Δ<--Διαφορά(ΜΟ)
     Γράψε "Διαφορά",Δ
Τέλος_Προγράμματος

Συνάρτηση Διαφορά (Α): Πραγματική
Μεταβλητές
      Πραγματικές:Α[300],min,max
      Ακέραιες:i
Αρχή
      max<--A[1]
       min<--A[1]
      Για i από 2 μέχρι 300
            Αν Α>max τότε
                    max<-A
            Τέλος_Αν
            Αν Α<min τότε
                    min<--A
            Τέλος_Αν
      Τέλος_Επανάληψης
      Διαφορά<--max-in
Τέλος_Συνάρτησης

Ποιά από τις δυο λύσεις είναι σωστή??  ??? Περιμένω γνώμες.
Χαράλαμπος Καρανδεινος
Καθηγητής Η/Υ




Τίτλος: Απ: 2 τρόποι λύσεις μιας άσκησης. Ποιος ο σωστός???
Αποστολή από: nekis στις 31 Μαρ 2006, 01:06:07 ΜΜ
Αγαπητέ συνάδελφε
Είναι μια άσκηση που θέλει να ελέγξει ....forced τις γνώσεις ενός μαθητή στα υποπρογράμματα.
Ποιος, υπό κανονικές συνθήκες θα δημιουργούσε ενότητα σε ένα τέτοιο πρόβλημα;
Νονίζω κανένας...
Άρα σχεδιαστικά και οι δυο λύσεις είναι για εμένα ισοδύναμες με τη διαφορά ότι στη δεύτερη γίνεται κατασπατάληση μνήμης
με τη χρήση του πίνακα παραμέτρου των 300 θέσεων, χωρία να υπάρχει καμία ανάγκη.
Από την εκφώνηση πάντως, με τα φτωχά ελληνικά που ξέρω μου φαίνονται και οι δυο αποδεκτές.
Το ερώτημά σου ενυπάρχει στο βασικό μου προβληματισμό για το μάθημα ότι κάποιος δεν εξετάζεται στα ελληνικά αλλά στην αλγοριθμική μοντελοποίηση ενός προβλήματος, αλλιώς garbage in -> garbage out
NΚυριακου
Τίτλος: Απ: 2 τρόποι λύσεις μιας άσκησης. Ποιος ο σωστός???
Αποστολή από: gpapargi στις 31 Μαρ 2006, 01:24:23 ΜΜ
Πολλές φορές κάποιος έχει κάτι στο νου του και φτιάχνει μια άσκηση για να το διδάξει. Δε σκέφτεται όμως αν η άσκηση αυτή βγαίνει με άλλο τρόπο καλύτερο.

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

Υπάρχει μεγάλη διαφορά στην ποιότητα των 2 αλγορίθμων.

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

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

Αυτή είναι η δική μου γνώμη
Τίτλος: Απ: 2 τρόποι λύσεις μιας άσκησης. Ποιος ο σωστός???
Αποστολή από: dozb στις 01 Απρ 2006, 08:18:56 ΜΜ
Eγώ σε αυτό το θέμα έχω μια άλλη ερώτηση:
Η διευκρίνηση "(θεωρήστε ότι οι τιμές είναι θετικές και δίνονται σε kΩ)." υπονοεί ότι θέλει και έλεγχο  τιμών κατά το διάβασμα?

Μήπως δηλαδή κάθε μια από τις δυο λύσεις που δόθηκαν , θα έπρεπε να τροποποιηθούν:
Για i απο 1 μέχρι 300
    Αρχή_Επανάληψης
       ΓΡΑΨΕ 'Δώστε 3 θετικές τιμές για μετρήσεις'
       Διάβασε μ1, μ2, μ3
  Μέχρις_ότου ((μ1>0) και (μ2>0) και (μ3>0))
......κλπ 
για την πρώτη λύση

Πάντως και τις δυο τις θεωρώ ικανοποιητικές λύσεις...η πρώτη είναι σαφώς πιο έξυπνη βέβαια, αλλά μια που το βιβλίο προτρέπει για τη δημιουργία ενδιάμεσου πίνακα αν ακολουθεί περαιτέρω επεξεργασία τιμών (εδώ εύρεση min και max).
Τίτλος: Απ: 2 τρόποι λύσεις μιας άσκησης. Ποιος ο σωστός???
Αποστολή από: EleniK στις 02 Απρ 2006, 11:11:35 ΠΜ
Το γεγονός ότι αναφέρει 'Θεωρήστε ότι οι τιμές είναι θετικές.....' εννοεί νομίζω ότι δεν χρειάζεται να κάνουμε εγκυρότητα τιμής. Φαντάζομαι αν χρειαζόταν θα το ζητούσε διαφοτερικά όπως π.χ. να γίνεται έλεγχος αν οι τιμές είναι θετικές κλπ....
Τίτλος: Απ: 2 τρόποι λύσεις μιας άσκησης. Ποιος ο σωστός???
Αποστολή από: Vangelis στις 02 Απρ 2006, 05:47:16 ΜΜ
Προφανώς δεν ζητάει έλεγχο εγκυρότητας και οι δύο λύσεις είναι αποδεκτές στις εξετάσεις.
Φυσικά ο πρώτος τρόπος είναι καλύτερος αλλά αυτό δεν μεταφράζεται (δυστυχώς) σε βαθμούς.

Βαγγέλης
Τίτλος: Απ: 2 τρόποι λύσεις μιας άσκησης. Ποιος ο σωστός???
Αποστολή από: gpapargi στις 02 Απρ 2006, 11:19:29 ΜΜ
Συμφωνώ με τους 2 προηγούμενους (και ειδικά με το "Δυστυχώς" του Βαγγέλη).

Προσθέτω ότι η διευκρίνηση για το ότι οι αντιστάσεις δίνονται σε kΩ σημαίνει ότι όλες έχουν την ίδια μονάδα μέτρησης και έτσι μπορεί να γίνει πρόσθεση και σύγκριση των αριθμητικών τιμών.
Τίτλος: Απ: 2 τρόποι λύσεις μιας άσκησης. Ποιος ο σωστός???
Αποστολή από: meteo_xampos στις 03 Απρ 2006, 10:07:46 ΠΜ
Καλημέρα σας. Σας ευχαριστώ πολύ για τις άμεσες και κατατοπιστικότατες απαντήσεις. Να είστε καλά!!! Τα λέμε.
Χαράλαμπος.