C# :: Aufgabe #12 :: Lösung #2
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
#2
von Mexx (2370 Punkte)
- 07.11.2014 um 15:46 Uhr
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
namespace Zahlenfolge
{
class Program
{
static string input;
static void Main(string[] args)
{
Console.WriteLine("Geben Sie die Anfangszahl ein:");
input = Console.ReadLine();
int zahl;
if (!int.TryParse(input, out zahl))
Console.WriteLine("Sie haben keine gültige Ganzzahl eingegeben");
else
{
for (int i = 0; i < 15; i++)
{
Berechnen(ref input);
Console.WriteLine(input);
}
}
Console.ReadKey();
}
private static void Berechnen(ref string zahl)
{
string tempZahl = zahl;
string temp = string.Empty;
int anzahl = 1;
for (int i = 0; i < tempZahl.Length; i++)
{
if (i < tempZahl.Length - 1)
{
if (tempZahl[i].ToString() == tempZahl[i + 1].ToString())
{
anzahl++;
continue;
}
}
temp += anzahl + tempZahl[i].ToString();
anzahl = 1;
}
zahl = temp;
}
}
}
Kommentare:
Für diese Lösung gibt es noch keinen Kommentar
Seite 1 von 0
1
