# Wie weit sind die ersten beiden Zahlen (oder 2 andere, aufeinanderfolgende) in (alle) in der Liste (kesselzahlen) voneinander entfernt?
# folgender code gibt einwandfrei Antwort, funktioniert!
Code: Alles auswählen
kesselzahlen=[10,5,24,16,33,1,20,14,31,9,22,18,29,7,28,12,35,3,26,0,32,15,19,4,21,2,25,17,34,6,27,13,36,11,30,8,23]
alle=[4,33, 36, 3, 30, 17, 30, 13, 26, 6, 27, 13, 33, 0, 32, 31, 14, 20,34]
print("index 0 = ",kesselzahlen.index(alle[0])) # stimmt, die 4 kommt in kesselzahlen an 23.Stelle !
print("index 1 = ",kesselzahlen.index(alle[1])) # stimmt, die 33 hat in kesselzahlen den index 4 !
print()
wurfweiten=[]
if (kesselzahlen.index(alle[0])) > (kesselzahlen.index(alle[1])):
ww=((kesselzahlen.index(alle[0])) - (kesselzahlen.index(alle[1]))-1)
print("Wurfweite= ", ww ) # stimmt!! (die kesselzahlen werden im Uhrzeigersinn durchlaufen)
elif (kesselzahlen.index(alle[0])) == (kesselzahlen.index(alle[1])):
ww = 0
print("Wurfweite= ",ww)
else: # kesselzahlen.index(alle[0]) ist kleiner als kesselzahlen.index(alle[1])
ww = ((kesselzahlen.index(alle[1])) - (kesselzahlen.index(alle[0])))
print("Wurfweite= ",ww)
#2. code, funktioniert nicht
#was mit den ersten beiden Zahlen von (alle) funktioniert hat, müsste doch auch
#fortlaufend mit allen weiteren Paarungen gehen 4,33 / 33,36 / 36,3 usw.
Code: Alles auswählen
kesselzahlen=[10,5,24,16,33,1,20,14,31,9,22,18,29,7,28,12,35,3,26,0,32,15,19,4,21,2,25,17,34,6,27,13,36,11,30,8,23]
alle=[4,33, 36, 3, 30, 17, 30, 13, 26, 6, 27, 13, 33, 0, 32, 31, 14, 20,34]
wurfweiten=[]
# Versuch mit zip gibt wertepaare +1, ([1:]), könnte doch alle Paarungen von (alle) durchlaufen ?
for i, j in zip(alle, alle[1:]):
if (kesselzahlen.index(alle[i])) > (kesselzahlen.index(alle[j])): #IndexError: list index out of range !!!!!!!!!!!!!!!!!!!!!!
ww =((kesselzahlen.index(alle[i])) - (kesselzahlen.index(alle[j]))-1)
print("Wurfweite= ", ww)
wurfweiten.append(ww)
elif (kesselzahlen.index(alle[i])) == (kesselzahlen.index(alle[j])):
ww = 0
print("Wurfweite= ",ww)
wurfweiten.append(ww)
else:
ww = ((kesselzahlen.index(alle[j]))-(kesselzahlen.index(alle[i])))
print("Wurfweite= ",ww)
wurfweiten.append(ww)
print("alle Wurfweiten : ",wurfweiten)
# (kesselzahlen) stehen. warum macht die schlange das nicht auch fortlaufend? ich versteh die Fehlermeldung IndexError: list index out of range # # nicht
# welcher index ist ausserhalb welcher liste? da hab ich einfach Tomaten auf den Augen ...