You are on page 1of 8

ΜΑΘΗΜΑ : ΑΝΑΠΤΥΞΗ ΕΦΑΡΜΟΓΩΝ ΣΕ ΠΡΟΓΡΑΜΜΑΤΙΣΤΙΚΟ ΠΕΡΙΒΑΛΛΟΝ

ΚΕΦΑΛΑΙΟ 10

Μάθημα 23

ΚΑΡΑΧΡΗΣΤΟΣ ΧΡΙΣΤΟΦΟΡΟΣ
ΤΗΛ.6947345322, 6987070028
email: xristoforos_karachristos@hotmail.com
https://sites.google.com/site/aeppkx
ΚΕΦΑΛΑΙΟ 10Ο ΚΑΡΑΧΡΗΣΤΟΣ ΧΡΙΣΤΟΦΟΡΟΣ

ΚΕΦΑΛΑΙΟ 10ο ΥΠΟΠΡΟΓΡΑΜΜΑΤΑ

1. Τι ονομάζεται τμηματικός προγραμματισμός;

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

2. Ποια τεχνική σχεδίασης προγραμμάτων υλοποιεί ο τμηματικός προγραμματισμός;

Ο τμηματικός προγραμματισμός υλοποιεί την ιεραρχική σχεδίαση, γιατί σε αυτήν κάθε πρόβλημα διαιρείται σε
επιμέρους προβλήματα και κάθε ένα από αυτά τα προβλήματα διαιρείται σε επιμέρους υποπροβλήματα. Στον
τμηματικό προγραμματισμό, για το κάθε ένα επιμέρους υποπρόβλημα δημιουργείται και ένα επιμέρους τμήμα
προγράμματος, με αποτέλεσμα το τελικό πρόγραμμα να ανάγεται σε πολλά απλούοττερα τμήματα προγράμματος.

3. Τι ονομάζεται υποπρόγραμμα; Να δοθεί ένα παράδειγμα χρήσης υποπρογραμμάτων.

Είναι ένα τμήμα προγράμματος που επιτελεί αυτόνομο έργο και είναι γραμμένο ξεχωριστά από το υπόλοιπο
πρόγραμμα.

Έστω ότι πρέπει να επιλύσουμε το παρακάτω πρόβλημα:

«Ο προϊστάμενος του γραφείου περιβάλλοντος ενός Δήμου θέλει να δημιουργήσει ένα πρόγραμμα που θα διαβάζει 30
θερμοκρασίες, θα υπολογίζει και θα εκτυπώνει τον μέσο όρο τους.»
Το πρόβλημα μπορεί να διασπαστεί σε τρία επιμέρους υποπροβλήματα:

1° υποπρόβλημα: Εισαγωγή των θερμοκρασιών.


2° υποπρόβλημα: Υπολογισμός μέσου όρου θερμοκρασιών.
3° υποπρόβλημα: Εκτύπωση του μέσου όρου.

ΧΑΡΑΚΤΗΡΙΣΤΙΚΑ ΤΩΝ ΥΠΟΓΡΑΜΜΑΤΩΝ

Να έχει μία είσοδο και μία έξοδο. Η είσοδος σε ένα υποπρόγραμμα γίνεται στην αρχή του. Ένα υποπρόγραμμα
ενεργοποιείται, όταν γίνεται η είσοδος σε αυτό, εκτελεί ορισμένες ενέργειες και απενεργοποιείται με την έξοδο από
αυτό, που γίνεται στο τέλος του.

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

Να μην είναι πολύ μεγάλο. Το μέγεθος ενός υποπρογράμματος να είναι τόσο, ώστε να είναι κατανοητό, να μπορεί να
ελέγχεται και να εκτελεί μία λειτουργία. Εάν εκτελεί περισσότερες λειτουργίες, καλό είναι να διασπαστεί σε
επιμέρους υποπροβλήματα.

