2η Διεθνική Συνάντηση μαθητών και καθηγητών στο Σαλέρνο της Ιταλίας
ΑΕΠΠ 2
1. ΑΕΠΠ ΤΕΣΤ
Να γράψετε αλγόριθμο οποίος θα εφαρμοστεί στο ταμείο ενός
πολυκαταστήματος και
Α) Για κάθε προϊόν που βρίσκεται στο καλάθι θα διαβάζει το όνομα του
προϊόντος και την τιμή του. Στην τιμή θα γίνεται έλεγχος ώστε να είναι θετικός
αριθμός.
Β) Θα τερματίζει ως όνομα δοθεί η τιμή ‘ΤΕΛΟΣ΄.
Γ) Θα τυπώνει τον μέσο όρο των τιμών των προϊόντων που αγοράστηκαν
Δ) Θα τυπώνει το όνομα του ακριβότερο προϊόντος καθώς και την τιμή του
Ε) Θα τυπώνει τα ονόματα καθώς και το πλήθος των προϊόντων που στοίχησαν
πάνω από 100Ε.
Υποθέστε πως όλα τα προϊόντα έχουν διαφορετική τιμή.
Ακολουθεί ενδεικτική λύση.
2. Βήμα 1 κατανόηση
Δεδομένα:
Μεταβλητά δεδομένα: όνομα (ον), τιμή (τ)
Τιμή φρουρός ‘ΤΕΛΟΣ’ στη μεταβλητή ον
Ζητούμενα:
Μέσος όρος τιμών (ΜΟ), Μέγιστη τιμή (max), Όνομα ακριβότερου προϊόντος (ονmax)
Ονόματα προϊόντων με τιμή >100Ε (ον), πλήθος προϊόντων με τιμή >100Ε (πλ100)
Παράδειγμα:
Προϊόν τιμή (E)
Camera 50
Computer 600
Printer 200
ΤΕΛΟΣ
ΜΟ=(50+600+200)/3 Μέγιστη τιμή=600Ε Ακριβότερο προϊόν->Computer
Πλήθος προϊόντων με τιμή >100Ε = 2 (Computer και Printer)
3. Βήμα 2 Ανάλυση
Υποπρόβλημα 1: Επαναληπτική δομή αγνώστου πλήθους επαναλήψεων, τερματίζει
με τιμή φρουρό τη λέξη ‘ΤΕΛΟΣ’ στο όνομα του προϊόντος.
Υποπρόβλημα 2: Εισαγωγή μεταβλητών δεδομένων και έλεγχος ορθότητας τιμής της
τ (τ>0)
Υποπρόβλημα 3: Εύρεση μέσου όρου-> Εύρεση αθροίσματος των τ , και εύρεση
πλήθους των τ. (πλ)
Υποπρόβλημα 4: Εύρεση μέγιστου τ και του αντίστοιχου ον.
Υποπρόβλημα 5: Εύρεση του πλήθους των τ>100 (πλ100) και των αντίστοιχων ον.
4. Βήμα 3 Επίλυση
Αλγόριθμος ταμείο
Διάβασε ον
Όσο ον<>’ΤΕΛΟΣ’ επανάλαβε
Διάβασε ον
Τέλος _επανάληψης
Τέλος ταμείο
Υποπρόβλημα 1: Επαναληπτική δομή
αγνώστου πλήθους επαναλήψεων, τερματίζει
με τιμή φρουρό τη λέξη ‘ΤΕΛΟΣ’ στο όνομα
του προϊόντος.
5. Βήμα 3 Επίλυση
Αλγόριθμος ταμείο
Διάβασε ον
Όσο ον<>’ΤΕΛΟΣ’ επανάλαβε
Αρχή_επανάληψης
Διάβασε τ
Μέχρις_ότου τ>0
Διάβασε ον
Τέλος _επανάληψης
Τέλος ταμείο
Υποπρόβλημα 2: Εισαγωγή μεταβλητών
δεδομένων και έλεγχος ορθότητας τιμής της τ
(τ>0)
6. Βήμα 3 Επίλυση
Αλγόριθμος ταμείο
πλ0
sum0
Διάβασε ον
Όσο ον<>’ΤΕΛΟΣ’ επανάλαβε
Αρχή_επανάληψης
Διάβασε τ
Μέχρις_ότου τ>0
sumsum+τ
πλπλ+1
Διάβασε ον
Τέλος _επανάληψης
Αν πλ>0 τότε
ΜΟsum/πλ
Εμφάνισε MO
αλλιώς
Εμφάνισε ‘ Δεν έγιναν αγορές’
Τέλος_Αν
Τέλος ταμείο
Κίνδυνος παραβίασης κριτηρίου
καθοριστικότητας:
στη περίπτωση που η πρώτη τιμή
του ον ήταν το ‘ΤΕΛΟΣ’ οπότε το
πλ παραμένει 0.
Υποπρόβλημα 3: Εύρεση μέσου όρου->
Εύρεση αθροίσματος των τ , και εύρεση
πλήθους των τ. (πλ)
7. Βήμα 3 Επίλυση
Αλγόριθμος ταμείο
max -9999
πλ0
sum0
Διάβασε ον
Όσο ον<>’ΤΕΛΟΣ’ επανάλαβε
Αρχή_επανάληψης
Διάβασε τ
Μέχρις_ότου τ>0
sumsum+τ
Αν τ>max τότε
maxτ
ονmaxον
Τέλος_Αν
πλπλ+1
Διάβασε ον
Τέλος _επανάληψης
Αν πλ>0 τότε
ΜΟsum/πλ
Εμφάνισε MO
Εμφάνισε max, ονmax
αλλιώς
Εμφάνισε ‘ Δεν έγιναν αγορές’
Τέλος_Αν
Τέλος ταμείο
Κίνδυνος παραβίασης κριτηρίου
καθοριστικότητας:
στη περίπτωση που η πρώτη τιμή
του ον ήταν το ‘ΤΕΛΟΣ’ οπότε το
πλ παραμένει 0.
Υποπρόβλημα 4: Εύρεση μέγιστου τ και του
αντίστοιχου ον.
8. Βήμα 3 ΕπίλυσηΑλγόριθμος ταμείο
max -9999
πλ0
sum0
πλ1000
Διάβασε ον
Όσο ον<>’ΤΕΛΟΣ’ επανάλαβε
Αρχή_επανάληψης
Διάβασε τ
Μέχρις_ότου τ>0
sumsum+τ
Αν τ>max τότε
maxτ
ονmaxον
Τέλος_Αν
Αν τ>100 τότε
πλ100πλ100+1
Εμφάνισε ον
Τέλος_Αν
πλπλ+1
Διάβασε ον
Τέλος _επανάληψης
Αν πλ>0 τότε
ΜΟsum/πλ
Εμφάνισε MO
Εμφάνισε max, ονmax
Εμφάνισε πλ100
αλλιώς
Εμφάνισε ‘ Δεν έγιναν αγορές’
Τέλος_Αν
Τέλος ταμείο
Κίνδυνος παραβίασης κριτηρίου
καθοριστικότητας:
στη περίπτωση που η πρώτη τιμή
του ον ήταν το ‘ΤΕΛΟΣ’ οπότε το
πλ παραμένει 0.
Υποπρόβλημα 5: Εύρεση του πλήθους των
τ>100 (πλ100) και των αντίστοιχων ον.
9. Βήμα 4 Έλεγχος αλγορίθμου
Πλήθος
επαναλήψεων
τ ον πλ πλ100 max oνmax sum MO Οθόνη
Πριν την
επανάληψη
----- camera 0 0 -9999 ------ ----- ------ ------
1η 50 computer 1 0 50 camera ----- ------ ------
2η 600 printer 2 1 600 computer ----- ------
-
computer
3η 200 ΤΕΛΟΣ 3 2 600 computer ----- ------
-
printer
Μετά την
επανάληψη
200 printer 3 2 600 computer 850 283,3 283,3
600
computer
2