public void ZapocniIzvlacenje() { nijePoceloIzvlacenje = false; int izvuceniBroj; for (int i = 0; i < 7; i++) { izvuceniBroj = new Random().Next(0, 60); izvuceniBrojevi.Add(izvuceniBroj); foreach (IObavestiCallback c in allCbs.Values) { c.NoviBroj(izvuceniBroj); } Thread.Sleep(1000); } Kombinacija izvucenaKombinacija = new Kombinacija(izvuceniBrojevi); foreach (var ucesnik in registrovano) { int pogodjeno = ucesnik.Value.Uporedi(izvucenaKombinacija); if (pogodjeno >= 5) { allCbs[ucesnik.Key].ObavestiPobednika(ucesnik.Key, pogodjeno); } } }
public int Uporedi(Kombinacija k) { int result = 0; foreach (int br in k.kombinacija) { result = this.kombinacija.Contains(br) ? result + 1 : result; } return(result); }
public bool DodajKombinaciju(string nadimak, Kombinacija kombinacija) { if (!allCbs.ContainsKey(nadimak)) { allCbs.Add(nadimak, callback); } if (nijePoceloIzvlacenje) { registrovano.Add(nadimak, kombinacija); return(true); } return(false); }