ΠΛΕΟΝΕΚΤΗΜΑΤΑ ΤΟΥ ΤΜΗΜΑΤΙΚΟΥ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ

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

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

 Απαιτεί λιγότερο χρόνο και προσπάθεια στη συγγραφή του προγράμματος. Από τη στιγμή που
δημιουργείται ένα υποπρόγραμμα μπορεί να καλείται από πολλά σημεία του προγράμματος, μειώνοντας έτσι
το μέγεθος του προγράμματος, το χρόνο που απαιτείται για η συγγραφή, τις πιθανότητες λάθους και κάνει το
πρόγραμμα πιο κατανοητό.
 Επεκτείνει τις δυνατότητες των γλωσσών προγραμματισμού. Από τη στιγμή που έχει δημιουργηθεί ένα
υποπρόγραμμα, μπορεί να χρησιμοποιηθεί και σε άλλα προγράμματα. Η χρήση του δεν διαφέρει από τη
χρήση των συναρτήσεων που παρέχει η γλώσσα προγραμματισμού ΓΛΩΣΣΑ, π.χ. η συνάρτηση ΣΥΝ(Χ) για

2
ΚΕΦΑΛΑΙΟ 10Ο ΚΑΡΑΧΡΗΣΤΟΣ ΧΡΙΣΤΟΦΟΡΟΣ

τον υπολογισμό του συνημίτονου X. Αν για μία λειτουργία δεν υπάρχει κατάλληλη συνάρτηση στη γλώσσα
προγραμματισμού, τότε μπορεί να γραφεί ένα υποπρόγραμμα για να υλοποιεί αυτή τη λειτουργία και να
χρησιμοποιείται όταν πρέπει. Η συγγραφή πολλών υποπρογραμμάτων και, ταυτόχρονα, η δημιουργία
βιβλιοθηκών με αυτά, επεκτείνουν την ίδια τη γλώσσα προγραμματισμού.

ΠΑΡΑΜΕΤΡΟΙ

4. Τι ονομάζεται παράμετρος ενός υποπρογράμματος;

Αν και το κάθε υποπρόγραμμα είναι αυτόνομο και ανεξάρτητο τμήμα προγράμματος, πολλές φορές πρέπει να
επικοινωνεί με το αρχικό πρόγραμμα, που καλείται κύριο πρόγραμμα, ή με άλλα υποπρογράμματα. Ένα
υποπρόγραμμα ενεργοποιείται, όταν καλείται από το κύριο πρόγραμμα ή από ένα άλλο υποπρόγραμμα, δέχεται τιμές
από το τμήμα προγράμματος που το καλεί και επιστρέφει τιμές σε αυτό. Οι τιμές που περνούν από το ένα
υποπρόγραμμα στο άλλο λέγονται παράμετροι.
Μια παράμετρος είναι μια μεταβλητή που επιτρέπει το πέρασμα τιμής από το ένα τμήμα προγράμματος σε ένα άλλο.

5. Ποια είναι η διαφορά μεταξύ μεταβλητής και παραμέτρου;

Η μεταβλητή χρησιμοποιείται, για να παριστάνει ποσότητα που η τιμή της μπορεί να μεταβάλλεται. Η παράμετρος
είναι σαν μία κοινή μεταβλητή, με τη διαφορά ότι χρησιμοποιείται, για να περνάει τιμή στα υποπρογράμματα.

ΔΙΑΔΙΚΑΣΙΕΣ ΚΑΙ ΣΥΝΑΡΤΗΣΕΙΣ

6. Ποια είδη υποπρογραμμάτων υπάρχουν;

Υπάρχουν δύο είδη υποπρογραμμάτων, οι διαδικασίες και οι συναρτήσεις.

7. Σε ποιο σημείο γράφονται-δηλώνονται τα υποπρογράμματα;

Τα υποπρογράμματα ακολουθούν το κύριο πρόγραμμα και γράφονται (ή όπως λέμε δηλώνονται) μετά το
«ΤΕΛΟΣ_ΠΡΟΓΡΑΜΜΑΤΟΣ». Η σειρά με την οποία τα παραθέτουμε μετά το κύριο πρόγραμμα δεν παίζει κανένα
ρόλο.

