ΘΕΜΑ Γ
Σε ένα κεντρικό ΚΤΕΟ προσέρχονται για τεχνικό έλεγχο τριών
τύπων οχήματα: Φορτηγά, Επιβατικά και Μοτοσυκλέτες.
Οι τακτικοί πελάτες μπορούν να γίνουν μέλη του ΚΤΕΟ και
να έχουν έκπτωση στο κόστος ελέγχου.
Το κόστος ελέγχου υπολογίζεται σύμφωνα με τον παρακάτω πίνακα:
Τύπος οχήματος
|
Μέλη ΚΤΕΟ
|
Μη Μέλη ΚΤΕΟ
|
Φορτηγά
|
70 ευρώ
|
80 ευρώ
|
Επιβατικά
|
40 ευρώ
|
50 ευρώ
|
Μοτοσυκλέτες
|
25 ευρώ
|
30 ευρώ
|
Να γράψετε πρόγραμμα σε γλώσσα προγραμματισμού Python, το
οποίο, για μία συγκεκριμένη ημέρα:
Γ1.
Να διαβάζει τον τύπο του οχήματος για κάθε όχημα που προσέρχεται καθώς και αν ο
πελάτης είναι μέλος του ΚΤΕΟ ή όχι. Η διαδικασία αυτή τερματίζεται όταν δοθεί
ως τύπος οχήματος η λέξη «TELOS».
(Για Φορτηγό θα
διαβάζει το «F», για Επιβατικό το «E» και για Μοτοσυκλέτα το «M». Δεν
απαιτείται έλεγχος εγκυρότητας
εισαγωγής των δεδομένων.)
Μονάδες
6
Γ2.
Να υπολογίζει το πλήθος και τις εισπράξεις του ΚΤΕΟ για κάθε τύπο οχήματος και
να τα εμφανίζει με κατάλληλα μηνύματα. Για παράδειγμα:
Φορτηγά 10 750
ευρώ
Επιβατικά 20 900
ευρώ
Μοτοσυκλέτες 10
295 ευρώ
(Οι παραπάνω τιμές, όπως και ο τρόπος εμφάνισης-στοίχισης
δίνονται ενδεικτικά.)
Μονάδες
9
Γ3.
Να υπολογίζει και να εμφανίζει το πλήθος όλων των οχημάτων καθώς και το
συνολικό ποσό είσπραξης του ΚΤΕΟ.
Μονάδες
6
Γ4.
Να υπολογίζει και να εμφανίζει με κατάλληλο μήνυμα τον αριθμό των μελών του
ΚΤΕΟ και των μη μελών που προσήλθαν για τεχνικό έλεγχο την συγκεκριμένη ημέρα.
Μονάδες
4
ΕΝΔΕΙΚΤΙΚΗ ΛΥΣΗ
count_f=0 #μετρητής φορτηγών
count_e=0 #μετρητής επιβατικών
count_m=0 #μετρητής μοτοσυκλετών
money_f=0 #εισπράξεις από φορτηγά
money_e=0 #εισπράξεις από επιβατικά
money_m=0 #εισπράξεις από μοτοσυκλέτες
notmember=0 #μη μέλη
member=0 #μέλη
type_v=' ' #αρχικοποίηση για τύπο οχήματος
while type_v!='TELOS': #όσο δεν τυπώνεται TELOS
type_v = raw_input('Ποιός είναι ο τύπος του οχήματος;Δώσε F για Φορτηγό, Ε για Επιβατικό και Μ για Μοτοσυκλέτα.')
if type_v!='TELOS': #στην περίπτωση όπου πληκτρολογείται TELOS, παύει ο έλεγχος μέλους
ismember = raw_input('Είναι ο πελάτης μέλος; N για ΝΑΙ ή O για ΌΧΙ')
if ismember == 'N':
member+=1
if type_v=='F':
count_f+=1
money_f+=70
elif type_v=='E':
count_e+=1
money_e+=40
elif type_v=='M':
count_m+=1
money_m+=25
elif ismember == 'O':
notmember+=1
if type_v=='F':
count_f+=1
money_f+=80
elif type_v=='E':
count_e+=1
money_e+=50
elif type_v=='M':
count_m+=1
money_m+=30
#------------------ΕΚΤΥΠΩΣΕΙΣ-----------------------
print('Φορτηγά',count_f,money_f,'ευρώ')
print('Επιβατικά',count_e,money_e,'ευρώ')
print('Μοτοσυκλέτες',count_m,money_m,'ευρώ')
print('Συνολικό πλήθος οχημάτων:',count_f+count_e+count_m,'Συνολικό ποσό είσπραξης:',money_f+money_e+money_m)
print('Μέλη που προσήλθαν:',member)
print('Μη μέλη που προσήλθαν:',notmember)
ΘΕΜΑ
Δ
Σε μια Ολυμπιάδα Πληροφορικής
συμμετέχουν πενήντα (50) μαθητές. Κάθε μαθητής που συμμετέχει λαμβάνει μια
τελική βαθμολογία από 1 έως και 100 ακέραιες μονάδες.
Να γράψετε πρόγραμμα σε γλώσσα
προγραμματισμού Python, το οποίο:
Δ1.
Να διαβάζει το ονοματεπώνυμο κάθε μαθητή και τη βαθμολογία που έλαβε. Τα
στοιχεία αυτά καταχωρίζονται
στις λίστες NAME και VATHMOS αντίστοιχα. Να γίνει έλεγχος ορθότητας ότι δηλαδή η βαθμολογία που καταχωρίζεται είναι από 1 έως και 100.
στις λίστες NAME και VATHMOS αντίστοιχα. Να γίνει έλεγχος ορθότητας ότι δηλαδή η βαθμολογία που καταχωρίζεται είναι από 1 έως και 100.
Μονάδες
9
Δ2.
Να υπολογίζει και να εμφανίζει τον μέσο όρο (ΜΟ) της βαθμολογίας όλων των
μαθητών.
Μονάδες
5
Δ3.
Να εντοπίζει και να εμφανίζει τα ονοματεπώνυμα και τη βαθμολογία όλων των
μαθητών των οποίων η τελική βαθμολογία είναι μεγαλύτερη ή ίση από τον μέσο όρο
(ΜΟ).
Μονάδες
4
Δ4.
Να εντοπίζει και να εμφανίζει με κατάλληλο μήνυμα την υψηλότερη βαθμολογία και
τα ονοματεπώνυμα των μαθητών που έχουν αυτή τη βαθμολογία.
Μονάδες
7
ΕΝΔΕΙΚΤΙΚΗ ΛΥΣΗ
name=[]
vathmos=[]
sum=0
for i in range (0,50):
name.append(raw_input('Ονοματεπώνυμο'))
vathmos.append(int(input('Βαθμολογία')))
while vathmos[i]>100 or vathmos[i]<1:
vathmos[i]=input('Απαράδεκτη τιμή. Επανάλαβε εισαγωγή βαθμολογίας.')
sum=sum+vathmos[i]
mo=sum/50
print('Ο μέσος όρος είναι:',mo)
max=vathmos[0]
for i in range (0, 50):
for i in range (0, 50):
if vathmos[i]>=mo:
print('Η βαθμολογία του/της ',name[i],' είναι μεγαλύτερη του μέσου όρου')
if vathmos[i]>=max:
max=vathmos[i]
print('Η μέγιστη βαθμολογία που σημειώθηκε είναι:',max)
for i in range(0, 50):
if vathmos[i]==max:
print('Ο/Η μαθητής/τρια',name[i],'έχει τη μεγαλύτερη βαθμολογία')
Δεν υπάρχουν σχόλια:
Δημοσίευση σχολίου