Γιώργος
Τιμώμενο Μέλος
![Ημερομηνία Ημερομηνία](images/general/calendar.png)
![Ώρα Ώρα](images/general/clock.png)
Τι εννοώ με τον όρο "ζούγκλα"; Θα το καταλάβετε με την εξής ερώτηση, την οποία μπορείτε να απαντήσετε όσοι έχετε κάνει φροντηστήρια:
Γράφουμε δήλωση μεταβλητών στον αλγόριθμο;
Στοίχημα ότι οι περισσότεροι από εσάς θα πείτε "ναι". Η απάντηση όμως είναι.... όχι!!!
Γιατί πολύ απλά δεν την ορίζει πουθενά το σχολικό βιβλίο.
Η ζούγκλα στο εν λόγω μάθημα είναι ακριβώς αυτό: υπάρχουν τόσοι και τόσοι καθηγητές, τόσα και τόσα εξωσχολικά βιβλία και καθένας λέει τα δικά του.
Ο μέσος καθηγητής ΑΕΠΠ υποστηρίζει πως πρέπει να κάνουμε δήλωση μεταβλητών στον αλγόριθμο. :!: Δεν ξέρω πως του ήρθε... αλλά αυτό είναι εντελώς λάθος. Ο λόγος απλός: δεν το γράφει πουθενά το σχολικό βιβλίο. Σ' αυτό θα εξεταστείτε και μόνο και σε κανένα άλλο.
Συμπέρασμα: σ' αυτό το μάθημα το Ευαγγέλιό σας είναι το σχολικό βιβλίο. Πάρτε το και ξετινάξτε το, μιας και σε εξωσχολικά βιβλία θα βρείτε άλλα αντί άλλα (της Παρασκευής το γάλα). Πολλά εξωσχολικά βιβλία έχουν ενδιαφέρουσες ασκήσεις, βέβαια, αλλά δεν είναι δυστυχώς καλά για θεωρία.
Θα επανέλθω με περισσότερες πληροφορίες για βασικά πράγματα στα οποία άλλα λέει το σχολικό κι άλλα βλέπω στην πράξη.
Edit: Προσθέτω τα παροράματα του Βιβλίου και Τετραδίου Μαθητή όπως τα έδωσε το παιδαγωγικό ινστιτούτο. Να τα περάσετε οπωσδήποτε!
Σημείωση: Το παρόν θέμα είναι για θεωρία και λοιπές συζητήσεις. Για ασκήσεις πάμε εδώ.
Σημείωση: Το μήνυμα αυτό γράφτηκε 16 χρόνια πριν. Ο συντάκτης του πιθανόν να έχει αλλάξει απόψεις έκτοτε.
marpl
Νεοφερμένος
![Ημερομηνία Ημερομηνία](images/general/calendar.png)
![Ώρα Ώρα](images/general/clock.png)
Τότε είναι που πρέπει να γίνει δήλωση μεταβλητών και να γραφτεί το πρόγραμμα με κεφαλαία.
Σημείωση: Το μήνυμα αυτό γράφτηκε 16 χρόνια πριν. Ο συντάκτης του πιθανόν να έχει αλλάξει απόψεις έκτοτε.
Γιώργος
Τιμώμενο Μέλος
![Ημερομηνία Ημερομηνία](images/general/calendar.png)
![Ώρα Ώρα](images/general/clock.png)
Τα παιδιά πρέπει να έχουν τη προσοχή τους στο βιβλίο. Το βιβλίο λοιπόν δεν αναφέρει πουθενά δηλώσεις μεταβλητών σε αλγόριθμο. Τί γίνεται όμως αν η άσκηση ξεκινάει αντί για "Γραψτε έναν αλγόριθμο..", "Γραψτε ένα πρόγραμμα.." ?
Τότε είναι που πρέπει να γίνει δήλωση μεταβλητών και να γραφτεί το πρόγραμμα με κεφαλαία.
Συγκεκριμένα, όταν το βιβλίο σου λέει "Γράψτε αλγόριθμο" μπορείς να γράψεις είτε αλγόριθμο είτε πρόγραμμα.
Στην τελευταία σειρά της εξεταστέας Ύλης του ΥΠΕΠΘ αναφέρει ότι οι υποψήφιοι μπορούν να γράψουν τα προγράμματά τους είτε στη Γλώσσα Προγραμματισμού ΓΛΩΣΣΑ είτε σε αλγόριθμο.
![Χαμόγελο :) :)](https://www.e-steki.gr/images/smilies/smilenew.png)
Όταν όμως σου ζητά ΠΡΟΓΡΑΜΜΑ, θα γράφεις πρόγραμμα.
![Κλείνω μάτι ;) ;)](https://www.e-steki.gr/images/smilies/wink.gif)
Σημείωση: Το μήνυμα αυτό γράφτηκε 16 χρόνια πριν. Ο συντάκτης του πιθανόν να έχει αλλάξει απόψεις έκτοτε.
marpl
Νεοφερμένος
![Ημερομηνία Ημερομηνία](images/general/calendar.png)
![Ώρα Ώρα](images/general/clock.png)
Που να κάνεις δηλώσεις και να γράφεις κεφαλαία.. Τζάμπα κόπος!
Σημείωση: Το μήνυμα αυτό γράφτηκε 16 χρόνια πριν. Ο συντάκτης του πιθανόν να έχει αλλάξει απόψεις έκτοτε.
Γιώργος
Τιμώμενο Μέλος
![Ημερομηνία Ημερομηνία](images/general/calendar.png)
![Ώρα Ώρα](images/general/clock.png)
Αλγόριθμος vs ΓΛΩΣΣΑ
Βασικές Διαφορές (υπάρχουν κι άλλες):
![Χαμόγελο :) :)](https://www.e-steki.gr/images/smilies/smilenew.png)
- Η πρώτη βασική διαφορά είναι ότι όλες οι εντολές της ΓΛΩΣΣΑΣ γράφονται με ΚΕΦΑΛΑΙΑ, ενώ στην Αλγόριθμο με πεζά, με το πρώτο γράμμα κεφαλαίο (στις σελ. 36, 38 έχει τυπογραφικό, είναι με το πρώτο κεφαλαίο)
Παράδειγμα
Αλγόριθμος
Code:Διάβασε x
Code:ΔΙΑΒΑΣΕ x
- Στο πρόγραμμα προηγείται η δήλωση ΣΤΑΘΕΡΩΝ (σύνταξη στη σελ. 149-150) και έπειτα η δήλωση ΜΕΤΑΒΛΗΤΩΝ (σελ. 151-152). Στον αλγόριθμο δεν υπάρχει δήλωση σταθερών/μεταβλητών και είμαι κάθετος σ' αυτό.
- Στον αλγόριθμο δεν ορίζονται οι συναρτήσεις της σελίδας 153.-
- Στον αλγόριθμο δεν ορίζονται υποπρογράμματα (Κεφ. 10). Συνεπώς αυτές οι ασκήσεις θα σας ζητούνται πάντα σε πρόγραμμα.
- Στις εξετάσεις όλες οι ασκήσεις μπορούν να γραφούν με πρόγραμμα, όχι όμως και με αλγόριθμο. Συγκεκριμένα, εάν σας ζητήσουν "Αλγόριθμο" έχετε δικαίωμα να κάνετε είτε αλγόριθμο είτε πρόγραμμα (όπως αναφέρεται στην εξεταστέα ύλη του ΥΠΕΠΘ). Όταν σας ζητήσουν ΠΡΟΓΡΑΜΜΑ σε γλώσσα προγραμματισμού ΓΛΩΣΣΑ είστε υποχρεωμένοι να κάνετε ΠΡΟΓΡΑΜΜΑ.
Σημείωση: Το μήνυμα αυτό γράφτηκε 16 χρόνια πριν. Ο συντάκτης του πιθανόν να έχει αλλάξει απόψεις έκτοτε.
Vorbulon
Νεοφερμένος
![Ημερομηνία Ημερομηνία](images/general/calendar.png)
![Ώρα Ώρα](images/general/clock.png)
Ακόμα πιστεύω ότι στον αλγόριθμο τα πράγματα είναι πιο ελεύθερα (πχ. νομίζω ότι μπορείς να βάλεις εντολή Αντιμετάθεσε κλπ), αφού δεν απευθύνεται σε υπολογιστή. Εγώ πάντως γράφω τις πιο πολλές φορές σε πρόγραμμα.
Σημείωση: Το μήνυμα αυτό γράφτηκε 16 χρόνια πριν. Ο συντάκτης του πιθανόν να έχει αλλάξει απόψεις έκτοτε.
Γιώργος
Τιμώμενο Μέλος
![Ημερομηνία Ημερομηνία](images/general/calendar.png)
![Ώρα Ώρα](images/general/clock.png)
![Χαμόγελο :) :)](https://www.e-steki.gr/images/smilies/smilenew.png)
Σχετικά με αυτές τις εντολές:Όσον αφορά τους αλγορίθμους, νομίζω ότι υποστηρίζουν τις εντολές Δεδομένα // // και Αποτελέσματα // //, που χρησιμεύουν όταν δεν παίρνει το πρόγραμμα πληροφορίες από το χρήστη και όταν δεν εμφανίζει πληροφορίες προς το χρήστη, ενώ η ΓΛΩΣΣΑ δεν τις έχει.
~~~~
Δεδομένα //Μεταβλητή_1, Μεταβλητή_2, ... , Μεταβλητή_ν//
Παράδειγμα Σύνταξης:
[B]Αλγόριθμος [/B]Τεστ
[B] Δεδομένα [/B]// [FONT=Georgia]π[/FONT], ν//
...
[B]Τέλος [/B]Τεστ
Είναι ένας τρόπος να "δηλώσουμε" σταθερές στον αλγόριθμο. Έτσι μπορείτε να χρησιμοποιήσετε την "σταθερά" π στον αλγόριθμο και μετά το τέλος του αλγορίθμου να γράψετε:
Εγώ γενικά δεν είμαι υπέρ των σχολίων μέσα στο πρόγραμμα καθώς κουράζουν. Αν χρειαστεί να μπει κάτι, καλύτερα ως σημείωση μετά το τέλος του αλγορίθμου/προγράμματος.Σημείωση: Το π έχει πάρει την τιμή 3.14
Βέβαια στο πρόγραμμα είναι περιττό, καθώς θα γράφαμε:
[B]ΠΡΟΓΡΑΜΜΑ [/B]ΤΕΣΤ
[B]ΣΤΑΘΕΡΕΣ[/B]
[FONT=Georgia]π[/FONT] = 3.14
[B]ΜΕΤΑΒΛΗΤΕΣ[/B]
...
[B]ΑΡΧΗ[/B]
...
[B] ΤΕΛΟΣ_ΠΡΟΓΡΑΜΜΑΤΟΣ[/B]
Βέβαια τίποτα από αυτά δεν με ένοιαξε γιατί πάντα έγραφα πρόγραμμα.
![Κλείνω μάτι ;) ;)](https://www.e-steki.gr/images/smilies/wink.gif)
~~~~~~
Ας δούμε όμως ένα [highlight]παράδειγμα στο οποίο είναι χρήσιμη η εντολή Δεδομένα[/highlight]:
Εδώ η εκφώνηση δεν μας λέει πόσο είναι αυτό το n. Δεν μπορούμε όμως να τρέξουμε είτε πρόγραμμα είτε αλγόριθμο εάν το n δεν έχει πάρει κάποια τιμή.-Εκφώνηση
Να γραφεί αλγόριθμος στον οποίο ο χρήστης θα δίνει n αριθμούς και θα εκτυπώνεται το άθροισμά τους.
Αλγόριθμος
Κάνουμε το εξής: χρησιμοποιούμε την εντολή: Δεδομένα //n//
Έτσι δηλώνουμε ότι το n έχει πάρει κάποια τιμή με κάποιον τρόπο που δεν μας ενδιαφέρει.
Η τιμή του n δεν θα διαβάζεται από τον χρήστη με εντολή Διάβασε καθώς δεν το ζητά η εκφώνηση.-
Έτσι έχουμε:
[B]Αλγόριθμος [/B]Άσκηση
[B] Δεδομένα [/B]//n//
SUM ← 0
[B] Για [/B]i [B]από [/B]1 [B]μέχρι [/B]n
[B] Εμφάνισε [/B]"Δώσε έναν αριθμό : "
[B] Διάβασε [/B]x
SUM ← SUM + x
[B]Τέλος_επανάληψης[/B]
[B] Εμφάνισε [/B]"Το άθροισμα των αριθμών είναι : ", SUM
[B]Τέλος [/B]Άσκηση
- Στην Εμφάνισε τα εισαγωγικά είναι ΔΙΠΛΑ (σελ. 36-37) σε αντίθεση με το πρόγραμμα που είναι ΜΟΝΑ (σελ. 156).
- Στον αλγόριθμο ξεκινάμε χωρίς εντολή "Αρχή" και κλείνουμε με "Τέλος ΟΝΟΜΑ_ΠΡΟΓΡΑΜΜΑΤΟΣ" και όχι "Τέλος_Αλγορίθμου" - βλέπε σχολικό.
- Δεν έχουμε δηλώσεις μεταβλητών. Παρ' όλ' αυτά ο τύπος τους φαίνεται από τον τρόπο με τον οποίο υλοιποιούνται στο πρόγραμμα. Όπως βλέπουμε οι i, n, SUM είναι ή Ακεραίου ή Πραγματικού τύπου.
Εδώ είναι πιο απλό. Παίρνουμε χωρίς βλάβη μία τυχαία τιμή σημειώνοντας πως δεν χαλάει η γενικότητα και το ορίζουμε στις ΣΤΑΘΕΡΕΣ. Ο λόγος είναι το ότι κάθε σταθερά/μεταβλητή πρέπει να παίρνει ξεκάθαρη τιμή, είτε μέσω του προγράμματος είτε μέσω του χρήστη.
Τονίζω ξανά πως τιμή του n δεν θα διαβάζεται από τον χρήστη με εντολή ΔΙΑΒΑΣΕ καθώς δεν το ζητά η εκφώνηση.-
Σημείωση: Χωρίς βλάβη της γενικότητας θα πάρουμε n=5.
[B]ΠΡΟΓΡΑΜΜΑ [/B]Άσκηση
[B]ΣΤΑΘΕΡΕΣ[/B]
n = 5
[B]ΜΕΤΑΒΛΗΤΕΣ[/B]
[B] ΑΚΕΡΑΙΕΣ[/B]: i
[B] ΠΡΑΓΜΑΤΙΚΕΣ[/B]: x, SUM
[B]ΑΡΧΗ[/B]
SUM ← 0
[B] ΓΙΑ [/B]i [B]ΑΠΟ [/B]1 [B]ΜΕΧΡΙ [/B]n
[B] ΓΡΑΨΕ [/B]'Δώσε έναν αριθμό : '
[B] ΔΙΑΒΑΣΕ [/B]x
SUM ← SUM + x
[B]ΤΕΛΟΣ_ΕΠΑΝΑΛΗΨΗΣ[/B]
[B] ΓΡΑΨΕ [/B]'Το άθροισμα των αριθμών είναι : ", SUM[B]
ΤΕΛΟΣ_ΠΡΟΓΡΑΜΜΑΤΟΣ[/B]
![Κλείνω μάτι ;) ;)](https://www.e-steki.gr/images/smilies/wink.gif)
Ακόμα έχει κάποιες εντολές, όπως τις Εκτύπωσε, Τύπωσε, Εμφάνισε που στη ΓΛΩΣΣΑ γίνονται όλες ΓΡΑΨΕ. Σε αυτές τις περιπτώσεις μου έχει πει ο καθηγητής μου όταν γράφουμε πρόγραμμα γράφουμε στα σχόλια πού βγάζει τα αποτελέσματα (όταν η άσκηση λέει στην εκφώνηση να εμφανίζει στη οθόνη κλπ).
- Η εντολή "Τύπωσε" δεν υπάρχει.- Στον αλγόριθμο ορίζονται μόνο οι:
- Εκτύπωσε
- Εμφάνισε
- Οι "Εμφάνισε" και "Εκτύπωσε" στον αλγόριθμο είναι πρακτικά ισοδύναμες. Θεωρητικά όχι, καθώς στη [highlight]σελίδα 32 του βιβλίου[/highlight] αναφέρεται ότι:
- Η Εκτύπωσε "αποτυπώνει το τελικό αποτέλεσμα στον εκτυπωτή."
- Η Εμφάνισε "αποτυπώνει ένα αποτέλεσμα στην οθόνη."
- Στη [highlight]σελίδα 156 του βιβλίου[/highlight] αναφέρεται ότι:
- "Κατά την εκτέλεση του προγράμματος η εντολή ΓΡΑΨΕ προκαλεί την εμφάνιση στην οθόνη των σταθερών τιμών."
![Χαμόγελο :) :)](https://www.e-steki.gr/images/smilies/smilenew.png)
Εγώ σας το 'χω πει: Διαβάζετε το σχολικό βιβλίο!!!!
Σημείωση: Υπενθυμίζω ότι οι εντολές του αλγόριθμου έχουν το πρώτο γράμμα κεφαλαίο και όλα τα άλλα πεζά. [highlight]Το βιβλίο έχει κάποια λάθη. Δείτε το πρώτο ποστ όπου ανέβασα τα παροράματα του Παιδαγωγικού Ινστιτούτου.[/highlight]
Ακριβώς επειδή είναι πιο ελεύθερα.. εκεί είναι το πρόβλημα. Το βιβλίο δεν ορίζει ρητά κάποια πράγματα. Γι' αυτό εγώ συστήνω ΠΡΟΓΡΑΜΜΑ όπου το βιβλίο τα ορίζει άψογα και δεν θα υπάρχει πρόβλημα στη διόρθωση. (Σημειώνω ξανά ότι οι συναρτήσεις ΣΥΝ(x) κτλ είναι μόνο για το πρόγραμμα)Ακόμα πιστεύω ότι στον αλγόριθμο τα πράγματα είναι πιο ελεύθερα (πχ. νομίζω ότι μπορείς να βάλεις εντολή Αντιμετάθεσε κλπ), αφού δεν απευθύνεται σε υπολογιστή. Εγώ πάντως γράφω τις πιο πολλές φορές σε πρόγραμμα.
Σημείωση: Το μήνυμα αυτό γράφτηκε 16 χρόνια πριν. Ο συντάκτης του πιθανόν να έχει αλλάξει απόψεις έκτοτε.
Anarki
Διάσημο μέλος
![Ημερομηνία Ημερομηνία](images/general/calendar.png)
![Ώρα Ώρα](images/general/clock.png)
Όταν γράφεις πρόγραμμα πρέπει να γράφεις όλες τις εντολές με κεφαλαία στο χαρτί; Τραγικό
![LOL :lol: :lol:](https://www.e-steki.gr/images/smilies/lol.gif)
Καλό κουράγιο σε όσους θα το δώσουν.
Σημείωση: Το μήνυμα αυτό γράφτηκε 16 χρόνια πριν. Ο συντάκτης του πιθανόν να έχει αλλάξει απόψεις έκτοτε.
Scandal
Διαχειριστής
![Ημερομηνία Ημερομηνία](images/general/calendar.png)
![Ώρα Ώρα](images/general/clock.png)
Ναι έτσι είναι, 3 μιση με 4 σελίδες A4 με εντολές (αν σκεφτείς ότι σε κάθε σειρά της σελίδας μπαίνει και μία εντολή :!: ). (+ ότι πρώτα τα κάνουμε στο πρόχειρο και τα αντιγράφουμε).Πολύ χαζός τρόπος διδασκαλίας προγραμματισμού, κολλάει υπερβολικά σε λεπτομέρειες.
Όταν γράφεις πρόγραμμα πρέπει να γράφεις όλες τις εντολές με κεφαλαία στο χαρτί; Τραγικό.
Καλό κουράγιο σε όσους θα το δώσουν.
Δε μπορώ να καταλάβω γιατί επικρατεί αυτή η σύγχυση στον τρόπο διδασκαλίας του.
![Λυπημένος :( :(](https://www.e-steki.gr/images/smilies/frown.gif)
-petros
Σημείωση: Το μήνυμα αυτό γράφτηκε 16 χρόνια πριν. Ο συντάκτης του πιθανόν να έχει αλλάξει απόψεις έκτοτε.
Γιώργος
Τιμώμενο Μέλος
![Ημερομηνία Ημερομηνία](images/general/calendar.png)
![Ώρα Ώρα](images/general/clock.png)
Ως γνωστόν η σελίδα του τετραδίου δεν είναι απεριόριστη, μπορεί κάποια στιγμή να χρειαστεί να γράψετε μία μεγάλη εντολή (πχ μία μεγάλη ΓΡΑΨΕ) και να χρειαστεί να γράψετε αποκάτω.
Τι κάνουμε εκεί; Απλό.
Παράδειγμα:Σχολικό βιβλίο, σελίδα 157
Κάθε εντολή γράφεται σε ξεχωριστή γραμμή. ΑΝ μία εντολή πρέπει να συνεχιστεί και στην επόμενη γραμμή, τότε ο πρώτος χαρακτήρας αυτής της γραμμής πρέπει να είναι ο χαρακτήρας &.
[B]ΠΡΟΓΡΑΜΜΑ [/B]TestTestTest
[B]ΜΕΤΑΒΛΗΤΕΣ[/B]
[B]ΑΚΕΡΑΙΕΣ:[/B] i
[B]ΑΡΧΗ[/B]
i ← 83
[B] ΓΡΑΨΕ [/B]'Η τιμή της μεταβλητής i ισούται
& με ', i, ' ή αλλιώς με 2 * ', i DIV 2, ' + ', i MOD 2[B]
ΤΕΛΟΣ_ΠΡΟΓΡΑΜΜΑΤΟΣ[/B]
Αυτό ισχύει στο πρόγραμμα.
![Χαμόγελο :) :)](https://www.e-steki.gr/images/smilies/smilenew.png)
Κι επειδή κάποιοι θα ρωτήσουν: "Στον αλγόριθμο τι γίνεται;"
Απαντώ: Έλα ντε!!
![Πολύ χαρούμενος :D :D](https://www.e-steki.gr/images/smilies/biggrin.gif)
Ο αλγόριθμος δεν το ορίζει!!!! Συμπέρασμα: γράφε με ΠΡΟΓΡΑΜΜΑ ή αλλιώς φρόντισε να χωρέσεις κάθε εντολή σε μία γραμμή.
![Κλείνω μάτι ;) ;)](https://www.e-steki.gr/images/smilies/wink.gif)
Σημείωση: Για τους νέους στον προγραμματισμό πάρτε ως απλή άσκηση τι θα εμφανίσει η εντολή ΓΡΑΨΕ για τις τιμές 8, 36, 98, 138, 51 του i.
Σημείωση: Το μήνυμα αυτό γράφτηκε 16 χρόνια πριν. Ο συντάκτης του πιθανόν να έχει αλλάξει απόψεις έκτοτε.
Vorbulon
Νεοφερμένος
![Ημερομηνία Ημερομηνία](images/general/calendar.png)
![Ώρα Ώρα](images/general/clock.png)
Βασικά το βιβλίο σ.47 λέει ότι μπορείς να χρησιμοποιήσεις οποιοδήποτε ρήμα σε προστακτική και στη σ. 48 το χρησιμοποιεί στον αλγόριθμο με φυσική γλώσσα κατά βήματα. Αλλά κανείς δεν ξέρει αν θα σου το πάρουν σωστό. Γι' αυτό προτιμώ ΓΛΩΣΣΑΗ εντολή "Τύπωσε" δεν υπάρχει.
'Εχεις δίκιο για τη ΓΡΑΨΕ(λάθος το παράδειγμα που έφερα εγώ). Αλλά αν σου λέει η άσκηση να εκτυπώνει τα αποτελέσματα;(γι'αυτό μας έχει πει ο καθηγητής μας)όταν η άσκηση λέει στην εκφώνηση να εμφανίζει στη οθόνη κλπ
"Κατά την εκτέλεση του προγράμματος η εντολή ΓΡΑΨΕ προκαλεί την εμφάνιση στην οθόνη των σταθερών τιμών."
Όσο για τη χρήση του Δεδομένα // // και Αποτελέσματα // // δείτε το θέμα 3 στις πανελλήνιες του 2002 https://www.ypepth.gr/themata/them_plir_kat_c_hmer_no_0602.pdf
Σημείωση: Το μήνυμα αυτό γράφτηκε 16 χρόνια πριν. Ο συντάκτης του πιθανόν να έχει αλλάξει απόψεις έκτοτε.
Γιώργος
Τιμώμενο Μέλος
![Ημερομηνία Ημερομηνία](images/general/calendar.png)
![Ώρα Ώρα](images/general/clock.png)
Δεν σου ορίζει όμως πιο πριν την τύπωσε ή την Τύπωσε, μόνο την Εκτύπωσε και Εμφάνισε.Βασικά το βιβλίο σ.47 λέει ότι μπορείς να χρησιμοποιήσεις οποιοδήποτε ρήμα σε προστακτική και στη σ. 48 το χρησιμοποιεί στον αλγόριθμο με φυσική γλώσσα κατά βήματα. Αλλά κανείς δεν ξέρει αν θα σου το πάρουν σωστό. Γι' αυτό προτιμώ ΓΛΩΣΣΑ
"Εκτύπωσε" και "Εμφάνισε στην οθόνη" είναι το ένα και το αυτό. Το λέει άλλωστε ξεκάθαρα στην ύλη του ΥΠΕΠΘ: Οι υποψήφιοι μπορούν να συντάσσουν τα προγράμματά τους είτε σε αλγόριθμο είτε στη γλώσσα προγραμματισμού ΓΛΩΣΣΑ.-'Εχεις δίκιο για τη ΓΡΑΨΕ(λάθος το παράδειγμα που έφερα εγώ). Αλλά αν σου λέει η άσκηση να εκτυπώνει τα αποτελέσματα;(γι'αυτό μας έχει πει ο καθηγητής μας)
Αν σου ζητήσουν αλγόριθμο, γράφεις ή αλγόριθμο ή ΓΛΩΣΣΑ. Αν σου ζητήσουν ΓΛΩΣΣΑ γράφεις ΓΛΩΣΣΑ.
Simple enough:Όσο για τη χρήση του Δεδομένα // // και Αποτελέσματα // // δείτε το θέμα 3 στις πανελλήνιες του 2002 https://www.ischool.gr/downloads/files/2002/2002-texnologiki-aepp.pdf
[B]ΠΡΟΓΡΑΜΜΑ[/B] Θέμα3ο[B]
ΣΤΑΘΕΡΕΣ[/B]
ΔΙΚΥΚΛΟ = 'Δ'
ΕΠΙΒΑΤΙΚΟ = 'Ε'
ΦΟΡΤΗΓΟ = 'Φ'
ΤΙΜΗ_ΔΙΚΥΚΛΟ = 1
ΤΙΜΗ_ΕΠΙΒΑΤΙΚΟ = 2
ΤΙΜΗ_ΦΟΡΤΗΓΟ = 3
[B]ΜΕΤΑΒΛΗΤΕΣ[/B]
[B] ΠΡΑΓΜΑΤΙΚΕΣ[/B]: Υ, Α
[B] ΧΑΡΑΚΤΗΡΕΣ[/B]: Τ
[B]ΑΡΧΗ[/B]
[B] ΓΡΑΨΕ [/B]'Δώσε τον τύπο του τροχοφόρου : '
[B] ΔΙΑΒΑΣΕ [/B]Τ
[B] ΓΡΑΨΕ [/B]'Δώσε το υπόλοιπο σε ευρώ : '
[B] ΔΙΑΒΑΣΕ [/B]Υ
[B] ΕΠΙΛΕΞΕ [/B]Τ
[B] ΠΕΡΙΠΤΩΣΗ [/B]ΔΙΚΥΚΛΟ
Α ← ΤΙΜΗ_ΔΙΚΥΚΛΟ
[B] ΠΕΡΙΠΤΩΣΗ [/B]ΕΠΙΒΑΤΙΚΟ
Α ← ΤΙΜΗ_ΕΠΙΒΑΤΙΚΟ
[B] ΠΕΡΙΠΤΩΣΗ [/B]ΦΟΡΤΗΓΟ
Α ← ΤΙΜΗ_ΦΟΡΤΗΓΟ
[B]ΠΕΡΙΠΤΩΣΗ_ΑΛΛΙΩΣ[/B]
Α ← 0
[B]ΤΕΛΟΣ_ΕΠΙΛΟΓΩΝ[/B]
[B] ΑΝ [/B]Α<>0
[B] ΑΝ [/B]Υ <= 0 [B]ΤΟΤΕ[/B]
[B] ΓΡΑΨΕ [/B]'Δεν υπάρχει υπόλοιπο. Πρέπει να πληρωθούν ', Α, ' ευρώ.'
[B]ΑΛΛΙΩΣ_ΑΝ[/B] Υ < Α [B]ΤΟΤΕ[/B]
Α ← Α - Υ
Υ ← 0
[B] ΓΡΑΨΕ [/B]'Απομένουν να πληρωθούν ', Α, ' ευρώ.'
[B] ΑΛΛΙΩΣ[/B]
Α ← Α - Υ
[B]ΤΕΛΟΣ_ΑΝ[/B]
[B] ΤΕΛΟΣ_ΑΝ[/B]
[B] ΤΕΛΟΣ_ΠΡΟΓΡΑΜΜΑΤΟΣ[/B]
![Πολύ χαρούμενος :D :D](https://www.e-steki.gr/images/smilies/biggrin.gif)
Κανείς δεν μπορεί να σε υποχρεώσει με οποιαδήποτε εκφώνηση να γράψεις αλγόριθμο.-
Κι όταν γράφεις πρόγραμμα και χρειάζεσαι εισαγωγή δεδομένων τα εισάγεις με ΓΡΑΨΕ-ΔΙΑΒΑΣΕ, εφόσον το βιβλίο δεν ορίζει κάποιον άλλον τρόπο.
Το "Φωτοκύτταρο" ήταν απλά ψαρωτικό. Και φαίνεται ο καθηγητής σου την πάτησε.
![Κλείνω μάτι ;) ;)](https://www.e-steki.gr/images/smilies/wink.gif)
Σημειώσεις:
- Προσέξτε πώς υλοποίησα την ΑΝ που ελέγχει το υπόλοιπο. Πρώτα έβαλα τον έλεγχο του αρνητικού ή μηδενός ("δεν υπάρχει υπόλοιπο"), γιατί εμπεριέχεται στην περίπτωση Υ < Α που ακολουθεί.
- Το ΠΕΡΙΠΤΩΣΗ_ΑΛΛΙΩΣ θέλει τον χαρακτήρα Underscore (δηλ. τον '_') καθώς πρόκειται για μία δεσμευμένη λέξη. Όπως και το ΜΕ_ΒΗΜΑ στη ΓΛΩΣΣΑ (έτσι το κανα στο τέλος και δεν μου 'κοψαν τίποτα).
- Αν δείτε έχω αφήσει κενές γραμμές μεταξύ των βασικών τμημάτων του προγράμματός μου: Εισαγωγή δεδομένων - Αναγνώριση τύπου - Ενέργεια επί του υπολοίπου. Αυτό συστήνω εγώ. Σχόλια (πχ τύπου "!Εισαγωγή δεδομένων" δεν χρειάζονται και κουράζουν.
- Αν δείτε η ενέργειες γίνονται μόνο για την περίπτωση που δοθεί έγκυρος τύπος τροχοφόρου (ΑΝ Α<>0). Στην περίπτωση που δεν είναι, το πρόγραμμα δεν κάνει τίποτα. Δεν βάζουμε έλεγχο δεδομένων με δομή επανάληψης, ούτε τυπώνουμε μήνυμα λάθους γιατί δεν το ζητάει.
Σημείωση: Το μήνυμα αυτό γράφτηκε 16 χρόνια πριν. Ο συντάκτης του πιθανόν να έχει αλλάξει απόψεις έκτοτε.
Vorbulon
Νεοφερμένος
![Ημερομηνία Ημερομηνία](images/general/calendar.png)
![Ώρα Ώρα](images/general/clock.png)
ΥΓ: Το Link που έβαλες είναι λάθος
ΥΓ2: Αν και δεν είδα όλο το πρόγραμμα που έφτιαξες, δεν πρέπει να γράψεις ΧΑΡΑΚΤΗΡΑΣ, αλλά ΧΑΡΑΚΤΗΡΕΣ, κι ας είναι και ένας
Σημείωση: Το μήνυμα αυτό γράφτηκε 16 χρόνια πριν. Ο συντάκτης του πιθανόν να έχει αλλάξει απόψεις έκτοτε.
Γιώργος
Τιμώμενο Μέλος
![Ημερομηνία Ημερομηνία](images/general/calendar.png)
![Ώρα Ώρα](images/general/clock.png)
Έτσι λέει, αλλά έχει ψαρωτικό χαρακτήρα. Υπάρχει άλλος τρόπος εισαγωγής δεδομένων στο ΠΡΟΓΡΑΜΜΑ; Όχι. Ας λέει απ' το μηχάνημα, αν το γράψεις έτσι δεν στο κόβουν.Λέει ότι το μηχάνημα και όχι ο χρήστης διαβάζει 2 μεταβλητές (Υ,Τ) που τις έχουμε σαν δεδομένα (από μόνα τους, σαν να τα είχε αποθηκεύσει από πριν) έτσι όπως το λέει η άσκηση, γι' αυτό και θεωρώ ότι καταλληλότερος είναι ο αλγόριθμος. Παρ' όλα αυτά μπορείς να το γράψεις και σε ΓΛΩΣΣΑ, απλά εγώ θα έγραφα ένα σχόλιο από δίπλα.
ΥΓ: Το Link που έβαλες είναι λάθος
ΥΓ2: Αν και δεν είδα όλο το πρόγραμμα που έφτιαξες, δεν πρέπει να γράψεις ΧΑΡΑΚΤΗΡΑΣ, αλλά ΧΑΡΑΚΤΗΡΕΣ, κι ας είναι και ένας
Δεν υπάρχει ΚΑΜΙΑ άσκηση που δεν λύνεται με ΠΡΟΓΡΑΜΜΑ.
ΥΓ1> Χμμ μάλλον. Έχουμε btw δικό μας section.
ΥΓ2> Σωστός, σελίδα 152. Αυτά έχει αν ασχολείσαι με C και PASCAL ταυτόχρονα.
![Πολύ χαρούμενος :D :D](https://www.e-steki.gr/images/smilies/biggrin.gif)
Σημείωση: Το μήνυμα αυτό γράφτηκε 16 χρόνια πριν. Ο συντάκτης του πιθανόν να έχει αλλάξει απόψεις έκτοτε.
Vorbulon
Νεοφερμένος
![Ημερομηνία Ημερομηνία](images/general/calendar.png)
![Ώρα Ώρα](images/general/clock.png)
Πάντως και αυτός στη λύση του αλγόριθμο έχει κάνει.
![Γλώσσα :P :P](https://www.e-steki.gr/images/smilies/tongue.gif)
BTW Οι απαντήσεις που έχει είναι από το ΥΠΕΠΘ ή από κανένα φροντιστήριο;
Σημείωση: Το μήνυμα αυτό γράφτηκε 16 χρόνια πριν. Ο συντάκτης του πιθανόν να έχει αλλάξει απόψεις έκτοτε.
Γιώργος
Τιμώμενο Μέλος
![Ημερομηνία Ημερομηνία](images/general/calendar.png)
![Ώρα Ώρα](images/general/clock.png)
Από φροντηστήριο μάλλον.Ορίστε και το σωστό link: https://www.ischool.gr/downloads/files/2002/2002-texnologiki-aepp.pdf
Πάντως και αυτός στη λύση του αλγόριθμο έχει κάνει.(Κατά τα άλλα δεν είναι και πολύ σωστό. Με μια πρώτη ματιά λείπει το Τέλος Διόδια και δεν αφήνει κενά στην αρχή των σειρών (αν και δεν είναι λάθος)).Αν και όπως λες κι εσύ δεν πιστεύω να έκοβαν αν κάποιος έκανε πρόγραμμα. (Μάλλον είναι τυχαίο που επέλεξαν να κάνουν αλγόριθμο γιατί και στα άλλα που είδα έχει κάνει πολλά σε αλγόριθμο)
BTW Οι απαντήσεις που έχει είναι από το ΥΠΕΠΘ ή από κανένα φροντιστήριο;
Έχει 3 λάθη!!
- Λείπει το Τέλος Διόδια όπως είπες.
- Στον αλγόριθμο ΔΕΝ ορίζεται το >= αλλά το ≥ (σελίδα 46). Προσοχή σ' αυτό!! Το >= είναι για το πρόγραμμα, το ≥ για τον αλγόριθμο.
- Η σωστή γραφή των εντολών είναι, σύμφωνα με την σελίδα 46:
- Αλλιως_Αν >> αλλιώς_αν (πεζά και τόνος!)
- Αλλιώς >> αλλιώς
![Γλώσσα :P :P](https://www.e-steki.gr/images/smilies/tongue.gif)
Εντούτοις εδώ δεν χρειάζεται όντως να κάνουμε τον αλγόριθμο να μην εξετάζει την περίπτωση που ο τύπος Τ είναι απαράδεκτος γιατί υποτίθεται ότι θα δοθεί σωστά. Εντούτοις συνιστώ πρόγραμμα και πάλι πρόγραμμα. Όπως σου 'πα όλες οι ασκήσεις λύνονται με ΠΡΟΓΡΑΜΜΑ. Εντούτοις δεν λύνονται όλες οι ασκήσεις με αλγόριθμο (πχ αν θες συνάρτηση ημιτόνου ή ακεραίου μέρους).
Σημείωση: Το μήνυμα αυτό γράφτηκε 16 χρόνια πριν. Ο συντάκτης του πιθανόν να έχει αλλάξει απόψεις έκτοτε.
Vorbulon
Νεοφερμένος
![Ημερομηνία Ημερομηνία](images/general/calendar.png)
![Ώρα Ώρα](images/general/clock.png)
Η σωστή γραφή των εντολών είναι, σύμφωνα με την σελίδα 46:Αλλιως_Αν >> αλλιώς_αν (πεζά και τόνος!)Αλλιώς >> αλλιώς
Πολύ σωστά πάντως - κι εκλπήσσομαι- βάζει στην Εμφάνισε διπλά εισαγωγικά.
Για αυτά δες τις παρατηρήσεις που έχει κάτω από το 4ο θέμα. (Πάντως οι τόνοι είναι σίγουρα λάθος. BTW και στο Ή βάζουμε τόνο!). Μάλλον όμως δεν ισχύουν και τώρα.
![Κλάμα :'( :'(](https://www.e-steki.gr/images/smilies/cry.gif)
Εγώ πάντως το βρίσκω σωστό αυτό με τα κεφαλαία και τα μικρά, γιατί τα γράμματα σαν ονόματα μεταβλητών (άρα πιστεύω και εντολών) θεωρούνται ίδια (πχ. το χ και το Χ είναι ίδια). ΠΡΟΣΟΧΗ: δεν ισχύει το ίδιο και με τα αλφαριθμητικά!
Σημείωση: Το μήνυμα αυτό γράφτηκε 16 χρόνια πριν. Ο συντάκτης του πιθανόν να έχει αλλάξει απόψεις έκτοτε.
Γιώργος
Τιμώμενο Μέλος
![Ημερομηνία Ημερομηνία](images/general/calendar.png)
![Ώρα Ώρα](images/general/clock.png)
Το Ή θέλει τόνο, όντως. Και στον αλγόριθμο είναι ή.Για αυτά δες τις παρατηρήσεις που έχει κάτω από το 4ο θέμα. (Πάντως οι τόνοι είναι σίγουρα λάθος. BTW και στο Ή βάζουμε τόνο!). Μάλλον όμως δεν ισχύουν και τώρα.
Εγώ πάντως το βρίσκω σωστό αυτό με τα κεφαλαία και τα μικρά, γιατί τα γράμματα σαν ονόματα μεταβλητών (άρα πιστεύω και εντολών) θεωρούνται ίδια (πχ. το χ και το Χ είναι ίδια). ΠΡΟΣΟΧΗ: δεν ισχύει το ίδιο και με τα αλφαριθμητικά!
Με το συμπάθειο, αλλά δεν δίνω γρι αν είναι ισοδύναμα ή όχι, εκτός αν υπάρχει η παρατήση που λες (δεν έχω επιθετικό τόνο, don't worry
![Γλώσσα :P :P](https://www.e-steki.gr/images/smilies/tongue.gif)
Επίσης στα θέματα του 2006 δεν υπάρχει αυτή η παρατήρηση.
![Κλείνω μάτι ;) ;)](https://www.e-steki.gr/images/smilies/wink.gif)
Οπότε το θέμα είναι απλό: ΠΑΝΤΑ πρόγραμμα και ΠΑΝΤΑ όπως το ορίζει το σχολικό.
Όσο για το αν το πρόγραμμα λαμβάνει τις μεταβλητές X και x ίδιες.. θα έλεγα ναι γιατί η PASCAL (ουσιαστικά PASCAL είναι) είναι case-insencitive, δηλαδή δεν διαχωρίζει κεφαλαία - πεζά.
![Κλείνω μάτι ;) ;)](https://www.e-steki.gr/images/smilies/wink.gif)
Σημείωση: Το μήνυμα αυτό γράφτηκε 16 χρόνια πριν. Ο συντάκτης του πιθανόν να έχει αλλάξει απόψεις έκτοτε.
moprela
Νεοφερμένος
![Ημερομηνία Ημερομηνία](images/general/calendar.png)
![Ώρα Ώρα](images/general/clock.png)
1. Τι γίνεται με την προτεραιότητα των λογικών τελεστών και, ή, όχι; Το βιβλίο δεν λέει κάτι. Οι αντίστοιχες ασκήσεις όμως πως πρέπει να λύνονται;
2. Στον αλγόριθμο, η υποδιαστολή των δεκαδικών αριθμών είναι το κόμμα ή η τελεία. Άλλα λέει το βιβλίο (σελ 46) και άλλα κάνει (πχ σελ 38)
Και κάποιες ακόμα απορίες:
3. για τα div και mod: Έστω a div b ή a mod b. Τα a και b πρέπει να είναι θετικοί ακέραιοι και στις 2 περπτώσεις;Και το αποτέλεσμα τους ακέραιος αριθμός; Στις περίπτωσεις που είναι a ή/και το b αρνητικός ή πραγματικός τι γίνεται; Γενικά μπερδέτικα..Μπορείτε να μου πείτε γενικά τι ισχύει για αυτές τις δύο εντολές;
Σημείωση: Το μήνυμα αυτό γράφτηκε 16 χρόνια πριν. Ο συντάκτης του πιθανόν να έχει αλλάξει απόψεις έκτοτε.
Γιώργος
Τιμώμενο Μέλος
![Ημερομηνία Ημερομηνία](images/general/calendar.png)
![Ώρα Ώρα](images/general/clock.png)
Καλωσήρθες!Γειας σας, να κάνω κάποιες ερωτήσεις (γιατί πραγματικά το μάθημα είναι ζούγκλα όπως βλέπω)
1. Τι γίνεται με την προτεραιότητα των λογικών τελεστών και, ή, όχι; Το βιβλίο δεν λέει κάτι. Οι αντίστοιχες ασκήσεις όμως πως πρέπει να λύνονται;
2. Στον αλγόριθμο, η υποδιαστολή των δεκαδικών αριθμών είναι το κόμμα ή η τελεία. Άλλα λέει το βιβλίο (σελ 46) και άλλα κάνει (πχ σελ 38)
Και κάποιες ακόμα απορίες:
3. για τα div και mod: Έστω a div b ή a mod b. Τα a και b πρέπει να είναι θετικοί ακέραιοι και στις 2 περπτώσεις;Και το αποτέλεσμα τους ακέραιος αριθμός; Στις περίπτωσεις που είναι a ή/και το b αρνητικός ή πραγματικός τι γίνεται; Γενικά μπερδέτικα..Μπορείτε να μου πείτε γενικά τι ισχύει για αυτές τις δύο εντολές;
![Χαμόγελο :) :)](https://www.e-steki.gr/images/smilies/smilenew.png)
- Το βιβλίο όντως δεν αναφέρει τίποτα για την προτεραιότητα των τελεστών ΚΑΙ, Ή, ΟΧΙ. Αρχικά το σίγουρο είναι ότι μεγαλύτερη προτεραιότητα έχει το ΟΧΙ, μιας και δουλεύει με έναν τελεστέο και όχι με δύο, όπως οι άλλοι δύο τελεστές.
Πχ λέμε ΟΧΙ(Χ) (μία μεταβλητή), αλλά Χ ΚΑΙ Υ (δύο μεταβλητές).
Μεταξύ των ΚΑΙ και Ή: στην πράξη (δηλ. στον προγραμματισμό) μεγαλύτερη προτεραιότητα έχει το ΚΑΙ και έπειτα το Ή.
Παράδειγμα:
Code:Α [B]Ή[/B] Β [B]ΚΑΙ[/B] Γ [I]ισοδύναμο με[/I] Α [B]Ή[/B] (Β [B]ΚΑΙ[/B] Γ)
Code:Α [B]Ή[/B] Β [B]ΚΑΙ[/B] Γ [I]ισοδύναμο με[/I] (Α [B]Ή[/B] Β) [B]ΚΑΙ[/B] Γ
- Δεν έχω αυτή τη στιγμή το βιβλίο μπροστά μου για να δω τι παίζει με τον αλγόριθμο (πολύ σωστή που το συμβουλεύεσαι), αλλά η λύση είναι απλή: γράφε με ΠΡΟΓΡΑΜΜΑ όπου η υποδιαστολή είναι η τελεία.
- DIV και MOD. Ορίζεται μόνο σε ΑΚΕΡΑΙΕΣ μεταβλητές. Αν βάλεις πραγματικές το πρόγραμμα σταματά τη λειτουργία του και βγαίνει μήνυμα λάθους. Εάν οι μεταβλητές είναι ετερόσημες τότε κάνεις την πράξη σαν να ήταν και οι δύο θετικές και προσθέτεις μπροστά το (-), όπως το κάνει κι η ΓλωσσοΜάθεια. Εάν είναι ομόσημες όπως τα ξέρεις.
Πάνω σ' αυτό: Η πράξη / (διαίρεση) ΔΕΝ ορίζεται για ακέραιες μεταβλητές. Και οι δύο μεταβλητές θα πρέπει να είναι ΠΡΑΓΜΑΤΙΚΟΥ τύπου. Αν υπάρχει στην άσκηση κάποια μεταβλητή που παίρνει ακέραιες τιμές αλλά πρέπει να χρησιμοποιήσετε το /, δηλώστε την πραγματική. ΑΚΕΡΑΙΕΣ και ΠΡΑΓΜΑΤΙΚΕΣ μεταβλητές δεν συνδιάζονται, σύμφωνα με μία σημείωση στο δεξί μέρος της σελίδας 155 (ναι τη σελίδα τη θυμάμαι απ' έξω).
Σημείωση: Το μήνυμα αυτό γράφτηκε 16 χρόνια πριν. Ο συντάκτης του πιθανόν να έχει αλλάξει απόψεις έκτοτε.
Χρήστες Βρείτε παρόμοια
-
Τα παρακάτω 0 μέλη και 2 επισκέπτες διαβάζουν μαζί με εσάς αυτό το θέμα:Tα παρακάτω 7 μέλη διάβασαν αυτό το θέμα:
-
Φορτώνει...
-
Το forum μας χρησιμοποιεί cookies για να βελτιστοποιήσει την εμπειρία σας.
Συνεχίζοντας την περιήγησή σας, συναινείτε στη χρήση cookies στον περιηγητή σας.