Τετράδιο μαθητή
ΘΕ19: Διαδικασίες
Όνομα(τα):___________________________________________________
Όνομα Η/Υ:___________________________________________________
Τμήμα:_______________________Ημερομηνία:___________________
Χρησιμοποιώντας διαδικασίες
Χρησιμοποιώντας διαδικασίες
Ξεκινήστε το Χώρο Δραστηριοτήτων, επιλέξτε τη θεματική ενότητα: Διαδικασίες
και επιλέξτε την πρώτη δραστηριότητα (Χρησιμοποιώντας διαδικασίες).
1. Το πρόβλημα του ταμείου ενός καταστήματος λιανικής πώλησης
Ο ιδιοκτήτης ενός καταστήματος λιανικής πώλησης είναι υποχρεωμένος να συμπεριλάβει στις
τιμές πώλησης των προϊόντων του Φόρο Προστιθέμενης Αξίας (ΦΠΑ). Κάθε προϊόν έχει ένα
μοναδικό τετραψήφιο αριθμό που είναι ο κωδικός του. Αν ο κωδικός είναι μονός, τότε ο
συντελεστής ΦΠΑ είναι 19% ενώ, αν είναι ζυγός, ο συντελεστής είναι 9%. Ο ιδιοκτήτης θέλει
να έχει ένα πρόγραμμα στο ταμείο του στο οποίο να δίνει ως είσοδο τον κωδικό του προϊόντος
και την τιμή του χωρίς το ΦΠΑ και το πρόγραμμα να του εμφανίζει το συντελεστή του ΦΠΑ, το
ποσό του ΦΠΑ και την τελική τιμή που θα πρέπει να πληρώσει ο πελάτης. Επίσης, θα πρέπει
να γίνει πρόβλεψη έτσι ώστε ο κωδικός να παίρνει τιμές από 1000 έως 7000 και η τιμή να είναι
πάντα θετική.
2. Αναλύστε το πρόβλημα
ο παραπάνω πρόβλημα μπορεί να χωριστεί σε τρία μέρη: Την είσοδο των δεδομένων, την
επεξεργασία που θα υποστούν αυτά τα δεδομένα και την έξοδο των αποτελεσμάτων
(πληροφορία). Με βάση αυτό το χωρισμό αναλύστε το πρόβλημα σε τρία υποπροβλήματα και
συμπληρώστε το παρακάτω ιεραρχικό διάγραμμα ώστε να διαφαίνεται η δομή του.
Τ
Συζητήστε με τον καθηγητή σας τη σημασία του ιεραρχικού διαγράμματος.
Έργο ΠΛΕΙΑΔΕΣ/Νηρηίδες, Γ΄ ΚΠΣ
ΕΑ.ΙΤΥ / Υπ.Ε.Π.Θ.
- σελ. 1 -
Αλγοριθμική & Προγραμματισμός
Χρησιμοποιώντας διαδικασίες
Τετράδιο μαθητή
3. Τυπικές και πραγματικές παράμετροι
ύμφωνα με το ιεραρχικό διάγραμμα που έχετε σχεδιάσει υπάρχουν τρία υποπρογράμματα
και ένα κύριο πρόγραμμα που ενώνει αυτά τα τρία. Έχουμε υλοποιήσει τα τρία
υποπρογράμματα με τη βοήθεια διαδικασιών. Η πρώτη διαδικασία αφορά την είσοδο των
δεδομένων, η δεύτερη την επεξεργασία και η τρίτη την εμφάνιση των αποτελεσμάτων.
Σ
Συζητήστε με τον καθηγητή σας τον τύπο υποπρογράμματος
Διαδικασία
Επιλέξτε από το Χώρο Δραστηριοτήτων το σύνδεσμο
και μελετήστε τις τρεις
έτοιμες διαδικασίες που αντιστοιχούν σε κάθε υποπρόβλημα.
Συζητήστε με τον καθηγητή σας τη διαφορά των τυπικών και πραγματικών
παραμέτρων.
Καταγράψτε στους τρεις παρακάτω πίνακες (ένα για κάθε διαδικασία) τα ονόματα των
τυπικών και πραγματικών παραμέτρων κατά αντιστοιχία.
Παράμετροι
Διαδικασία :
ΕΙΣΑΓΩΓΗ
Τυπικές
(του υποπρογράμματος)
Πραγματικές
(του προγράμματος)
Παράμετροι
Διαδικασία :
ΥΠΟΛΟΓΙΣΜΟΣ_ΦΠΑ
Τυπικές
(του υποπρογράμματος)
Πραγματικές
(του προγράμματος)
Παράμετροι
Διαδικασία :
ΕΞΟΔΟΣ
Τυπικές
(του υποπρογράμματος)
Πραγματικές
(του προγράμματος)
4. Δημιουργία του “κύριου” προγράμματος
ι τρεις διαδικασίες θα πρέπει να ενοποιηθούν σε ένα πρόγραμμα. Μέσα από το πρόγραμμα
αυτό θα καλούνται οι διαδικασίες και η επικοινωνία τους θα γίνεται με τη βοήθεια των
παραμέτρων.
Ο
Μέσα στο παράθυρο του Διερμηνευτή, όπου υπάρχουν έτοιμες οι τρεις διαδικασίες,
υλοποιήστε το κύριο πρόγραμμα που θα τις καλεί χρησιμοποιώντας την εντολή
ΚΑΛΕΣΕ.
Εκτελέστε το πρόγραμμα χρησιμοποιώντας ως δεδομένα εισόδου για κωδικό το 1008
και για τιμή το 100. Καταγράψτε στο παρακάτω πλαίσιο τι θα εμφανιστεί μετά την
εκτέλεση του προγράμματος
Έργο ΠΛΕΙΑΔΕΣ/Νηρηίδες, Γ΄ ΚΠΣ
ΕΑ.ΙΤΥ / Υπ.Ε.Π.Θ.
- σελ. 2 -
Αλγοριθμική & Προγραμματισμός
Τετράδιο μαθητή
ΘΕ19: Διαδικασίες
Συζητήστε με τον καθηγητή σας τις διαφορές στην επιστροφή των τιμών από
υποπρόγραμμα κατά την κλήση μιας διαδικασίας και κατά την κλήση μιας συνάρτησης.
Εκτελέστε το πρόγραμμα βήμα – βήμα με είσοδο σε υποπρογράμματα (F7)
χρησιμοποιώντας ως δεδομένα εισόδου για κωδικό το 1009 και για τιμή το 100.
Συμπληρώστε στους παρακάτω πίνακες τις τιμές που θα έχουν οι πραγματικές και
τυπικές παράμετροι κατά την είσοδο αλλά και κατά την έξοδο από το κάθε
υποπρόγραμμα.
Κλήση υποπρογράμματος:
ΕΙΣΑΓΩΓΗ
Κύριο πρόγραμμα:
ΤΑΜΕΙΟ
Διαδικασία:
ΕΙΣΑΓΩΓΗ
ΚΩΔΙΚΟΣ ΤΙΜΗ Σ_ΦΠΑ ΦΠΑ
ΤΕΛΙΚΗ_
ΤΙΜΗ
ΚΩΔ
ΤΙΜ
Είσοδος στο
υποπρόγραμμα:
μεταβίβαση τιμών
Έξοδος από το
υποπρόγραμμα:
επιστροφή τιμών
Κλήση υποπρογράμματος:
ΥΠΟΛΟΓΙΣΜΟΣ_ΦΠΑ
Κύριο πρόγραμμα:
ΤΑΜΕΙΟ
Διαδικασία:
ΥΠΟΛΟΓΙΣΜΟΣ_ΦΠΑ
ΚΩΔΙΚΟΣ ΤΙΜΗ Σ_ΦΠΑ ΦΠΑ
ΤΕΛΙΚΗ_
ΤΙΜΗ
Κ
Τ
Σ_Φ
ΦΠΑ
Τ_Τ
Είσοδος στο
υποπρόγραμμα:
μεταβίβαση τιμών
Έξοδος από το
υποπρόγραμμα:
επιστροφή τιμών
Κλήση υποπρογράμματος:
ΥΠΟΛΟΓΙΣΜΟΣ_ΦΠΑ
Κύριο πρόγραμμα:
ΤΑΜΕΙΟ
Διαδικασία:
ΕΞΟΔΟΣ
ΚΩΔΙΚΟΣ ΤΙΜΗ Σ_ΦΠΑ ΦΠΑ
ΤΕΛΙΚΗ_
ΤΙΜΗ
ΣΥΝ_ΦΠΑ
ΦΠΑ
ΤΕΛ_ΤΙΜ
Είσοδος στο
υποπρόγραμμα:
μεταβίβαση τιμών
Έξοδος από το
υποπρόγραμμα:
επιστροφή τιμών
Έργο ΠΛΕΙΑΔΕΣ/Νηρηίδες, Γ΄ ΚΠΣ
ΕΑ.ΙΤΥ / Υπ.Ε.Π.Θ.
- σελ. 3 -
Αλγοριθμική & Προγραμματισμός
Χρησιμοποιώντας διαδικασίες
Τετράδιο μαθητή
Συζητήστε με τον καθηγητή για το πότε πρέπει να επιλέξουμε να χρησιμοποιήσουμε
συνάρτηση και πότε διαδικασία.
Αποθηκεύστε
ή
εκτυπώστε
, σύμφωνα με τις οδηγίες του καθηγητή σας, το πρόγραμμα που
δημιουργήσατε, πριν τερματίσετε το Διερμηνευτή.
5. Άσκηση εμπέδωσης: Η μετατροπή της θερμοκρασίας
Η μετατροπή της θερμοκρασίας από βαθμούς Celsius σε Fahrenheit δίνεται από τον τύπο:
F= (9/5) C + 32
Να γραφεί πρόγραμμα το οποίο να εισαγάγει θερμοκρασία σε βαθμούς Celsius, να τη μετατρέπει
σε βαθμούς Fahrenheit και να εμφανίζει το αποτέλεσμα. Η διαδικασία αυτή θα
επαναλαμβάνεται μέχρι ο χρήστης να δώσει για είσοδο τον αριθμό -900.
Το παραπάνω πρόβλημα είναι αρκετά απλό έτσι ώστε να μην χρειάζεται να αναπτυχθεί με τη
βοήθεια υποπρογραμμάτων, όμως για λόγους εξοικείωσης των μαθητών με το τμηματικό
προγραμματισμό θα πρέπει να υλοποιηθεί με τη βοήθεια δυο διαδικασιών και μιας συνάρτησης.
Για την υλοποίηση του προγράμματος θα πρέπει να αναπτύξετε:
μια διαδικασία για την είσοδο των δεδομένων,
μια συνάρτηση για τη μετατροπή της θερμοκρασίας από βαθμούς Celsius σε
Fahrenheit,
μια διαδικασία για την εμφάνιση των δεδομένων και
ένα κύριο πρόγραμμα το οποίο θα καλεί τα προηγούμενα υποπρογράμματα και θα
επαναλαμβάνει τη διαδικασία της μετατροπής μέχρι ο χρήστης να δώσει για είσοδο
τον αριθμό -900
Επιλέξτε από το Χώρο Δραστηριοτήτων το σύνδεσμο
και συμπληρώστε
το πρόγραμμα ώστε να υλοποιεί τα παραπάνω.
Αποθηκεύστε
ή
εκτυπώστε
, σύμφωνα με τις οδηγίες του καθηγητή σας, το πρόγραμμα που
δημιουργήσατε, πριν τερματίσετε το Διερμηνευτή.
Έργο ΠΛΕΙΑΔΕΣ/Νηρηίδες, Γ΄ ΚΠΣ
ΕΑ.ΙΤΥ / Υπ.Ε.Π.Θ.
- σελ. 4 -
Αλγοριθμική & Προγραμματισμός
Τετράδιο μαθητή
ΘΕ19: Διαδικασίες
6. Βρες αυτό που επαναλαμβάνεται: το πρόβλημα του λιμεναρχείου
Το λιμεναρχείο του Γυθείου έχει καταγράψει, για στατιστικούς λόγους, στοιχεία για τα
οχηματαγωγά καράβια που προσέγγισαν το λιμάνι κατά την καλοκαιρινή περίοδο. Για κάθε
καράβι έχει καταγράψει το όνομά του, τον αριθμό των επιβατών, τον αριθμό των αυτοκινήτων
που μετέφερε καθώς και τον αριθμό των μελών του πληρώματος. Η διεύθυνση του
λιμεναρχείου θέλει να εμφανίσει τα ονόματα των καραβιών ως εξής:
α) κατά φθίνουσα σειρά ως προς τον αριθμό των επιβατών που μεταφέρθηκαν
β) κατά φθίνουσα σειρά ως προς τον αριθμό των οχημάτων που μεταφέρθηκαν
γ) κατά φθίνουσα σειρά ως προς τον αριθμό των μελών του πληρώματος
Για τον σκοπό αυτό θα πρέπει να αναπτύξετε ένα πρόγραμμα που θα εισαγάγει τα απαραίτητα
στοιχεία και θα εμφανίζει τους πίνακες που ζητά η διεύθυνση του λιμεναρχείου
ταξινομημένους.
Για την υλοποίηση του προγράμματος θα πρέπει να ακολουθήσετε τα παρακάτω βήματα:
Επιλέξτε από το Χώρο Δραστηριοτήτων το σύνδεσμο
και μελετήστε την
καρτέλα Αρχείο Εισόδου που περιέχονται τα δεδομένα που έχει καταγράψει το
λιμεναρχείο. Ο πρώτος αριθμός αναφέρεται στον αριθμό των καραβιών που έχουν
προσεγγίσει το λιμάνι. Μετά ακολουθούν ανά τέσσερα τα στοιχεία για κάθε καράβι.
Επομένως, το δεύτερο στοιχείο αναφέρεται στο όνομα του πρώτου καραβιού και μετά
ακολουθεί ο αριθμός των επιβατών, ο αριθμός των οχημάτων και ο αριθμός των μελών
του πληρώματος. Τα επόμενα τέσσερα στοιχεία αναφέρονται στο επόμενο καράβι κ.ο.κ.
Για την εισαγωγή των στοιχείων θα πρέπει να χρησιμοποιήσετε τέσσερις
μονοδιάστατους πίνακες. Θεωρήστε ότι ο μέγιστος αριθμός καραβιών που μπορεί να
εισαχθεί είναι 200. Καταγράψτε στο παρακάτω πλαίσιο τα ονόματα των πινάκων,
καθώς και τον τύπο τους. (εναλλακτικά θα μπορούσατε να χρησιμοποιήσετε ένα
μονοδιάστατο και ένα δισδιάστατο πίνακα τριών στηλών, όμως για να λυθεί η άσκηση με
πιο απλό τρόπο χρησιμοποιήστε τέσσερις μονοδιάστατους)
Για την ταξινόμηση των πινάκων θα χρησιμοποιήσετε μια διαδικασία την οποία θα
καλέσετε στο κύριο πρόγραμμα τρεις φορές. Την πρώτη φορά που θα καλέσετε τη
διαδικασία ο πίνακας ως προς τον οποίο θα γίνει η ταξινόμηση θα πρέπει να περιέχει
τον αριθμό των επιβατών και οι υπόλοιποι τρεις θα πρέπει να χρησιμοποιηθούν για να
γίνουν οι σωστές αντιμεταθέσεις ώστε να μην χαλάσει η παραλληλία των πινάκων. Την
δεύτερη φορά ο πίνακας στον οποίο θα γίνει η ταξινόμηση θα πρέπει να περιέχει τον
αριθμό των οχημάτων και την τρίτη φορά θα πρέπει να περιέχει τον αριθμό των μελών
του πληρώματος.
Συζητήστε με τον καθηγητή σας για τον τρόπο με τον οποίο μπορεί ένας πίνακας να
μεταβιβαστεί ως παράμετρος.
Καταγράψτε στο παρακάτω πλαίσιο τις τυπικές και πραγματικές παραμέτρους που θα
χρησιμοποιήσετε, όταν θα καλέσετε την διαδικασία της ταξινόμησης και για τις τρεις
φορές.
Έργο ΠΛΕΙΑΔΕΣ/Νηρηίδες, Γ΄ ΚΠΣ
ΕΑ.ΙΤΥ / Υπ.Ε.Π.Θ.
- σελ. 5 -
Αλγοριθμική & Προγραμματισμός
Χρησιμοποιώντας διαδικασίες
Τετράδιο μαθητή
Αριθμός επιβατών
Τυπικές:
Πραγματικές:
Αριθμός οχημάτων
Τυπικές:
Πραγματικές:
Αριθμός μελών πληρώματος
Τυπικές:
Πραγματικές:
Μέσα στην διαδικασία της ταξινόμησης θα πρέπει να γίνουν τέσσερις αντιμεταθέσεις
στοιχείων μια για κάθε πίνακα. Η μια αντιμετάθεση αφορά τα ονόματα, επομένως οι
μεταβλητές θα είναι τύπου χαρακτήρα και οι άλλες τρεις αφορούν τον αριθμό των
επιβατών, οχημάτων και μελών του πληρώματος, οπότε οι μεταβλητές θα είναι τύπου
ακεραίου.
Δημιουργήστε μια ακόμη διαδικασία, μόνο για τις μεταβλητές τύπου ακεραίου, η οποία
θα αναλαμβάνει την αντιμετάθεση των μεταβλητών και θα την καλείτε μέσα από την
διαδικασία της ταξινόμησης τρεις φορές. Πρέπει να προσέξετε ότι τώρα δεν χρειάζεται
να μεταβιβάσετε όλο τον πίνακα αλλά μόνο τα στοιχεία του πίνακα που πρέπει να γίνει
αντιμετάθεση. Καταγράψτε στο παρακάτω πλαίσιο τη
διαδικασία της αντιμετάθεσης
αριθμητικών στοιχείων
.
Για την αντιμετάθεση των χαρακτήρων μπορείτε να φτιάξετε μια ακόμα διαδικασία που
η μόνη της διαφορά με την προηγούμενη είναι ότι οι μεταβλητές θα πρέπει να
δηλωθούν ως χαρακτήρες. Καταγράψτε στο παρακάτω πλαίσιο τη
διαδικασία της
αντιμετάθεσης στοιχείων χαρακτήρων
.
Έργο ΠΛΕΙΑΔΕΣ/Νηρηίδες, Γ΄ ΚΠΣ
ΕΑ.ΙΤΥ / Υπ.Ε.Π.Θ.
- σελ. 6 -
Αλγοριθμική & Προγραμματισμός
Τετράδιο μαθητή
ΘΕ19: Διαδικασίες
Καταγράψτε στο παρακάτω πλαίσιο τη
διαδικασία της ταξινόμησης
. Θυμηθείτε ότι μέσα
από τη διαδικασία της ταξινόμησης θα καλείται η διαδικασία της αντιμετάθεσης.
Επειδή μετά από κάθε ταξινόμηση θα πρέπει να εμφανίζονται τα στοιχεία των πινάκων
θα πρέπει να δημιουργήσετε μια ακόμη διαδικασία μέσα από την οποία θα γίνεται η
εμφάνιση των στοιχείων.
(Τη διαδικασία αυτή μπορείτε να την χρησιμοποιήσετε και
στην αρχή του προγράμματος μετά την αυτόματη εισαγωγή των στοιχείων για να
εμφανιστούν τα στοιχεία που έχουν εισαχθεί.)
Καταγράψτε στο παρακάτω πλαίσιο τη
διαδικασία εμφάνισης των πινάκων
.
Στο παράθυρο του διερμηνευτή επιλέξτε τη καρτέλα Κώδικας και ξεκινήστε τη
συγγραφή του προγράμματος.
Έργο ΠΛΕΙΑΔΕΣ/Νηρηίδες, Γ΄ ΚΠΣ
ΕΑ.ΙΤΥ / Υπ.Ε.Π.Θ.
- σελ. 7 -
Αλγοριθμική & Προγραμματισμός
Χρησιμοποιώντας διαδικασίες
Τετράδιο μαθητή
Εκτελέστε το πρόγραμμα, αφού έχετε ελέγξει ότι είναι ενεργοποιημένη η επιλογή
“Χρήση αρχείου εισόδου” από το μενού Εκτέλεση, ώστε να εισαχθούν τα δεδομένα
αυτόματα και να μη χρειάζεται να εισαχθούν από εσάς.
Από την Οθόνη εκτέλεσης παρατηρήστε τα αποτελέσματα του προγράμματος που
δημιουργήσατε.
Αποθηκεύστε
ή
εκτυπώστε
, σύμφωνα με τις οδηγίες του καθηγητή σας, το πρόγραμμα που
δημιουργήσατε, πριν τερματίσετε το Διερμηνευτή.
Έργο ΠΛΕΙΑΔΕΣ/Νηρηίδες, Γ΄ ΚΠΣ
ΕΑ.ΙΤΥ / Υπ.Ε.Π.Θ.
- σελ. 8 -
Αλγοριθμική & Προγραμματισμός