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

Γενικό Λύκειο => Μονοδιάστατοι πίνακες => Γ΄ Λυκείου => Εισαγωγή στοιχείων, εμφάνιση και υπολογισμοί => Μήνυμα ξεκίνησε από: nikosx στις 31 Ιαν 2006, 01:01:44 μμ

Τίτλος: Δεδομένα στους πίνακες
Αποστολή από: nikosx στις 31 Ιαν 2006, 01:01:44 μμ
Θα ήθελα να μου πείτε τη γνώμη σας για το εξής θέμα.

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

Ευχαριστώ πολύ :)
Τίτλος: Re: Δεδομένα στους πίνακες
Αποστολή από: Φίλιππος στις 31 Ιαν 2006, 05:16:09 μμ
Όταν η εκφώνηση ζητά να διαβαστούν οι τιμές, δηλαδή προδιαγράφει αλληλεπίδραση με το χρήστη, τότε πρέπει να χρησιμοποιείται η εντολή διάβασε.

Διαφορετικά, όταν δηλαδή τα δεδομένα μιας επεξεργασίας δεν πρέπει να διαβαστούν, τότε δηλώνονται με τη δηλωτική εντολή Δεδομένα //...//  

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

Δεδομένα //Ν, Όνομα//

για ένα πίνακα Ν ομομάτων

Εάν το πρόβλημα απαιτεί απλά δήλωση των δεδομένων, δηλαδή δεν χρειάζεται επικοινωνία (αλληλεπίδραση) με το χρήστη, τότε τυπικά είναι λάθος να χρησιμοποιηθεί η διάβασε.
Τίτλος: Re: Δεδομένα στους πίνακες
Αποστολή από: EleniK στις 01 Φεβ 2006, 11:55:43 πμ
Νομίζω ότι και οι δυο λύσεις είναι σωστές. Το διαπίστωσα και πέρσυ στα θέματα (3ο θέμα)των Πανελληνίων που κάποιοι μαθητές μου διάβασαν τον πίνακα (ενώ έλεγε δίνονταί πίνακες), ενώ κάποιοι χρησιμοποίησαν το δεύτερο στυλ με τα Δεδομένα. Και οι δυο λύσεις ήταν σωστές.

Επ' ευκαιρίας ήθελα να ρωτήσω αν δίνονται δυο πίνακες διαφορετικών διαστάσεων τότε είναι σωστό το:

Δεδομένα //Α,Ν//
Δεδομένα //Β,Μ//

Φαντάζομαι πως ναι. Τι νομίζετε για το Δεδομένα //Α, Β, Ν, Μ//;  

Ευχαριστώ
Τίτλος: Re: Δεδομένα στους πίνακες
Αποστολή από: evry στις 01 Φεβ 2006, 01:27:40 μμ
Δε νομίζω ότι και οι δυο λύσεις είναι σωστές. Όταν οι άσκηση λέει "δίνονται" και ο μαθητής χρησιμοποιεί την εντολή διάβασε δεν είναι σωστός.
   Δε λέω ότι θα του στοιχίσει πολύ βαθμολογικά αλλά σίγουρα δεν μπορεί να πάρει όλο το θέμα αφού η απάντησή του δεν ανταποκρίνεται στην εκφώνηση.
    Αν για παράδειγμα η εκφώνηση έλεγε "ΝΑ ΔΙΑΒΑΖΕΙ ΕΝΑΝ ΠΙΝΑΚΑ table, Ν ΣΤΟΙΧΕΙΩΝ" και ο μαθητής έγραφε
Δεδομένα // table, N// θα ήταν σωστός?


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

Επ' ευκαιρίας ήθελα να ρωτήσω αν δίνονται δυο πίνακες διαφορετικών διαστάσεων τότε είναι σωστό το:

Δεδομένα //Α,Ν//
Δεδομένα //Β,Μ//

