I har 5 dage (hele anden uge) til at lave følgende aflevering - den virker som en stopprøve, hvilket betyder at hvis I ikke aflevere til tiden og med en aflevering af en standart som er forventet, tager vi en samtale og der skal laves en genaflevering. I værste fald bliver man meldt at H1. Husk det er anden uge på forløbet, så forventningerne er ikke høje!
Til opgaven skal I bruge følgende GitHub Repository som I for udleveret af jeres underviser - https://github.com/Mercantech/Banko
Lav et program til at få en fordel i et spil banko - banko plader laves på følgende hjemmeside →

https://mercantech.github.io/Banko/
Flere plader giver større chance for at vinde i et spil banko - på hjemmesiden kan vi lave så mange plader som vi vil. Det er dog svært at holde styr på flere plader - derfor skal vores program give os en fordel i at vi kan holde øje med så mange plader som programmet kan håndtere.
Vi skal holde styr på hvornår vi har en plade med 1 række, 2 rækker og fuld plade. Der kan hurtigt komme problemer med vores kode, i forhold til at holde styr på de forskellige plader og dens rækker.
Derudover skal vi få lavet en metode til at få pladerne ind i vores program og holde styr på deres ID som blev skrevet ind på hjemmesiden.
Her ser vi pladen for “Banko” med stort B. Hvis man skriver “Banko” ind i feltet, er det altid denne plade som kommer! Derfor skal vi finde en måde at gemme strengen “Banko” sammen med pladen som man ser på billedet →
Hvis pladen her for banko, fx med tallene 12, 31, 40, 61 og 72, skal I kunne finde ud af hvad pladen som har banko hedder.

Bankopladerne følger reglerne her:
Dette kan måske hjælpe til at lave jeres algoritme. Vi spiller på 1. Række, 2. Række og fuld plade!
<aside> ☝🏼
Den her sektion er kun efter man selv har prøvet eller føler sig lidt fortabt! Man må altså ikke bruge den inden man har brugt 25% af tiden på opgaven!
</aside>
<aside> ☝🏼
Dette trin er først til når I har en fungerende version som virker på 5 hard coded plader!
</aside>
Banko handler om at generere og holde styr på så mange bankoplader som muligt fra en bestemt hjemmeside. Selenium kan hjælpe ved at:
Her er et simplificeret eksempel på, hvordan du kan bruge Selenium til denne opgave:
using OpenQA.Selenium;
using OpenQA.Selenium.Chrome;
class Program
{
static void Main(string[] args)
{
// Start browseren
IWebDriver driver = new ChromeDriver();
// Gå til hjemmesiden
driver.Navigate().GoToUrl("<https://mercantech.github.io/Banko/>");
// Find og klik på knappen for at generere en plade
IWebElement generateButton = driver.FindElement(By.Id("generateButtonId")); // Brug det faktiske ID
generateButton.Click();
// Vent på, at pladen bliver genereret
System.Threading.Thread.Sleep(2000); // En simpel måde at vente, brug evt. WebDriverWait for bedre kontrol
// Hent pladedata (fx rækker og ID)
IWebElement plateElement = driver.FindElement(By.CssSelector(".plateClass")); // Brug det faktiske CSS-selector
string plateData = plateElement.Text;
Console.WriteLine($"Plade data: {plateData}");
// Luk browseren
driver.Quit();
}
}
Som standart er jeres program kun rettet mod konsollen, dog hvis I når at blive hurtigt færdig kan I med fordel bygge en UI op jeres projekt. Det kan være I allerede har erfaring med et UI-framework inden for C#, såsom WPF, ellers vil jeg anbefale Blazor, da det er den vi skal bruge til jeres H1 projekt.
