Diskussion:Fördelning av mandat
Hoppa till navigering
Hoppa till sök
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);