8. Τι είναι συνάρτηση (σε προγραμματιστικό περιβάλλον);

Συνάρτηση είναι ένας τύπος υποπρογράμματος που υπολογίζει και επιστρέφει μία μόνο τιμή με το όνομά της.

9. Τι είναι διαδικασία (σε προγραμματιστικό περιβάλλον);

Η διαδικασία είναι ένας τύπος υποπρογράμματος που εκτελεί όλες τις λειτουργίες ενός προγράμματος.

10. Να γράψετε τις διαφορές μεταξύ συνάρτησης και διαδικασίας.

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

 Μία συνάρτηση επιστρέφει μία μόνο τιμή με το όνομα της στο υποπρόγραμμα που την κάλεσε ή στο
κύριο πρόγραμμα. Η διαδικασία μπορεί και επιστρέφει περισσότερες από μία τιμές μέσω των παραμέτρων
στο τμήμα προγράμματος που την κάλεσε.

 Έχουν διαφορετικό τρόπο κλήσης: μια συνάρτηση καλείται με την εμφάνιση του ονόματος της σε μια
έκφραση, ενώ η διαδικασία καλείται με την εντολή ΚΑΛΕΣΕ και το όνομα της διαδικασίας.

3
ΚΕΦΑΛΑΙΟ 10Ο ΚΑΡΑΧΡΗΣΤΟΣ ΧΡΙΣΤΟΦΟΡΟΣ

11. Ορισμός και κλήση συναρτήσεων

Η δομή μιας συνάρτησης είναι:

ΣΥΝΑΡΤΗΣΗ όνομα(λίστα παραμέτρων): τύπος συνάρτησης


Τμήμα δηλώσεων
ΑΡΧΗ
εντολές
όνομα ← έκφραση
εντολές
ΤΕΛΟΣ_ΣΥΝΑΡΤΗΣΗΣ

παράδειγμα:

ΣΥΝΑΡΤΗΣΗ Πρόσθεση(Α, Β): ΑΚΕΡΑΙΑ


ΜΕΤΑΒΛΗΤΕΣ
ΑΚΕΡΑΙΕΣ: A, Β
ΑΡΧΗ
Πρόσθεση ← A + Β
ΤΕΛΟΣ_ΣΥΝΑΡΤΗΣΗΣ

12. Με ποιον τρόπο ενεργοποιείται (καλείται) μία συνάρτηση;

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

Ζ ← Πρόσθεση(X, Υ) ή

ΓΡΑΨΕ Πρόσθεση(Χ, Υ)

Παράδειγμα κλήσης μιας συνάρτησης.

ΠΡΟΓΡΑΜΜΑ πράξεις
ΜΕΤΑΒΛΗΤΕΣ
ΑΚΕΡΑΙΕΣ:Χ, Υ, Ζ
ΑΡΧΗ
ΔΙΑΒΑΣΕ Χ,Υ
Ζ ← Πρόσθεση(Χ,Υ)
ΓΡΑΨΕ Ζ
ΤΕΛΟΣ_ΠΡΟΓΡΑΜΜΑΤΟΣ
___________________________________
ΣΥΝΑΡΤΗΣΗ Πρόσθεση(Α, Β): ΑΚΕΡΑΙΑ
ΜΕΤΑΒΛΗΤΕΣ
ΑΚΕΡΑΙΕΣ: A, Β
ΑΡΧΗ
Πρόσθεση ← A + Β
ΤΕΛΟΣ_ΣΥΝΑΡΤΗΣΗΣ

