Python :: Aufgabe #2 :: Lösung #7
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
#7

von PythonIT (240 Punkte)
- 19.08.2017 um 16:55 Uhr

# zahlenfolge.py def naechsteFolge(folge): vergleich = "0" gleiche = 0 folge2 = "" for c in str(folge): if c == vergleich: gleiche += 1 else: if gleiche != 0: folge2 = folge2 + str(gleiche) + str(vergleich) gleiche = 1 vergleich = c folge2 = folge2 + str(gleiche) + str(vergleich) return folge2 folge1 = str(input("Startfolge: ")) laenge = int(input("Länge der Folge: ")) for i in range(laenge): folge2 = naechsteFolge(folge1) print(str(i+1) + ".Folge: " + folge1) folge1 = folge2
Ich habe mir die anderen Lösungen noch nicht angesehen, aber ich hoffe, dass ich nicht das Gleiche habe
Kommentare:
Für diese Lösung gibt es noch keinen Kommentar
Seite 1 von 0
1