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

Γενικό Λύκειο => Γ΄ Λυκείου => Μήνυμα ξεκίνησε από: sstauross στις 27 Μαΐου 2013, 12:39:16 ΠΜ

Τίτλος: Δήλωση πίνακα στις Σταθερές
Αποστολή από: sstauross στις 27 Μαΐου 2013, 12:39:16 ΠΜ
Υπάρχει τέτοια περίπτωση;
και αν ναι μπορείτε να μου δώσετε ένα παράδειγμα;
Τίτλος: Απ: Δήλωση πίνακα στις Σταθερές
Αποστολή από: manosteach στις 27 Μαΐου 2013, 06:55:04 ΠΜ
Όταν λες "Δήλωση πίνακα στις Σταθερές" φαντάζομαι οτι μιλάς για το μέγεθος του πίνακα.

Πρόγραμμα ΜΜΜΜ
Σταθερές
Ν=100
Μεταβλητές
Πραγματικές: ΠΙΝΑΚΑΣ[Ν]
Αρχή

Αυτός είναι ένας τρόπος να δηλώσεις το μέγεθος ενός πίνακα ώς σταθερά.
Τίτλος: Απ: Δήλωση πίνακα στις Σταθερές
Αποστολή από: Λαμπράκης Μανώλης στις 27 Μαΐου 2013, 09:35:53 ΠΜ
Καλημέρα σε όλους.. να ρωτήσω, το να δηλώσουμε ως σταθερά το μέγεθος του πίνακα, δεν είναι κατά κάποιο τρόπο "περιττό"?? το μέγεθος έτσι κ αλλιώς σταθερό είναι, δεν αλλάζει....για παράδειγμα να αλλάξω λίγο την ερώτηση..μπορούμε να δηλώσουμε ως μεταβλητή το μέγεθος του πίνακα?? εγώ θα έλεγα όχι, αφού το μέγεθος είναι σταθερό...μόνο πχ σε περίπτωση που έχουμε πίνακα 10 θέσεων, και θέλουμε να χρησιμοποιήσουμε πχ 4 θέσεις τις οποίες ζητάμε από τον χρήστη να δώσει...και πάλι όμως το μέγεθος (οι 10 θέσεις) δεν αλλάζουν....υπάρχει κάποιο λάθος στη σκέψη μου?? ευχαριστώ
Τίτλος: Απ: Δήλωση πίνακα στις Σταθερές
Αποστολή από: sstauross στις 27 Μαΐου 2013, 12:22:44 ΜΜ
Εννοώ για παράδειγμα όταν θέλω όλος ο πίνακας να περιέχει τις μέρες της βδομάδας για παράδειγμα, δε μιλάω για το μέγεθος αλλά για σταθερό περιεχόμενο...
Τίτλος: Απ: Δήλωση πίνακα στις Σταθερές
Αποστολή από: manosteach στις 27 Μαΐου 2013, 01:47:09 ΜΜ
Παράθεση από: mkouv στις 27 Μαΐου 2013, 09:35:53 ΠΜ
Καλημέρα σε όλους.. να ρωτήσω, το να δηλώσουμε ως σταθερά το μέγεθος του πίνακα, δεν είναι κατά κάποιο τρόπο "περιττό"?? το μέγεθος έτσι κ αλλιώς σταθερό είναι, δεν αλλάζει....για παράδειγμα να αλλάξω λίγο την ερώτηση..μπορούμε να δηλώσουμε ως μεταβλητή το μέγεθος του πίνακα?? εγώ θα έλεγα όχι, αφού το μέγεθος είναι σταθερό...μόνο πχ σε περίπτωση που έχουμε πίνακα 10 θέσεων, και θέλουμε να χρησιμοποιήσουμε πχ 4 θέσεις τις οποίες ζητάμε από τον χρήστη να δώσει...και πάλι όμως το μέγεθος (οι 10 θέσεις) δεν αλλάζουν....υπάρχει κάποιο λάθος στη σκέψη μου?? ευχαριστώ
Θα προσπαθήσω να το πω με ένα παράδειγμα.
Φτιάχνουμε ένα πρόγραμμα που θα διαβάσει ένα πίνακα 100 θέσεων και στην συνέχεια θα το εμφανίζει.
ΠΡΟΓΡΑΜΜΑ   ΤΕΣΤ
ΜΕΤΑΒΛΗΤΕΣ
ΑΚΕΡΑΙΕΣ: Ι,Α[100]
ΑΡΧΗ
ΓΙΑ Ι ΑΠΟ 1 ΜΕΧΡΙ 100
ΔΙΑΒΑΣΕ Α[Ι]
ΤΕΛΟΣ_ΕΠΑΝΑΛΗΨΗΣ
ΓΙΑ Ι ΑΠΟ 1 ΜΕΧΡΙ 100
ΓΡΑΨΕ Α[Ι]
ΤΕΛΟΣ_ΕΠΑΝΑΛΗΨΗΣ
ΤΕΛΟΣ_ΠΡΟΓΡΑΜΜΑΤΟΣ
Αν στο παραπάνω πρόγραμμα θέλαμε να το τροποποιήσουμε και ο πίνακας αντι για 100 θεσεων να ήταν 50 θα έπρεπαι να πάμε στον κώδικα και όπου βλέπαμε 100 να το κάναμε 50.
Ενώ αν ήταν έτσι
ΠΡΟΓΡΑΜΜΑ   ΤΕΣΤ
ΣΤΑΘΕΡΕΣ
Ν=100
ΜΕΤΑΒΛΗΤΕΣ
ΑΚΕΡΑΙΕΣ: Ι,Α[Ν]
ΑΡΧΗ
ΓΙΑ Ι ΑΠΟ 1 ΜΕΧΡΙ Ν
ΔΙΑΒΑΣΕ Α[Ι]
ΤΕΛΟΣ_ΕΠΑΝΑΛΗΨΗΣ
ΓΙΑ Ι ΑΠΟ 1 ΜΕΧΡΙ Ν
ΓΡΑΨΕ Α[Ι]
ΤΕΛΟΣ_ΕΠΑΝΑΛΗΨΗΣ
ΤΕΛΟΣ_ΠΡΟΓΡΑΜΜΑΤΟΣ
Τότε απλά θα αλλάζαμε το Ν στις σταθερές και αυτόματα θα άλλαζε στο υπόλοιπο πρόγραμμα.
Τώρα για την μεταβλητή που λές, είναι λάθος να δηλώσεις ένα πίνακα 100 θέσεων και να χρησιμοποιήσεις μόνο τις 10. Είναι λάθος απο την άποψη του οτι Δεσμεύεις μνήμη για το τίποτα. 
Τίτλος: Απ: Δήλωση πίνακα στις Σταθερές
Αποστολή από: manosteach στις 27 Μαΐου 2013, 01:52:39 ΜΜ
Παράθεση από: sstauross στις 27 Μαΐου 2013, 12:22:44 ΜΜ
Εννοώ για παράδειγμα όταν θέλω όλος ο πίνακας να περιέχει τις μέρες της βδομάδας για παράδειγμα, δε μιλάω για το μέγεθος αλλά για σταθερό περιεχόμενο...
Αν θέλεις ο πίνακα "να έχει σταθερό περιεχόμενο", να το διατυπώσω καλύτερα, να του εκχωρήσεις μια σταθερή τιμή, τότε πολύ απλά θα πρέπει να το κάνεις ως εξής
ΠΡΟΓΡΑΜΜΑ   ΤΕΣΤ

ΜΕΤΑΒΛΗΤΕΣ
ΧΑΡΑΚΤΗΡΕΣ: Α[7]
ΑΡΧΗ
Α[1]<--'ΔΕΥΤΕΡΑ'
Α[2]<--'ΤΡΙΤΗ'
Α[3]<--'ΤΕΤΑΡΤΗ'
Α[4]<--'ΠΕΜΠΤΗ'
Α[5]<--'ΠΑΡΑΣΚΕΥΗ'
Α[6]<--'ΣΑΒΒΑΤΟ'
Α[7]<--'ΚΥΡΙΑΚΗ'
ΤΕΛΟΣ_ΠΡΟΓΡΑΜΜΑΤΟΣ
Τίτλος: Απ: Δήλωση πίνακα στις Σταθερές
Αποστολή από: Καρκαμάνης Γεώργιος στις 27 Μαΐου 2013, 11:57:07 ΜΜ
Στα πλαίσια του μαθήματος, η λύση που διατύπωσε ο manosteach ειναι η πιο αποδεκτή.

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