Ich bekomme das ja hin, was ich vorhabe, aber das geht bestimmt viel,
viel eleganter (aber bin noch Newbie).
---
Oje, bis ich das erklärt habe, habe ich hier bestimmt einen halben
Roman geschrieben, also schonmal -Sorry- vorab.
O.K. Ich habe eine 11-stellige Zahlenfolge, wo ich eine "Prüfziffer"
berechnen will (12. Stelle).
Diese Prüfziffer berechnet sich nach Modulo-10 / Basis 3 1 3 1 ...
Bsp.: die Zahl 12345678901p
1 * 3 = 3
2 * 1 = 2
3 * 3 = 9
4 * 1 = 4
5 * 3 = 15
6 * 1 = 6
7 * 3 = 21
8 * 1 = 8
9 * 3 = 27
0 * 1 = 0
1 * 3 = 3
-----
Summe: 98 / nächste Zehnerstelle = 100 / Prüfziffer (Differenz) = 2
Ich bin dann so daran gegangen (Newbie):
Code: Alles auswählen
print "Bitte Zahl eingeben:"
eingabe = raw_input()
t1 = eingabe[0]
t2 = eingabe[1]
t3 = eingabe[2]
t4 = eingabe[3]
t5 = eingabe[4]
t6 = eingabe[5]
t7 = eingabe[6]
t8 = eingabe[7]
t9 = eingabe[8]
t10 = eingabe[9]
t11 = eingabe[10]
t1 = int(t1)
t2 = int(t2)
t3 = int(t3)
t4 = int(t4)
t5 = int(t5)
t6 = int(t6)
t7 = int(t7)
t8 = int(t8)
t9 = int(t9)
t10 = int(t10)
t11 = int(t11)
zwi = t1*3 + t2*1 + t3*3 + t4*1 + t5*3 + t6*1 + t7*3 + t8*1 +t9*3 + t10*1 + t11*3
print zwi
zwi = str(zwi)
erg = zwi[-1]
erg = int(erg)
ziffer = 10 - erg
print "Die Zahl lautete:" ,eingabe
print "Die Pruefziffer lautet:" ,ziffer
Ihr seht, wie ich da am rumkrampfen bin mit str > int > str deswegen mein 2. Posting ...
Puuuh ...