ΠΑΡΑΤΗΡΗΣΕΙΣ
1. Η χρήση παραμέτρων σε μία συνάρτηση είναι υποχρεωτική. Μπορούν να υπάρχουν από μία μέχρι όσες
παραμέτρους επιθυμούμε.
2. Ο αριθμός των παραμέτρων κατά την κλήση μιας συνάρτησης πρέπει να είναι ίδιος με τον αριθμό των
παραμέτρων που υπάρχει στην επικεφαλίδα της συνάρτησης.
3. Επειδή το σχολικό βιβλίο δεν αναφέρει εάν μέσω των παραμέτρων μπορούν μεταβιβάζονται σταθερές τιμές
ή συμβολικές σταθερές, καλό είναι να αποφεύγεται η χρήση τους στις παραμέτρους.
4. Η συνάρτηση χρησιμοποιείται μόνο για να υπολογίζει μια τιμή και όχι για να διαβάζει δεδομένα και να
εκτυπώνει αποτελέσματα. Έτσι μέσα σε μία συνάρτηση δεν πρέπει να υπάρχουν οι εντολές ΓΡΑΨΕ και
ΔΙΑΒΑΣΕ.
5. Από τη στιγμή που δημιουργούμε μια συνάρτηση, μπορούμε να την καλέσουμε όσες φορές θέλουμε.
6. Ο τύπος της συνάρτησης και της μεταβλητής στην οποία θα εκχωρηθεί η επιστρεφόμενη τιμή της
συνάρτησης πρέπει να έχουν τον ίδιο τύπο δεδομένων.

4
ΚΕΦΑΛΑΙΟ 10Ο ΚΑΡΑΧΡΗΣΤΟΣ ΧΡΙΣΤΟΦΟΡΟΣ

ΜΕΘΟΔΟΛΟΓΙΕΣ

Η συνάρτηση στον πίνακα τιμών.

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

ΠΑΡΑΔΕΙΓΜΑ

Να γράψετε τις τιμές που θα εμφανίσει το διπλανό πρόγραμμα, αν κατά την εκτέλεσή του δοθούν ως είσοδος οι τιμές
4 και 8.

ΠΡΟΓΡΑΜΜΑ Π1
ΜΕΤΑΒΛΗΤΕΣ
ΑΚΕΡΑΙΕΣ: A, Β, Γ
ΑΡΧΗ
ΔΙΑΒΑΣΕ A, Β
ΓΡΑΨΕ A, Β
Γ ← Πράξεις(Α, Β)
A←A*Γ
Β ← Β*Γ
ΓΡΑΨΕ A, Β
ΤΕΛΟΣ_ΠΡΟΓΡΑΜΜΑΤΟΣ Π1
________________________________
ΣΥΝΑΡΤΗΣΗ Πράξεις(Χ, Υ): ΑΚΕΡΑΙΑ
ΜΕΤΑΒΛΗΤΕΣ ΑΚΕΡΑΙΕΣ: X, Υ
ΑΡΧΗ
X←X+2
Υ← Υ-Χ
Πράξεις ← (X + Υ) div 4
ΤΕΛΟΣ ΣΥΝΑΡΤΗΣΗΣ

Κύριο Πρόγραμμα Συνάρτηση

A Β Γ X Υ Πράξεις Έξοδος
4 8
48
κλήση 4 8
συνάρτησης

πράξεις 6 2
στη συνάρτηση
2
επιστροφή 2
8
16
816

ΕΡΩΤΗΣΕΙΣ ΑΝΑΠΤΥΞΗΣ

23.1. Τι ονομάζεται τμηματικός προγραμματισμός και ποια πλεονεκτήματα προσφέρει;


23.2. Τι είναι ένα υποπρόγραμμα και ποιες ιδιότητες πρέπει να έχει;
23.3. Τι ονομάζουμε «παράμετρο» και ποια η διαφορά από μια μεταβλητή;
23.4. Ποια είδη υποπρογραμμάτων υπάρχουν; Να δώσετε τον ορισμό του καθενός.

ΣΩΣΤΟ - ΛΑΘΟΣ

1. Το κύριο πρόγραμμα είναι ένα υποπρόγραμμα. Σ Λ


