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

Κεφ 3/9 : Δισδιάστατοι πίνακες - Ανάπτυξη αλγορίθμων

Ασκήσεις

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

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

3.  Στον τελικό του ακοντισμού στους Ολυμπιακούς αγώνες πήραν μέρος 16 αθλητές οι οποίοι έριξαν 6 βολές. Κάθε άκυρη βολή θεωρείται ίση με 0. Να αναπτύξετε αλγόριθμο ο οποίος :
α) διαβάζει τα ονόματα των 16 αθλητών και τις επιδόσεις τους στις 6 βολές  και αποθηκεύει τα στοιχεία σε πίνακες,
β) βρίσκει και εμφανίζει το όνομα και την επίδοση του νικητή. Θεωρείστε ότι υπάρχει ένας μόνο νικητής αθλητής.
γ) βρίσκει και εμφανίζει το πλήθος των άκυρων βολών όλων των αθλητών, 
δ) βρίσκει και τυπώνει τη μέση τιμή των επιδόσεων του 8ου αθλητή,
ε) βρίσκει και τυπώνει την καλύτερη επίδοση που σημειώθηκε στην 6η βολή.

4.  Δύο μαθητές παίζουν «Ναυμαχία». Ο ένας σημειώνει σε πίνακα 10x10 τις θέσεις των «πλοίων» με το γράμμα «Π» και ο άλλος σε πίνακα 10x10 τις θέσεις των ναρκών με το γράμμα «Ν». Να γράψετε αλγόριθμο ο οποίος εμφανίζει πόσα πλοία τοποθέτησε ο 1ος μαθητής και πόσες νάρκες ο 2ος και τέλος βρίσκει και εμφανίζει πόσα πλοία «χτυπήθηκαν» από νάρκη.

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

6.  Θεωρείστε ότι στον πίνακα Θ[15] υπάρχουν τα ονόματα των 15 θεάτρων μιας Ευρωπαικής πρωτεύουσας και στον δισδιάστατο Α[15,12] είναι αποθηκευμένα οι μηνιαίοι αριθμοί εισιτήριων κάθε θεάτρου για το έτος 2007.Να γράψετε αλγόριθμο ο οποίος :
α) βρίσκει το μήνα με το μικρότερο μηνιαίο αριθμό εισιτηρίων για κάθε θέατρο και εμφανίζει το όνομα του θεάτρου και το μήνα,
β) βρίσκει και εμφανίζει το πλήθος των θεάτρων που ο μήνας με τον ελάχιστο αριθμό εισιτηρίων ήταν ο 6ος, ο 7ος ή ο 8ος και
γ) βρίσκει και εμφανίζει το θέατρο με το μεγαλύτερο αριθμό εισιτηρίων για τον 10ο μήνα.

7.  Μια τάξη έχει 25 μαθητές οι οποίοι παρακολουθούν 16 μαθήματα. Να γράψετε αλγόριθμο οποίος :
α) εισάγει σε μονοδιάστατο πίνακα τα ονόματα των 16 μαθημάτων,
β) εισάγει σε δισδιάστατο πίνακα Β[25,16] το βαθμό κάθε μαθητή σε κάθε μάθημα,
γ) εμφανίζει το μάθημα ή τα μαθήματα στα οποία οι μαθητές έχουν την καλύτερη επίδοση, δηλαδή το μεγαλύτερο μέσο όρο και
δ) βρίσκει και εμφανίζει το μάθημα ή τα μαθήματα στα οποία πέφτουν κάτω από τη βάση οι περισσότεροι μαθητές.

8.  Μια εταιρία παροχής υπηρεσιών Internet (ISP) είχε το 2004, 250 συνδρομητές με γραμμή DSL. Η εταιρία αποφάσισε να προσφέρει στους συνδρομητές της έκπτωση στην ετήσια συνδρομή για το έτος 2005 ανάλογα με το συνολικό χρόνο χρήσης της γραμμής, σύμφωνα με τον παρακάτω πίνακα :

Συνολικός χρόνος σε ώρες Έκπτωση σε ?
Ως 350 15
351 ? 1400 30
Πάνω από 1401 55

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

9.  Ένας πίνακας λέγεται «στοχαστικός» αν το άθροισμα των στοιχείων κάθε γραμμής του είναι μονάδα. Να δοθεί αλγόριθμος ο οποίος ελέγχει αν ένας πίνακας Α ν*ν είναι «στοχαστικός» ή όχι και σε κάθε περίπτωση να εμφανίζει κατάλληλο μήνυμα. Θεωρείστε ότι τα στοιχεία του πίνακα Α είναι θετικοί πραγματικοί αριθμοί.

 Αλγόριθμος Στοχαστικός_πίνακας
   !Υπολογίζουμε το άθροισμα κάθε γραμμής
   Για Ι από 1 μέχρι ν
      Σ ? 0
      Για J από 1 μέχρι ν
           Σ ? Σ + Α[I,J]
      Τέλος_επανάληψης
 
     Π[I] ? Σ
   Τέλος_επανάληψης
 
  ! Ελέγχουμε αν όλα τα αθροίσματα = 1
   Στοχαστικός ? Αληθής
   Για Ι από 1 μέχρι ν
     Αν Π[I] <> 1 τότε
 
        Στοχαστικός ? Ψευδής
     Τέλος_αν
 
  Τέλος_επανάληψης
 
  Αν Στοχαστικός = Αληθής τότε
 
      Εμφάνισε  ?O πίνακας είναι στοχαστικός?
   Αλλιώς
 
      Εμφάνισε  ?O πίνακας δεν είναι στοχαστικός? 
   Τέλος_αν
Τέλος
Στοχαστικός_πίνακας

10.  Κατά τη διάρκεια μιας μελέτης για τις ελληνικές τουριστικές επιχειρήσεις, καταγράφηκαν οι μηνιαίες εισπράξεις 80 ξενοδοχείων, Α, Β και Γ κατηγορίας, σε διάφορες περιοχές της Ελλάδας, Να γράψετε πρόγραμμα σε «ΓΛΩΣΣΑ», το οποίο :
α) εισάγει σε μονοδιάστατους πίνακες τα ονόματα των ξενοδοχείων και την κατηγορία τους, ελέγχοντας την ορθή εισαγωγή της κατηγορίας (Α,Β ή Γ),
β) εισάγει σε δισδιάστατο πίνακα Ε, τις μηνιαίες εισπράξεις, ελέγχοντας τη σωστή καταχώρηση (αριθμοί ? 0),
γ) βρίσκει και τυπώνει το πλήθος των ξενοδοχείων της κατηγορίας Α, με μέση μηνιαία είσπραξη ? 15.000 ?,
δ) εμφανίζει τα ξενοδοχεία της κατηγορίας Β, με μέση μηνιαία είσπραξη ? 9.000 ? και
ε) εμφανίζει τον αριθμό κάθε μήνα και το πλήθος των ξενοδοχείων της κατηγορίας Γ, με μηνιαίες εισπράξεις ? 3.000 ?.

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

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

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

 

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

white_locked.png

On line

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

white_user.png

Επισκέπτες

2.png7.png6.png4.png4.png
Σήμερα6
Χθες19
Εβδομάδα40
Μήνας301
Συνολικά27644