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
