Förädlad kod
Victors program med listor
# Listan kommer vara fylld med alla mandat i slutet av programet
Mandat = [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0];
# Röstetal för respektive partier som blev röstde på
Röstetal = [ 516119, 1822691, 284931, 555567, 354562, 1279192, 408061, 1130832 ];
# Delnings nummer
DelningsNummer = 6/5;
# Först delar man röstetalet med 1.2
RöstetalDelad = [x / (DelningsNummer) for x in Röstetal];
Iter = 0
while Iter < 349:
Iter += 1;
# Hitta det största talet
StörstaTalet = max(RöstetalDelad);
# Hitta vart det nummeret är i listan
Index = RöstetalDelad.index(StörstaTalet);
# Lägg till en mandat till det våran index
Mandat[Index] += 1;
# Nu måste vi dela röstetalet med antal mandat * 2 + 1
RöstetalDelad[Index] = Röstetal[Index] / (Mandat[Index] * 2 + 1);
# Jag vet inte varför men här så avrundar jag till 2 decimaler
RöstetalDelad = [float("{0:.2f}".format(x)) for x in RöstetalDelad];
# print(RöstetalDelad);
#
# Här skriver jag de mandater som vart fördelade
for Val in Mandat:
print("Mandat", Val);
#
print(Mandat);