2. Η είσοδος σε ένα υποπρόγραμμα μπορεί να γίνει σε οποιοδήποτε σημείο του. Σ Λ
3. Σε μία συνάρτηση δεν επιτρέπεται η χρήση της εντολής ΔΙΑΒΑΣΕ. Σ Λ
4. Μια συνάρτηση χρησιμοποιείται, για να υπολογίζει μία μόνο τιμή την οποία και επιστρέφει. Σ Λ
5. Μια συνάρτηση μπορεί να κληθεί χωρίς καμιά παράμετρο. Σ Λ
6. Μια συνάρτηση επιστρέφει τιμή τύπου ΧΑΡΑΚΤΗΡΑ, μόνο εάν δέχεται παραμέτρους τέτοιου τύπου. Σ Λ

5
ΚΕΦΑΛΑΙΟ 10Ο ΚΑΡΑΧΡΗΣΤΟΣ ΧΡΙΣΤΟΦΟΡΟΣ

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

23.10. Τι θα εμφανίσει το διπλανό τμήμα προγράμματος;

Α←4
Β←7
Γ ← Σ1(Α, Β)
ΓΡΑΨΕ A, Β, Γ
____________
ΣΥΝΑΡΤΗΣΗ ΣΙ (Α, Β):ΑΚΕΡΑΙΑ
ΜΕΤΑΒΛΗΤΕΣ ΑΚΕΡΑΙΕΣ A, Β
ΑΡΧΗ
Στ ← Α^2-Β
ΤΕΛΟΣ ΣΥΝΑΡΤΗΣΗΣ

23.16. Να βρείτε τι θα εμφανίσει το καθένα από τα παρακάτω τμήματα προγράμματος.


Α)
A←2
Β ←3
ΓΡΑΨΕ A, Β
Γ ← Πράξεις(Α, Β)
Α←Α+Γ
Β←Β+Γ
ΓΡΑΨΕ A, Β
____________________
ΣΥΝΑΡΤΗΣΗ Πράξεις(Α, Β): ΑΚΕΡΑΙΑ
ΜΕΤΑΒΛΗΤΕΣ ΑΚΕΡΑΙΕΣ: Χ,Υ
ΑΡΧΗ
Πράξεις ← Β - Α
ΤΕΛΟΣ_ΣΥΝΑΡΤΗΣΗΣ

Β)
Χ1 ←10
Χ2 ← 5
Χ3 ← Έλεγχος(Χ1, Χ2)
ΓΡΑΨΕ Χ1,Χ2, Χ3
___________________
ΣΥΝΑΡΤΗΣΗ Έλεγχος(Α1, Β1): ΑΚΕΡΑΙΑ
ΜΕΤΑΒΛΗΤΕΣ ΑΚΕΡΑΙΕΣ: Α1,Β1
ΑΡΧΗ
ΑΝ Α1 <= Β1 ΤΟΤΕ
Έλεγχος ← Α1 div 2
ΑΛΛΙΩΣ
Έλεγχος ← A1 mod 3 + Β1
ΤΕΛΟΣ_ΑΝ
ΤΕΛΟΣ_ΣΥΝΑΡΤΗΣΗΣ

23.17. Να βρείτε τι θα εμφανίσει το καθένα από τα παρακάτω προγράμματα, εάν ως είσοδος δοθούν οι αριθμοί 4
και 7.

ΠΡΟΓΡΑΜΜΑ Π1
ΜΕΤΑΒΛΗΤΕΣ ΑΚΕΡΑΙΕΣ: Χ1,Χ2, Χ3
ΑΡΧΗ ΔΙΑΒΑΣΕ XI, Χ2
Χ3 ← Χ1 + Χ2
ΓΡΑΨΕ Χ3
Χ3 ← ΠΡ(Χ3)
ΓΡΑΨΕ Χ3
Χ3 ← ΠΡ(Χ3)
ΓΡΑΨΕ Χ3
ΤΕΛΟΣ_ΠΡΟΓΡΑΜΜΑΤΟΣ Π1
___________________________
ΣΥΝΑΡΤΗΣΗ ΠΡ(Α): ΑΚΕΡΑΙΑ
ΜΕΤΑΒΛΗΤΕΣ ΑΚΕΡΑΙΕΣ: Α

