C# :: Aufgabe #392 :: Lösung #1
3 Lösungen

#392
Binärzahl enthält maximal eine Folge von Einsen
Anfänger - C#
von JKooP
- 23.04.2021 um 15:37 Uhr
Eine als String (Text) dargestellte Binärzahl (0 und 1) soll dahingehend geprüft werden,
ob sie maximal eine Folge von Einsen enthält. Die Länge der Folge ist beliebig.
Dabei kann die Binärzahl auch vorangestellte Nullen enthalten.
Beispiele:
b = "1100"
Lösung: wahr => 1100 (1 Folge)
b = "1010"
Lösung: falsch => 1010 (2 Folgen)
b = "00111000"
Lösung: wahr => 00111000 (1 Folge)
b = "10000001"
Lösung: falsch => 10000001 (2 Folgen)
Schreibe eine Methode/Funktion, die für obige Aufgabenstellung als Ergebnis true/false liefert.
Viel Spaß
ob sie maximal eine Folge von Einsen enthält. Die Länge der Folge ist beliebig.
Dabei kann die Binärzahl auch vorangestellte Nullen enthalten.
Beispiele:
b = "1100"
Lösung: wahr => 1100 (1 Folge)
b = "1010"
Lösung: falsch => 1010 (2 Folgen)
b = "00111000"
Lösung: wahr => 00111000 (1 Folge)
b = "10000001"
Lösung: falsch => 10000001 (2 Folgen)
Schreibe eine Methode/Funktion, die für obige Aufgabenstellung als Ergebnis true/false liefert.
Viel Spaß
#1

von dson (640 Punkte)
- 01.05.2021 um 10:29 Uhr

using System; using System.Collections.Generic; namespace folge_von_einsen_in_string { class Program { static void Main(string[] args) { string b = "01010"; //7 einserfolgen char a = '0'; int zeichenfolge = 0; char[] werte = b.ToCharArray(); //Prüft jedes Item in werte, ob es sich um die Zahl1 handelt, //wenn die Vorgänger zahl allerdings auch eine 1 war, gilt dies nicht als neue Zeichenfolge foreach (var item in werte) { if (item == '1' && item != a) { zeichenfolge++; } a = item; } //Da maximal eine Zeichenfolge enthalten seinen darf, wird dies hier überprüft und ausgegeben if (zeichenfolge <= 1) { Console.WriteLine("Wahr, Maximale Zeichenfolge: {0}", zeichenfolge); } else { Console.WriteLine("Falsch, Maximale Zeichenfolge: {0}", zeichenfolge); } } } }
Kommentare:
Für diese Lösung gibt es noch keinen Kommentar
Seite 1 von 0
1