Φαντάζομαι πως ναι. Τι νομίζετε για το Δεδομένα //Α, Β, Ν, Μ//;  

Ευχαριστώ

Τίτλος: Re: Δεδομένα στους πίνακες
Αποστολή από: P.Tsiotakis στις 01 Φεβ 2006, 06:46:06 μμ

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

Ναι, το    Δεδομένα // ν, Α, μ, Β //   είναι σωστό
Τίτλος: Re: Δεδομένα στους πίνακες
Αποστολή από: Φίλιππος στις 01 Φεβ 2006, 10:01:16 μμ
Η "δηλωτική" εντολή Δεδομένα χρησιμοποιείται όταν ο αλγόριθμος "δέχεται" τα δεδομένα αντι να τα ζητάει από το χρήστη.

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

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

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

Οι περισσότεροι δεν "κόβουμε" μονάδες για τέτοια λάθη αφού (1) το επίπεδο των γραπτών είναι εν γένει πολύ χαμηλό και χωρίς αυτά και (2) δεν είναι σίγουρο ότι το μάθημα διδάσκεται "σωστά" απ' όλους.

Όμως γινόμαστε κάθε χρόνο όλοι μας μάρτυρες της εξέλιξης τόσο του μαθήματος όσο και των θεμάτων στις εξετάσεις.  Καλό λοιπόν είναι να καταλήγουμε σε ένα τρόπο διδασκαλίας κοινό και με βάση τις επιταγές του μαθήματος.  Απλουστεύσεις που δεν ορίζονται στο μάθημα κάποια στιγμή θα αρχίσουν να προβληματίζουν ΚΑΙ σε επίπεδο βαθμολόγησης.  

Οι μαθητές μπορούν να καταλάβουν ό,τι τους πούμε.  Οι απλουστεύσεις που ο καθένας μας τυχόν σκέφτεται ενδέχεται κάποιος άλλος να θεωρήσει αυθαίρετες και επομένως να ζημιώσει ο μαθητής.
Τίτλος: Re: Δεδομένα στους πίνακες
Αποστολή από: P.Tsiotakis στις 02 Φεβ 2006, 12:14:21 μμ

Μπράβο Φίλιππε για τον τρόπο που παρουσίασες το θέμα
Τίτλος: Re: Δεδομένα στους πίνακες
Αποστολή από: χ στις 02 Φεβ 2006, 02:24:31 μμ
Έστω ότι η άσκηση ζητά πρόγραμμα στο οποίο είναι δεδομένος ένας μονοδιάστατος πίνακας 20 θέσεων και θέλουμε ας πούμε να υπολογίσουμε το άθροισμα των στοιχείων του πίνακα. Πως θα εισάγουμε τον πίνακα στο πρόγραμμα; Με την εντολή δεδομένα ή θα πρέπει να τον διαβάσουμε μετά τη δήλωση μεταβλητών;

Ευχαριστώ και πάλι
Τίτλος: Re: Δεδομένα στους πίνακες
Αποστολή από: P.Tsiotakis στις 02 Φεβ 2006, 03:12:48 μμ

Σε πρόγραμμα δεν ΟΡΙΖΕΤΑΙ η εντολή "Δεδομένα",  όλα διαβάζονται... (εντολή ΔΙΑΒΑΣΕ)
Τίτλος: Re: Δεδομένα στους πίνακες
Αποστολή από: Φίλιππος στις 02 Φεβ 2006, 06:28:48 μμ
Μία τέτοια άσκηση θα μπορούσε να ζητάει υπο-πρόγραμμα (και όχι πρόγραμμα) οπότε ο πίνακας θα ορίζεται ως τυπική παράμετρος του υποπρογράμματος.  Όποιος κληθεί να υλοποιήσει ένα τέτοιο υπο-πρόγραμμα θα μπορεί να θεωρεί όντως δεδομένες τις τιμές του πίνακα και να υλοποιήσει τον αλγόριθμο υπολογισμού αθροίσματος στοιχείων του πίνακα.

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

