'''
ΘΕΜΑ Δ, 2017
Μια εταιρεία κατασκευής υπολογιστών παράγει 20 διαφορετικά
μοντέλα υπολογιστών.
Να γράψετε πρόγραμμα σε γλώσσα προγραμματισμού Python το
οποίο να πραγματοποιεί τα παρακάτω:
Δ1. Να διαβάζει για κάθε μοντέλο το όνομά του και το πλήθος των
πωλήσεών του κατά το προηγούμενο έτος. Τα στοιχεία αυτά
καταχωρίζονται στις λίστες με ονόματα MODELO και
POLISEIS αντίστοιχα.
Δ2. Να υπολογίζει και να εμφανίζει το σύνολο των πωλήσεων όλων
των μοντέλων της εταιρείας για το προηγούμενο έτος.
Δ3. Να ταξινομεί με χρήση του αλγόριθμου ταξινόμησης της ευθείας
ανταλλαγής (φυσαλίδα-bubble sort) τις δύο λίστες σε φθίνουσα
σειρά ως προς το πλήθος των πωλήσεων.
Δ4. Να δέχεται το όνομα ενός μοντέλου από το πληκτρολόγιο, να
εντοπίζει τις πωλήσεις του και να εμφανίζει το όνομα και το
πλήθος των πωλήσεών του. Στη συνέχεια να εμφανίζει τα
ονόματα και τις πωλήσεις όλων των μοντέλων που οι πωλήσεις
τους είναι μεγαλύτερες ή ίσες από τις πωλήσεις του παραπάνω
μοντέλου. Η εμφάνιση να γίνεται σε αύξουσα σειρά ως προς τις
πωλήσεις.
'''
# Εισαγωγή δεδομένων
model = []
sales = []
for i in range(20):
model.append(raw_input("Give model name = "))
sales.append(input("Give number of sales = "))
# Σύνολο πωλήσεων
ssum = 0
for i in range(20):
ssum += sales[i]
print "Total sales = ", ssum
# Ταξινόμηση ως προς το πλήθος των πωλήσεων
for i in range(19):
for j in range(19,i,-1):
if sales[j] > sales[j-1]:
sales[j], sales[j-1] = sales[j-1], sales[j]
model[j], model[j-1] = model[j-1], model[j]
# Εμφάνιση πωλήσεων μοντέλου
name = raw_input("Give a model name to find = ")
for i in range(20):
if model[i] == name:
print model[i], sales[i]
sfound = sales[i]
# Διαφοροποίηση λύσεως
# Εμφάνιση πωλήσεων πάνω από αυτές του προηγούμενου μοντέλου
for i in range(20):
if sfound == sales[i]:
ifound = i #εύρεση της τελευταίας θέσης που εμφανίζ. οι συγκεκριμένες πωλήσεις
# εμφάνιση όλων των μοντέλων με μεγαλύτερες πωλήσεις από το μοντελο name
for i in range(ifound, -1, -1):
if model[i] != name:
print model[i], sales[i]