90 likes | 177 Views
Egy feladat megoldásának gondolatmenete. Feladat:. Generáljuk véletlen számokat 1 és 6 között, amíg legalább 10 darab egyes és 10 darab hatos nem lesz. Sok számot generálunk, ezért kell egy ciklus.
E N D
Feladat: Generáljuk véletlen számokat 1 és 6 között, amíg legalább 10 darab egyes és 10 darab hatos nem lesz.
Sok számot generálunk, ezért kell egy ciklus. Mivel nem tudjuk előre, hogy hányszor fog lefutni a ciklus, ezért dinamikus ciklusra van szükségünk. do { } while ();
Random r=new Random(); do { int a =r.Next(1,7); Console.Write(a+” ”); } while (); • Véletlen számokat kell generálni, így a cikluson kívül meg kell adni, hogy lesznek véletlen számaink. • Sok számot kell csinálunk ezért a cikluson belülre írjuk, hogy milyen típusú legyen a változó, amiben eltároljuk a számot, mi a neve és mekkora legyen. 6-osokat még szeretnénk, ezért 7-et kell ide írnunk. • Írassuk ki a számokat, egymás mellé, szóközzel elválasztva.
Random r=newRandom(); do { int a =r.Next(1,7); • Console.Write(a+” ”); • if (a==1) {darabegyes=darabegyes+1;} • if (a==6) {darabhatos=darabhatos+1;} } while (); • Figyelnünk kell, hogy a generált szám egyes-e. Ehhez kell egy elágazás. Az elágazásban egy változó értékét növeljük, hogy a darabszámukat megkapjuk. • Ugyanezt meg kell tenni a hatossal.
Random r=newRandom(); int darabegyes=0; int darabhatos=0; do { int a =r.Next(1,7); • Console.Write(a+” ”); • if (a==1) {darabegyes=darabegyes+1;} • if (a==6) {darabhatos=darabhatos+1;} } while (); • Meg kell adnunk a cikluson kívül, hogy milyen típusú a darabegyes és a darabhatos nevű változó. És kezdőértéket is adjunk nekik.
Random r=new Random(); • do • { • int a =r.Next(1,7); • Console.Write(a+” ”); • if (a==1) {darabegyes=darabegyes+1;} • if (a==6) {darabhatos=darabhatos+1;} • } • while((darabegyes<10) && (darabhatos<10)); • A ciklus addig fusson, amíg nincs 10 egyes és 10 hatos, a darabszámukat a darabegyes és a darabhatos változókban tároljuk, vagyis ezeknek kell 10-nél kisebbnek lenni.
Console.WriteLine(”10 darab egyes és hatos generálása dinamikus ciklussal.”); • Console.Write(”Számok: ”); • Random r=new Random(); • do • { • int a =r.Next(1,7); • Console.Write(a+” ”); • if (a==1) {darabegyes=darabegyes+1;} • if (a==6) {darabhatos=darabhatos+1;} • } • while((darabegyes<10) && (darabhatos<10)); • Console.Readkey(); • Lássuk a futó program eredményét. • Írjuk ki az elejére a feladatot. • A számok előtt szerepeljen a Számok felirat.