#1
17.04.2021 um 20:22 UhrMir ist doch ein Fehler unterlaufen. Hatte vergessen das Array zu transponieren.
Hier die richtige Lösung:
C#-Code
Hier die richtige Lösung:
using System;
using System.Collections.Generic;
using System.Linq;
Console.WriteLine(" B | I | N | G | O |");
Console.WriteLine(new string('-', 25));
foreach (var b in BingoLottery())
{
Console.WriteLine($" {b} |");
Console.WriteLine(new string('-', 25));
}
static IEnumerable<string> BingoLottery()
{
var lst = new List<List<int>>(Enumerable.Range(0, 5)
.Select(i => Enumerable.Range(i * 15 + 1, 15) // Zahlenreihe erstellen
.OrderBy(x => Guid.NewGuid()) // mischen
.Take(5).OrderBy(x => x).ToList())) // 5 ziehen
.SelectMany(inner => inner.Select((item, index) => new { item, index })).GroupBy(i => i.index, i => i.item).Select(x => x.ToList()); // transponieren
foreach (var b in lst)
yield return string.Join(" | ", b.Select(x => x.ToString("00"))); // als Textzeile zurückgeben
}
