You are on page 1of 3

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

ΚΕΦΑΛΑΙΟ 10

Μάθημα 25

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

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

Πώς μπορούμε να χρησιμοποιήσουμε έναν πίνακα ως παράμετρο σε ένα υποπρόγραμμα;

Για να χρησιμοποιήσουμε έναν πίνακα (μονοδιάστατο ή δισδιάστατο) ως παράμετρο σε ένα υποπρόγραμμα:

 Δηλώνουμε τον πίνακα στο κύριο πρόγραμμα στον κατάλληλο τύπο δεδομένων, με τον γνωστό τρόπο, π.χ.
ΑΚΕΡΑΙΕΣ Α[100].

 Κατά την κλήση του υποπρογράμματος χρησιμοποιούμε ως παράμετρο μόνο το όνομα του πίνακα, π.χ. ΜΟ
Εύρεση(Α)

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

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

Μπορούμε ως παράμετρο να χρησιμοποιήσουμε και ένα μόνο στοιχείο του πίνακα.

Ασκήσεις Προς επίλυση

1. Να γραφεί συνάρτηση που θα δέχεται έναν πίνακα Α[100] ακεραίων αριθμών και θα επιστρέφει τον
μικρότερο αριθμό του πίνακα.

2. Να γραφεί συνάρτηση που θα δέχεται έναν πίνακα Α[50,10] πραγματικών αριθμών και θα επιστρέφει τον
μέσο όρο του πίνακα.

3. Να γραφεί διαδικασία που θα δέχεται έναν πίνακα Β[200] ακεραίων αριθμών και θα επιστρέφει το ποσοστό
των θετικών αριθμών του πίνακα.

4. Να γραφεί διαδικασία που θα δέχεται τον πίνακα Α[50] πραγματικών αριθμών και θα επιστρέφει τον
μικρότερο αριθμό του πίνακα και το γινόμενο όλων των αριθμών του πίνακα.

5. Να γραφεί διαδικασία που θα δέχεται έναν πίνακα Β[50,100] ακεραίων αριθμών και θα επιστρέφει το
γινόμενο και το άθροισμα των αριθμών του πίνακα.

6. Να γραφεί πρόγραμμα που:

α. Θα διαβάζει 50 ακέραιους αριθμούς και θα τους καταχωρίζει στον πίνακα Α[50],


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

Να γραφεί πρόγραμμα που:

α. Θα διαβάζει 5000 αριθμούς και θα τους αποθηκεύει στον πίνακα Β[50,100],


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

0 Τοπικός Οργανισμός Εγγείων Βελτιώσεων (ΤΟΕΒ) έχει 100 αντλιοστάσια, που το καθένα έχει μια
ονομασία και περιέχει μια αντλία που τροφοδοτεί με νερό μια τεχνητή λίμνη. Όταν το αντλιοστάσιο
λειτουργεί, χαρακτηρίζεται με τον αριθμό 1 και όταν δεν λειτουργεί με τον αριθμό 0. Να γραφεί
υποπρόγραμμα που να ζητάει και να εισάγει: στον πίνακα ΟΝ την ονομασία καθενός από τα 100
αντλιοστάσια, και στον πίνακα Τ[100, 24] την κατάσταση κάθε αντλιοστασίου (1 για λειτουργία, 0 για μη
λειτουργία) για κάθε μία ώρα της ημέρας (1-24).

7. Στον πίνακα Μ[100, 31] υπάρχουν καταχωρισμένες οι ποσότητες γάλακτος σε ml που παράγει κάθε μια από
τις 100 αγελάδες ενός αγροκτήματος, σε κάθε μία ημέρα του μήνα Μαρτίου. Να γραφεί συνάρτηση που θα
δέχεται τον πίνακα Μ και τον αριθμό X μιας ημέρας του μήνα Μαρτίου και θα επιστρέφει τη συνολική
ποσότητα γάλακτος που παράχθηκε από όλες τις αγελάδες του αγροκτήματος την ημέρα X.

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

8. Ο ουρανοξύστης «ΝΑΝΤΙΑ» στο κέντρο της Ν. Υόρκης περιέχει 100 γραφεία τα οποία είναι αριθμημένα
από το 1 έως το 100 και τα νοικιάζει ανά μήνα σε διάφορες εταιρείες. Ο αριθμός των υπαλλήλων που
απασχολείται στον ουρανοξύστη εξαρτάται από τον αριθμό των γραφείων που έχουν ενοικιαστεί ανά μήνα
σύμφωνα με τον παρακάτω πίνακα:

Το μηνιαίο μίσθωμα για κάθε γραφείο είναι 2000 € και ο μισθός του κάθε υπαλλήλου είναι 1200 €.

α. Να κατασκευάσετε κύριο πρόγραμμα το οποίο:


1. Να περιλαμβάνει τμήμα δηλώσεων
2. Να διαβάζει σε πίνακα ΜΙΣ[100,12] την κατάσταση κάθε γραφείου («Δ» ότι είναι διαθέσιμο και «Ε» ότι έχει
ενοικιαστεί) για κάθε μήνα του έτους 2010, ελέγχοντας την ορθή καταχώριση.
3. Να καλεί το υποπρόγραμμα ΧΡΗΜΑ του ερωτήματος Β, που με τη βοήθεια του να υπολογίζει και να
εμφανίζει το συνολικό κέρδος ή τη συνολική ζημία κατά τη διάρκεια του έτους ή το μήνυμα «ΣΗΜΕΙΟ ΜΗΔΕΝ», αν
δεν έχει ούτε κέρδος ούτε ζημιά.
β. Να αναπτύξετε το υποπρόγραμμα ΧΡΗΜΑ, το οποίο να δέχεται τον πίνακα ΜΙΣ και τον αριθμό ενός μήνα (από 1
έως 12) και να υπολογίζει και να επιστρέφει το κέρδος του συγκεκριμένου μήνα. Το κέρδος προκύπτει, αν από τα
μηνιαία έσοδα ενοικιάσεων αφαιρεθούν τα ημερομίσθια των υπαλλήλων που απασχολήθηκαν τον συγκεκριμένο
μήνα. Το κέρδος είναι αρνητικός αριθμός και αναφέρεται ως ζημία αν τα έσοδα είναι μικρότερα από τα ημερομίσθια.

9. Ένα σύστημα υπολογιστή χρησιμοποιεί για τον έλεγχο πρόσβασης των χρηστών του έναν πίνακα 1000
γραμμών και 3 στηλών με τα στοιχεία τους. Σε κάθε γραμμή του αποθηκεύει, στην πρώτη στήλη το όνομα
πρόσβασης του χρήστη, στη δεύτερη στήλη το συνθηματικό του και στην τρίτη έναν από τους χαρακτήρες
«Σ» ή «Α». (Ο χαρακτήρας «Σ» δηλώνει ότι το συνθηματικό συνεχίζει να ισχύει, ενώ ο χαρακτήρας «Α»
δηλώνει ότι το συνθηματικό πρέπει να αλλάξει).

Θεωρήστε ότι υπάρχει ένα κύριο πρόγραμμα που υλοποιεί τα παραπάνω και καλεί τη διαδικασία ΕΛΕΓΧΟΣ,
η οποία ελέγχει την πρόσβαση του χρήστη στο σύστημα.

Να γράψετε τη διαδικασία ΕΛΕΓΧΟΣ, η οποία να περιλαμβάνει:


α. Τμήμα δηλώσεων.

Κύριο τμήμα το οποίο:


β. Διαβάζει το όνομα και το συνθηματικό του χρήστη. Ελέγχει αν το όνομα πρόσβασης και το συνθηματικό
είναι έγκυρα, δηλαδή υπάρχουν στον πίνακα χρηστών και αναφέρονται στον ίδιο χρήστη. Αν υπάρχουν,
εμφάνιζε το μήνυμα «ΚΑΛΩΣ ΗΡΘΑΤΕ», διαφορετικά εμφανίζει το μήνυμα «ΛΑΘΟΣ ΟΝΟΜΑ
ΠΡΟΣΒΑΣΗΣ Ή ΣΥΝΘΗΜΑΤΙΚΟ» και ζητά εκ νέου την εισαγωγή των δύο αυτών στοιχείων (ονόματος
πρόσβασης και συνθηματικού) μέχρι να δοθούν έγκυρα στοιχεία,
γ. Μετά την εμφάνιση του μηνύματος «ΚΑΛΩΣ ΗΡΘΑΤΕ», ελέγχει αν το συνθηματικό χρειάζεται αλλαγή.
Αν χρειάζεται, ζητά από τον χρήστη την εισαγωγή νέου συνθηματικού δύο φορές (η δεύτερη ως
επιβεβαίωση) μέχρις ότου το συνθηματικό και η επιβεβαίωσή του ταυτιστούν. Όταν ταυτιστούν, η
διαδικασία αντικαθιστά το παλιό συνθηματικό με το νέο και τον αντίστοιχο χαρακτήρα «Α» της τρίτης
στήλης με το «Σ». (Επαναληπτικέ Ημ. 2010)

You might also like