6
ΚΕΦΑΛΑΙΟ 10Ο ΚΑΡΑΧΡΗΣΤΟΣ ΧΡΙΣΤΟΦΟΡΟΣ

ΑΡΧΗ
Β ←Adiv2
Γ ← (Β ^ 2 - A) div 7
ΑΝ Γ >= 2 ΤΟΤΕ
Γ← Γ + 4
ΤΕΛΟΣ_ΑΝ
ΣΥΝ ← Γ
ΤΕΛΟΣ_ΣΥΝΑΡΤΗΣΗΣ

ΑΣΚΗΣΕΙΣ ΠΡΟΣ ΕΠΙΛΥΣΗ

23.20. Να γραφεί συνάρτηση που θα δέχεται έναν ακέραιο αριθμό και θα επιστρέφει το τετράγωνό του.
23.21. Να γραφεί συνάρτηση που θα δέχεται δύο πραγματικούς αριθμούς και θα επιστρέφει το άθροισμά τους.
23.22. Να γραφεί συνάρτηση που δέχεται δύο θερμοκρασίες Τ1 και Τ2 σε βαθμούς Κέλβιν (Κ) και θα επιστρέφει
τη διαφορά τους σε βαθμούς Κελσίου (°C). Δίνεται ότι Τκ(Κ) =Tc (C) + 273.

23.27. Να γραφεί πρόγραμμα σε ΓΛΩΣΣΑ που:


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

23.29. Να γραφεί πρόγραμμα σε ΓΛΩΣΣΑ το οποίο:


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

23.31. Ένας οικονομολόγος υπολόγισε ότι μια βιοτεχνία ρούχων για να κατασκευάσει πουκάμισα, ξοδεύει 1/8x +
10x + 100 ευρώ. Να γραφεί πρόγραμμα σε ΓΛΩΣΣΑ που θα υπολογίζει το κόστος κατασκευής πουκαμίσων της
βιοτεχνίας ως εξής
α. Θα διαβάζει τον αριθμό πουκαμίσων χ.
β. Θα καλεί συνάρτηση που θα κατασκευάσετε έτσι, ώστε να δέχεται τον αριθμό πουκαμίσων και θα επιστρέφει το
κόστος κατασκευής τους.
γ. Θα εμφανίζει το κόστος κατασκευής τους

23.37. Στην έξοδο ενός ενισχυτή ήχου υπάρχει η αντίσταση εξόδου Rx και στην είσοδο ενός ηχείου υπάρχει η
αντίσταση εισόδου Rz. Για να υπάρχει επιτυχημένη μεταφορά ήχου από τον ενισχυτή στο ηχείο, πρέπει οι
αντιστάσεις Rx και Rz να έχουν την ίδια τιμή. Να γραφεί πρόγραμμα σε ΓΛΩΣΣΑ που για ένα σύστημα ενισχυτή-
ηχείου:

α. Θα διαβάζει τις τιμές των αντιστάσεων Rx και Rz σε Ωμ. β. Θα καλεί συνάρτηση που θα δημιουργήσετε και η
οποία θα δέχεται τις τιμές των δύο αντιστάσεων και θα επιστρέφει τη λογική τιμή «Αληθής», αν υπάρχει επιτυχημένη
μεταφορά ήχου, ή τη λογική τιμή «Ψευδής», αν δεν υπάρχει επιτυχημένη μεταφορά ήχου. γ. Αν υπάρχει επιτυχημένη
μεταφορά ήχου τότε να εμφανίζει το μήνυμα «Επιτυχής μεταφορά», διαφορετικά να εμφανίζει «Η μεταφορά δεν είναι
επιτυχημένη».

