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

von PythonLui (400 Punkte)
- 06.04.2021 um 17:06 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 # Ausgangsfolge x = "112" wiederholungen = 1 zeichenfolge = list(x) print(f"1. Folge: ", "".join(zeichenfolge)) while wiederholungen < 15: # Alle Werte zurücksetzten auf Anfang folge = [] index = 0 zeichen_platzhalter = zeichenfolge[0] # Folge durchlaufen und neue erstellen for zeichen in zeichenfolge: if zeichen_platzhalter != zeichen: folge.append(str(index)) folge.append(zeichen_platzhalter) index = 0 zeichen_platzhalter = zeichen index += 1 # Letzte Zählung an aktuelle Folge hängen folge.append(str(index)) folge.append(zeichen_platzhalter) zeichenfolge = folge wiederholungen += 1 # Ausgabe aktueller Folge print(f"{wiederholungen}. Folge: ", "".join(folge))
Kommentare:
Für diese Lösung gibt es noch keinen Kommentar
Seite 1 von 0
1