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

3 Lösungen Lösungen öffentlich
#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ß
#1
vote_ok
von dson (640 Punkte) - 01.05.2021 um 10:29 Uhr
Quellcode ausblenden C#-Code
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

Bitte melden Sie sich an um eine Kommentar zu schreiben.
Kommentar schreiben