C# :: Aufgabe #12 :: Lösung #5
8 Lösungen

#12
Zahlenfolge berechnen und fortsetzen
Anfänger - C#
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
#5

von niknik (1230 Punkte)
- 06.08.2015 um 14:23 Uhr

using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Threading.Tasks; namespace ConsoleApplication4 { class Program { public static string BerechneIteration(string s) { int anzahl = 1; string returnString = ""; for (int i = 0; i < s.Length; i++) { if (i < (s.Length - 1)) { if (s[i] == s[i + 1]) { anzahl++; continue; } else { returnString += ("" + anzahl + s[i]); anzahl = 1; continue; } } else { returnString += ("" + anzahl + s[i]); } } return returnString; } static void Main(string[] args) { Console.WriteLine("Geben sie eine ganze Zahl ein: "); string eingabe = Console.ReadLine(); long number; while (!long.TryParse(eingabe, out number)) { Console.Clear(); Console.WriteLine("Die Eingabe ist ungültig. Versuche erneut: "); eingabe = Console.ReadLine(); } string ausgabe = eingabe; for (int i = 0; i < 15; i++) { ausgabe = BerechneIteration(ausgabe); Console.WriteLine((i+1) + ". Iteration: " + ausgabe); } Console.ReadLine(); } } }
Kommentare:
Für diese Lösung gibt es noch keinen Kommentar
Seite 1 von 0
1