rapidbounce Presentation in Greek: "Python For Beginners"rapidbounce
Are you new to programming or interested to learn more about Python? Python is free and easy to learn if you know where to start and this presentation in Greek by George Bakalis is all about it!
rapidbounce Presentation in Greek: "Python For Beginners"rapidbounce
Are you new to programming or interested to learn more about Python? Python is free and easy to learn if you know where to start and this presentation in Greek by George Bakalis is all about it!
1. ΑΕΠΠ ΤΕΣΤ
Μια πιστωτική κάρτα έχει όριο αγορών 1000Ε. Να γράψετε αλγόριθμο οποίος:
Α) Για κάθε αγορά θα διαβάζει το όνομα του προϊόντος και την τιμή του. Στην
τιμή θα γίνεται έλεγχος ώστε να είναι θετικός αριθμός.
Β) Θα τερματίζει όταν το υπόλοιπο δεν επαρκεί για την επόμενη αγορά.
Γ) Θα τυπώνει τον μέσο όρο των τιμών των προϊόντων που αγοράστηκαν
Δ) Θα τυπώνει το όνομα του ακριβότερο προϊόντος καθώς και την τιμή του
Ε) Θα τυπώνει τα ονόματα καθώς και το πλήθος των προϊόντων που στοίχησαν
πάνω από 100Ε.
Υποθέστε πως όλα τα προϊόντα έχουν διαφορετική τιμή.
Ακολουθεί ενδεικτική λύση.
2. Βήμα 1 κατανόηση
Δεδομένα:
Σταθερά δεδομένα: όριο ποσού 1000Ε
Μεταβλητά δεδομένα: όνομα (ον), τιμή (τ)
Ζητούμενα:
Μέσος όρος τιμών (ΜΟ), Μέγιστη τιμή (maxτ), Όνομα ακριβότερου προϊόντος (ονmax)
Ονόματα προϊόντων με τιμή >100Ε (ον), πλήθος προϊόντων με τιμή >100Ε (πλ100)
Παράδειγμα:
Προϊόν τιμή (E) Υπόλοιπο
Camera 50 950
Computer 600 350
Printer 200 150
TV 400 δεν μπορεί να γίνει η αγορά
ΜΟ=(50+600+200)/3 Μέγιστη τιμή=600Ε Ακριβότερο προϊόν->Computer
Πλήθος προϊόντων με τιμή >100Ε = 2 (Computer και Printer)
3. Βήμα 2 Ανάλυση
Υποπρόβλημα 1: Επαναληπτική δομή αγνώστου πλήθους επαναλήψεων, τερματίζει
πριν το άθροισμα ξεπεράσει το 1000 ή όσο το υπόλοιπο επαρκεί για την επόμενη
αγορά.
Υποπρόβλημα 2: Εισαγωγή μεταβλητών δεδομένων και έλεγχος ορθότητας τιμής της
τ (τ>0)
Υποπρόβλημα 3: Εύρεση μέσου όρου-> Εύρεση αθροίσματος των τ , και εύρεση
πλήθους των τ. (πλ)
Υποπρόβλημα 4: Εύρεση μέγιστου τ και του αντίστοιχου ον.
Υποπρόβλημα 5: Εύρεση του πλήθους των τ>100 (πλ100) και των αντίστοιχων ον.
4. Βήμα 3 ΕπίλυσηΑλγόριθμος πιστωτική
Υ1000
Διάβασε τ
Όσο Υ>=τ επανάλαβε
ΥΥ-τ
Διάβασε τ
Τέλος _επανάληψης
Τέλος πιστωτική
Υποπρόβλημα 1: Επαναληπτική δομή
αγνώστου πλήθους επαναλήψεων, τερματίζει
πριν το άθροισμα ξεπεράσει το 1000 ή όσο το
υπόλοιπο επαρκεί για την επόμενη αγορά.
5. Βήμα 3 ΕπίλυσηΑλγόριθμος πιστωτική
Υ1000
Αρχή_επανάληψης
Διάβασε τ
Μέχρις_ότου τ>0
Όσο Υ>=τ επανάλαβε
ΥΥ-τ
Διάβασε ον
Αρχή_επανάληψης
Διάβασε τ
Μέχρις_ότου τ>0
Τέλος _επανάληψης
Τέλος πιστωτική
Υποπρόβλημα 2: Εισαγωγή μεταβλητών
δεδομένων και έλεγχος ορθότητας τιμής της τ
(τ>0)
6. Βήμα 3 ΕπίλυσηΑλγόριθμος πιστωτική
Υ1000
Αρχή_επανάληψης
Διάβασε τ
Μέχρις_ότου τ>0
πλ0
Όσο Υ>=τ επανάλαβε
ΥΥ-τ
Διάβασε ον
Αρχή_επανάληψης
Διάβασε τ
Μέχρις_ότου τ>0
πλπλ+1
Τέλος _επανάληψης
Sum1000-Y
Αν πλ>0 τότε
ΜΟsum/πλ
Εμφάνισε MO
αλλιώς
Εμφάνισε ‘ Δεν έγιναν αγορές’
Τέλος_Αν
Τέλος πιστωτική
Κίνδυνος παραβίασης κριτηρίου
καθοριστικότητας:
στη περίπτωση που η πρώτη τιμή
του τ ήταν > 1000 οπότε το πλ
παραμένει 0.
Υποπρόβλημα 3: Εύρεση μέσου όρου->
Εύρεση αθροίσματος των τ , και εύρεση
πλήθους των τ. (πλ)
7. Βήμα 3 ΕπίλυσηΑλγόριθμος πιστωτική
Υ1000
max -9999
Αρχή_επανάληψης
Διάβασε τ
Μέχρις_ότου τ>0
πλ0
Όσο Υ>=τ επανάλαβε
ΥΥ-τ
Διάβασε ον
Αν τ>max τότε
maxτ
ονmaxον
Τέλος_Αν
Αρχή_επανάληψης
Διάβασε τ
Μέχρις_ότου τ>0
πλπλ+1
Τέλος _επανάληψης
Sum1000-Y
Αν πλ>0 τότε
ΜΟsum/πλ
Εμφάνισε MO
Εμφάνισε max, ονmax
αλλιώς
Εμφάνισε ‘ Δεν έγιναν αγορές’
Τέλος_Αν
Τέλος πιστωτική
Κίνδυνος παραβίασης κριτηρίου
καθοριστικότητας:
στη περίπτωση που η πρώτη τιμή
του τ ήταν > 1000 οπότε το πλ
παραμένει 0.
Υποπρόβλημα 4: Εύρεση μέγιστου τ και του
αντίστοιχου ον.
8. Βήμα 3 ΕπίλυσηΑλγόριθμος πιστωτική
Υ1000
max -9999
Αρχή_επανάληψης
Διάβασε τ
Μέχρις_ότου τ>0
πλ0
πλ1000
Όσο Υ>=τ επανάλαβε
ΥΥ-τ
Διάβασε ον
Αν τ>max τότε
maxτ
ονmaxον
Τέλος_Αν
Αν τ>100 τότε
πλ100πλ100+1
Εμφάνισε ον
Τέλος_Αν
Αρχή_επανάληψης
Διάβασε τ
Μέχρις_ότου τ>0
πλπλ+1
Τέλος _επανάληψης
Sum1000-Y
Αν πλ>0 τότε
ΜΟsum/πλ
Εμφάνισε MO
Εμφάνισε max, ονmax
Εμφάνισε πλ100
αλλιώς
Εμφάνισε ‘ Δεν έγιναν αγορές’
Τέλος_Αν
Τέλος πιστωτική
Κίνδυνος παραβίασης κριτηρίου
καθοριστικότητας:
στη περίπτωση που η πρώτη τιμή
του τ ήταν > 1000 οπότε το πλ
παραμένει 0.
Υποπρόβλημα 5: Εύρεση του πλήθους των
τ>100 (πλ100) και των αντίστοιχων ον.
9. Βήμα 4 Έλεγχος αλγορίθμου
Πλήθος
επαναλήψεων
Υ τ ον πλ πλ100 max oνmax sum MO Οθόνη
Πριν την
επανάληψη
1000 50 -------- 0 0 -9999 ------ ----- ------ ------
1η 950 600 camera 1 0 50 camera ----- ------ ------
2η 350 200 computer 2 1 600 computer ----- ------
-
computer
3η 150 400 printer 3 2 600 computer ----- ------
-
printer
Μετά την
επανάληψη
150 400 printer 3 2 600 computer 850 283,3 283,3
600
computer
2