[glossa]
ΣΥΝΑΡΤΗΣΗ Αθροισμα_Στοιχείων_Πίνακα(Π): ΠΡΑΓΜΑΤΙΚΗ
ΜΕΤΑΒΛΗΤΕΣ
 ΠΡΑΓΜΑΤΙΚΕΣ: Π[20], Σύνολο
ΑΡΧΗ
 Σύνολο <- 0
 ΓΙΑ Ι ΑΠΟ 1 ΜΕΧΡΙ 20
   Σύνολο <- Σύνολο + Π[Ι]
 ΤΕΛΟΣ_ΕΠΑΝΑΛΗΨΗΣ
 Αθροισμα_Στοιχείων_Πίνακα <- Σύνολο
ΤΕΛΟΣ_ΣΥΝΑΡΤΗΣΗΣ
[/glossa]
Σε πρόγραμμα, όπως λέει και ο Παναγιώτης, τα πάντα "Διαβάζονται".  Δεν υπάρχει τρόπος (στα πλαίσια του μαθήματος) να λαμβάνουν τιμές διαφορετικά.
Τίτλος: Re: Δεδομένα στους πίνακες
Αποστολή από: andreas στις 03 Φεβ 2006, 09:37:43 πμ
Φίλιππε, καλημέρα.

Σου ξέφυγε  το  Ι
 
   ΑΚΕΡΑΙΕΣ  :  Ι

Τίτλος: Re: Δεδομένα στους πίνακες
Αποστολή από: gpapargi στις 03 Φεβ 2006, 12:40:02 μμ
Καλημέρα

Χωρίς να διαφωνώ θα περιγράψω μια λίγο διαφορετική αντίληψη για το θέμα των δεδομένων.

Θυμάμαι παλιά στη φυσική που μας δίνανε την άσκηση με το κεκλιμένο επίπεδο και μας ρωτάγανε πχ με ποια επιτάχυνση θα κινηθεί το σώμα προς τα κάτω. Στο τέλος λοιπόν λέγανε «Δίνεται το g, ο συντελεστής τριβής n, η γωνία του κεκλιμένου επιπέδου φ κλπ»

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

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

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

Σε ΓΛΩΣΣΑ τα πράγματα γίνονται αυστηρά στη σύνταξη και κάθε πρόγραμμα πρέπει να είναι αυτόνομο και να τρέχει. Εκεί τα δεδομένα πρέπει να είναι συγκεκριμένα και το πρόγραμμα να τρέχει. Οπότε δεν μπορεί να υπάρχει κάτι αντίστοιχο με τα Δεδομένα // //.

Το «Δεδομένα» δε θα το χαρακτήριζα εντολή γιατί δεν κάνει κάτι με την έννοια που κάνουν οι άλλες εντολές. Απλά ενημερώνει ότι κάποια πράγματα θεωρούνται γνωστά και δε θα ασχοληθούμε με το διάβασμά τους. Αν και είμαι από αυτούς που στηρίζουν την αυστηρότητα, τα «Δεδομένα» και «Αποτελέσματα» τα αντιμετωπίζω χαλαρά, σαν ένα εύκολο τρόπο να αποφεύγεις εντολές εισόδου και εξόδου και να ασχολήσαι με το κύριο κομμάτι του αλγορίθμου.

Αυτή είναι η οπτική μου γωνία χωρίς να είμαι απόλυτος.
Τίτλος: Re: Δεδομένα στους πίνακες
Αποστολή από: Vangelis στις 03 Φεβ 2006, 11:06:19 μμ
Συμφωνώ με τον gpaparg  το Δεδομένα απλά δηλώνει ότι δεν χρειάζεται να ασχοληθείς με αυτά.  Από κάπου υπάρχουν έτοιμα.

Βαγγέλης