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

2 Lösungen Lösungen öffentlich
#381

Binärzahlen ohne zwei aufeinanderfolgende Nullen

Anfänger - C# von hollst - 09.11.2020 um 15:10 Uhr
Erstelle eine Liste der ersten 1.000 Natürlichen Zahlen, die in ihrer binären Darstellung keine zwei aufeinanderfolgende Nullen haben.

Kleine Unterstützung zur Prüfung: Die ersten 10 Zahlen der Liste sind: 0, 1, 2, 3, 5, 6, 7, 10, 11 und 13. Das 1.000ste (letzte) Element der Liste ist 10.965.

Viel Spaß!
#1
vote_ok
von JKooP (18090 Punkte) - 15.04.2021 um 19:30 Uhr
NET 5.x; C# 9.x; VS-2019
Quellcode ausblenden C#-Code
using System;
using System.Linq;
using System.Text.RegularExpressions;

Enumerable.Range(1, 10_000).Where(x => !IsDoubleZero(I2B(x))).ToList().ForEach(x => Console.WriteLine($"{x} - {I2B(x)}"));
string I2B(int n) => Convert.ToString(n, 2);
bool IsDoubleZero(string s) => Regex.Matches(s, "(0)\\1*").Any(x => x.Length > 1);

Kommentare:

Für diese Lösung gibt es noch keinen Kommentar

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