23.41. Σε ένα διαγωνισμό του ΑΣΕΠ εξετάζονται 1500 υποψήφιοι. Ως εξεταστικό κέντρο χρησιμοποιείται ένα
κτήριο με αίθουσες διαφορετικής χωρητικότητας. Ο αριθμός των επιτηρητών που απαιτούνται ανά αίθουσα
καθορίζεται αποκλειστικά με βάση τη χωρητικότητα της αίθουσας ως εξής:

ΧΩΡΗΤΙΚΟΤΗΤΑ ΑΡΙΘΜΟΣ ΕΠΙΤΗΡΗΤΩΝ


Μέχρι και 15 θέσεις 1
Από 16 μέχρι και 23 θέσεις 2
Πάνω από 23 θέσεις 3

Να γίνει πρόγραμμα σε γλώσσα προγραμματισμού «ΓΛΩΣΣΑ» το οποίο:


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

Σημείωση: Να θεωρήσετε ότι η συνολική χωρητικότητα των αιθουσών του κτηρίου επαρκεί για τον αριθμό των
υποψηφίων.

7
ΚΕΦΑΛΑΙΟ 10Ο ΚΑΡΑΧΡΗΣΤΟΣ ΧΡΙΣΤΟΦΟΡΟΣ

23.44.Να γραφεί πρόγραμμα το οποίο να πραγματοποιεί την πρόσθεση δύο κλασμάτων Α/Β και Γ/Δ ακολουθώντας
τα παρακάτω βήματα:

α. δέχεται τέσσερις ακέραιους αριθμούς (Α, Β, Γ, Δ) που αντιστοιχούν στους παρονομαστές και στους αριθμητές των
δυο κλασμάτων, εξασφαλίζοντας ότι οι παρονομαστές δεν είναι μηδέν, β. πραγματοποιεί την απλοποίηση του κάθε
ενός κλάσματος, βρίσκοντας τον μέγιστο κοινό διαιρέτη (μκδ) του αριθμητή και του παρονομαστή και διαιρώντας τον
καθένα από αυτούς με τον μκδ. Για την εύρεση του μκδ χρησιμοποιείται η συνάρτηση ΜΚΔ που περιγράφεται στο στ
ερώτημα.
γ. πραγματοποιεί την πρόσθεση των απλοποιημένων κλασμάτων Α/Β +Γ/Δ =Ε/Ζ δημιουργώντας το κλάσμα Ε/Ζ το
οποίο θα έχει αριθμητή το Ε=Δ*Α+Γ*Β και ως παρονομαστή το Ζ=Β*Δ.
δ. απλοποιεί το κλάσμα Ε/Ζ, χρησιμοποιώντας τη συνάρτηση ΜΚΔ.
ε. εμφανίζει το κλάσμα Ε/Ζ.

στ. Να κατασκευάσετε τη συνάρτηση ΜΚΔ, η οποία θα δέχεται στις μεταβλητές X και Υ τον αριθμητή και τον
παρονομαστή ενός κλάσματος. Θα επιστρέφει τον μέγιστο κοινό διαιρέτη τους, εκτελώντας τα εξής βήματα:
1.Διαιρείται ο μεγαλύτερος με τον μικρότερο από τους αριθμούς των μεταβλητών X και Υ και το υπόλοιπο της
διαίρεσης αποθηκεύεται στη μεταβλητή Ζ.
2.Ο μικρότερος αριθμός των X και Υ τοποθετείται στη μεταβλητή X και το υπόλοιπο Ζ τοποθετείται στη μεταβλητή
Υ.
3.Το υπόλοιπο της νέας διαίρεσης των αριθμών των μεταβλητών X δια Υ τοποθετείται στη μεταβλητή Ζ.
Τα βήματα 2 και 3 επαναλαμβάνονται, μέχρι το υπόλοιπο Ζ να γίνει μηδέν. Όταν συμβεί αυτό, ο μκδ είναι ο αριθμός
που υπάρχει στη μεταβλητή Υ.

You might also like