Ανάπτυξη Εφαρμογών - Παράγραφοι μαθήματος

Κεφ 10 : Υποπρογράμματα - Ανάπτυξη αλγορίθμων

Ασκήσεις 

1.  Να γράψετε υποπρογράμματα για κάθε μια απο τις παρακάτω λειτουργίες :
  α. Να διαβάζει έναν αριθμό και να επιστρέφει το διπλάσιο και το τριπλάσιό του.
  β. Να διαβάζει 3 αριθμούς και να επιστρέφει το άθροισμά τους.
  γ. Να δέχεται έναν αριθμό και να ελέγχει αν είναι περιττός.
  δ. Να δέχεται 2 ακέραιους αριθμούς και να ελέγχει αν είναι ίσοι.
  ε. Να δέχεται έναν αριθμό και να επιστρέφει την απόλυτη τιμή του.
  στ. Να δέχεται ως παράμετρο έναν αριθμό και να ελέγχει αν μπορεί να αποτελεί αριθμό μήνα (1 ως 12),
  ζ. Να γράψετε υποπρόγραμμα που να δέχεται ως παράμετρο έναν πραγματικό αριθμό Χ και να τον στρογγυλοποιεί στον πλησιέστερο ακέραιο
  η. Να δέχεται ως παραμέτρους 2 ακέραιες μεταβλητές και να αντιμεταθέτει τις τιμές τους.
  θ. Να δέχεται ένα πίνακα ακεραίων Π με Ν στοιχεία (Ν ? 1000) και να εμφανίζει τα  στοιχεία του.
  ι. Να δέχεται έναν πίνακα Α με Ν ακεραίους αριθμούς (Ν ? 100) και ν? αυξάνει την τιμή κάθε στοιχείου του πίνακα κατά 1.
  ια. Να δέχεται ένα πίνακα ακεραίων με 100 στοιχεία και να υπολογίζει και να επιστρέφει το ελάχιστο στοιχείο.

2.  Να γράψετε :
  1) υποπρόγραμμα το οποίο να δέχεται 2 ακέραιους αριθμούς και να επιστρέφει το μεγαλύτερο,
  2) με τη βοήθεια του προηγούμενου υποπρογράμματος, να αναπτύξετε νέο, το οποίο  να δέχεται 3 ακέραιους αριθμούς και να επιστρέφει το  μεγαλύτερο.
  3) Τέλος, να αναπτύξετε πρόγραμμα το οποίο καλεί το προηγούμενο υποπρόγραμμα και βρίσκει και εμφανίζει το μεγαλύτερο από 100 τριάδες αριθμών τους οποίους διαβάζει.

3.  Μια εταιρεία ενοικίασης αυτοκινήτων ακολουθεί την παρακάτω τιμολογιακή πολιτική (κλιμακωτή χρέωση) :

  Ημέρες ενοικίασης Κόστος / Ημέρα
Χαμηλή περίοδος Μέχρι 15 30 ?
Από 16 και πάνω 20 ?
Υψηλή περίοδος Μέχρι 10 40 ?
Από 11 και πάνω 35 ?

Να αναπτύξετε πρόγραμμα το οποίο για 50 πελάτες :
α.  να διαβάζει την περίοδο ενοικίασης (Χ:Χαμηλή, Υ:Υψηλή) και  τις ημέρες (?0) καθενός, ελέγχοντας την ορθή εισαγωγή,
β. να υπολογίζει το κόστος ενοικίασης, με χρήση υποπρογράμματος, 
γ. να εμφανίζει την περίοδο ενοικίασης, τις ημέρες και το κόστος και
δ. να εμφανίζει το συνολικό κόστος όλων των πελατών.

4.  Ένας πωλητής προμηθεύει καταστήματα με ένα είδος Α. Κάθε μέρα προλαβαίνει να πάρει παραγγελία από δύο μόνο καταστήματα. Η προμήθεια που παίρνει σε μια παραγγελία υπολογίζεται κλιμακωτά σύμφωνα με τον πίνακα :

Αριθμός τεμαχίων Προμήθεια / τεμάχιο
Ως 50 2 ?
Από 51 ως 200 5 ?
Πάνω από 201 12 ?

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

5.  Θέλουμε να υπολογίσουμε το ελάχιστο στοιχείο 3 πινάκων Α, Β, Γ, οι οποίοι περιέχουν 100 ακέραιους αριθμούς.
α) Να γράψετε υποπρόγραμμα το οποίο να βρίσκει το ελάχιστο στοιχείο ενός πίνακα.
β) Να αναπτύξετε αλγόριθμο, με τη βοήθεια του παραπάνω υποπρογράμματος, το οποίο να βρίσκει και να εμφανίζει το ελάχιστο στοιχείο των πινάκων Α, Β, και Γ.

6.  Σε μια Ευρωπαϊκή χώρα κυκλοφορούν 8 περιοδικά που έχουν σχέση με την υγιεινή διατροφή. Να αναπτύξετε πρόγραμμα το οποίο :
α. εισάγει σε μονοδιάστατο πίνακα τα ονόματα των περιοδικών και σε δισδιάστατο πίνακα Κ[8,12] την μηνιαία κυκλοφορία (ακέραιος αριθμός)  κάθε περιοδικού για το 2008.
β. με τη βοήθεια υποπρογράμματος, βρίσκει και εκχωρεί σε μονοδιάστατο πίνακα την μέγιστη μηνιαία κυκλοφορία κάθε περιοδικού,
γ. με τη βοήθεια συνάρτησης, υπολογίζει το μέσο όρο των μέγιστων μηνιαίων κυκλοφοριών των περιοδικών και
δ. εμφανίζει τις ονομασίες των περιοδικών με μέγιστη μηνιαία κυκλοφορία μεγαλύτερη από το μέσο όρο.

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

