Python :: Aufgabe #2 :: Lösung #4
10 Lösungen

#2
Zahlenfolge berechnen und fortsetzen
Anfänger - Python
von pocki
- 24.11.2012 um 19:50 Uhr
Es soll eine Zahlenfolge wiefolgt berechnet werden:
Die nacheinander folgenden gleichen Zahlen werden gezählt und zusammen mit der Zahl ausgegeben.
Aus der neu berechneten Zahlenfolge errechnet sich die nächste.
Beispiel:
1. Folge: 112
2. Folge: 2112 (2 Einser und 1 Zweier)
3. Folge: 122112 (1 Zweier, 2 Einser, und 1 Zweier)
usw.
Es soll nun mit dieser ersten Folge startend die 15. Folge berechnet und ausgegeben werden.
Wenn mehrstellige Zahlen vorkommen sind diese gleich auszugeben. Bsp: 12 Einser = 121
Die nacheinander folgenden gleichen Zahlen werden gezählt und zusammen mit der Zahl ausgegeben.
Aus der neu berechneten Zahlenfolge errechnet sich die nächste.
Beispiel:
1. Folge: 112
2. Folge: 2112 (2 Einser und 1 Zweier)
3. Folge: 122112 (1 Zweier, 2 Einser, und 1 Zweier)
usw.
Es soll nun mit dieser ersten Folge startend die 15. Folge berechnet und ausgegeben werden.
Wenn mehrstellige Zahlen vorkommen sind diese gleich auszugeben. Bsp: 12 Einser = 121
#4

von xy-no (250 Punkte)
- 03.11.2015 um 11:33 Uhr

folge = '112' folgenNr = 1 while folgenNr <= 15: #nur die 15. Folge ausgeben if folgenNr == 15: print str(folgenNr) + '. Folge:', folge folgenNr += 1 neueFolge = '' anzahl = 1 for i in range(len(folge)): if i+1 >= len(folge): neueFolge += str(anzahl) neueFolge += str(folge[i]) elif folge[i] == folge[i+1]: anzahl += 1 elif folge[i] != folge[i+1]: neueFolge += str(anzahl) neueFolge += str(folge[i]) anzahl = 1 folge = neueFolge
Ausgabe:
15. Folge: 1321132132211331121321232221121113122113121122132112311321322112111312211312113221133211322112211213322112
Kommentare:
Für diese Lösung gibt es noch keinen Kommentar
Seite 1 von 0
1