Ετήσιο ποσό (σε ?) Επιδότηση (σε ?)
ως και 800 200
Από 801 ως και 2.000 400
Πάνω από 2.000 700

Να γράψετε πρόγραμμα σε «ΓΛΩΣΣΑ» το οποίο :
α) εισάγει σε μονοδιάστατο πίνακα τα ονόματα των συνδρομητών και σε δισδιάστατο τα μηνιαία ποσά χρέωσης,
β) με υποπρόγραμμα, αποθηκεύει σε μονοδιάστατο πίνακα το ετήσιο ποσό κάθε συνδρομητή
γ) με χρήση συνάρτησης που βρίσκει την επιδότηση ενός, βρίσκει την επιδότηση κάθε συνδρομητή και 
γ) τυπώνει τα ονόματα των συνδρομητών με επιδότηση 700 ?, ταξινομημένα αλφαβητικά.

8.  Να γράψετε πρόγραμμα σε ΓΛΩΣΣΑ το οποίο :
α. εισάγει σε μονοδιάστατο πίνακα τα ονόματα των 250 προϊόντων ενός καταστήματος τροφίμων και σε δισδιάστατο πίνακα Λ[250,3] την ημερομηνία λήξης καθενός στην μορφή ΗΜ-ΜΗ-ΕΤ,
β. ελέγχει με τη βοήθεια συνάρτησης αν ένα προϊόν έχει λήξη, σήμερα. Με τη βοήθεια της προηγούμενης συνάρτησης εμφανίζει τα ονόματα των προϊόντων που έχουν λήξει ή κατάλληλο μήνυμα αν δεν έχει λήξει κανένα.

9.  Σε ένα αεροδρόμιο αναμένονται 150 αφίξεις αεροσκαφών. Να γράψετε πρόγραμμα σε «ΓΛΩΣΣΑ» το οποίο :
α) εκχωρεί σε μονοδιάστατους πίνακες τους αριθμούς (πχ ΟΑ331) των πτήσεων και την προβλεπόμενη διάρκεια πτήσης,
β) με χρήση υποπρογράμματος, εκχωρεί σε δισδιάστατο πίνακα ΩΑ[150,2] την ώρα και τα λεπτά αναχώρησης ελέγχοντας την ορθότητα : ώρα 0 ως 23, λεπτά 0 ως 59,
γ) με χρήση υποπρογράμματος, εκχωρεί σε δισδιάστατο πίνακα ΩΦ[150,2] την ώρα και τα λεπτά άφιξης ελέγχοντας την ορθότητα : ώρα 0 ως 23, λεπτά 0 ως 59,
δ) να γράψετε υποπρόγραμμα το οποίο δέχεται τους πίνακες ΩΑ και ΩΦ και αποθηκεύει σε μονοδ. πίνακα Δ[150] τη διάρκεια κάθε πτήσης σε λεπτά.
ε) βρίσκει και τυπώνει τους αριθμούς πτήσεων που είχαν διάρκεια πτήσης μεγαλύτερη από την προβλεπόμενη διάρκεια.

10.  Μια εταιρεία ορθοπεδικών ειδών προωθεί τα προϊόντα της με πωλητές. Οι πωλητές αμοίβονται ανάλογα με το μηνιαίο ύψος πωλήσεων, κλιμακωτά, ως εξής :

Ύψος μηνιαίων πωλήσεων Ποσοστό αμοιβής
Ως 1000 ? 5 %
Από 1001 ως 4000 ? 10 %
Πάνω από 4000 ? 20 %

Να γράψετε αλγόριθμο ο οποίος :
α) διαβάζει τα ονόματα των 20 πωλητών,
β) με χρήση υποπρογράμματος διαβάζει τις μηνιαίες πωλήσεις τους για ένα έτος και εκχωρεί τα στοιχεία στον πίνακα Π[20,12], ελέγχοντας ώστε κάθε ένα να είναι αριθμός ? 0,
γ) με υποπρόγραμμα που δέχεται τον πίνακα Π, τον πωλητή και τον μήνα υπολογίζει την μηνιαία αμοιβή του και στη συνέχεια την ετήσια αμοιβή, την οποία αποθηκεύει σε μονοδιάστατο πίνακα,
δ) με τη βοήθεια του προηγούμενου υποπρογράμματος, εμφανίζει τον μήνα ή τους μήνες που η εταιρεία πλήρωσε τα λιγότερα χρήματα ως ποσοστά αμοιβής.

| Εκτύπωση | Ηλεκτρονικό ταχυδρομείο

white_locked.png

On line

Αυτήν τη στιγμή επισκέπτονται τον ιστότοπό μας 3 επισκέπτες και κανένα μέλος

white_user.png

Επισκέπτες

2.png7.png7.png0.png9.png
Σήμερα32
Χθες19
Εβδομάδα105
Μήνας366
Συνολικά27709