Valaki ír egy 5-ös lottó programot C#-ban, esetleg forrásdot, nagyon megköszönném?
Ha elemezni szeretnéd, hogy tanulhass belőle, akkor akár meg is írhatod. Vázolok egy lehetséges megoldást:
1. Felveszel egy egészekből álló tömböt 90 elemmel.
2. Feltöltöd értékekkel szépen sorba 1-90-ig.
3. Generálsz egy véletlen számot 0 és 89 között majd megcseréled a 0-dik elemet a generált sorszámúval.
4. Generálsz egy véletlen számot 1 és 89 között majd megcseréled a első elemet a generált sorszámúval.
5. Generálsz egy véletlen számot 2 és 89 között majd megcseréled a 2-dik elemet a generált sorszámúval.
A 6. lépést és a hetediket kitalálhatod, és rájöhetsz 3-7-ig egy ciklus van.
Ezt követően a tömb első öt eleme tartalmazza a kisorsolt számokat. Kiiratod és kész. Írjál majd, hogy hol akadtál el.
ENnyit írtam meg:
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace ConsoleApplication1
{
class Program
{
static void Main(string[] args)
{
Console.WriteLine("Lottósorsoláson kihúzták az ön lottószámait :D");
byte[] LottoSzamok = new byte[5];
Random rnd = new Random();
Boolean ok = true;
rnd.NextBytes(LottoSzamok);
for (byte i = 0; i < 5; i++) LottoSzamok[i] = (byte)((LottoSzamok[i] % 90) + 1);
while (ok)
{
ok = false;
for (byte i = 0; i < 4; i++)
for (byte o = (byte)(i + 1); o < 5; o++)
if (LottoSzamok[i] == LottoSzamok[o])
{
LottoSzamok[i] = (byte)rnd.Next(1, 91);
ok = true;
}
}
foreach (byte Szam in LottoSzamok)
Console.Write(Szam.ToString() + ", ");
Console.WriteLine();
Console.Write("Nyomj le egy billentyűt és keresse fel a szolgáltatókat a pénz átvételéhez! ");
Console.ReadKey(true);
}
}
}
De annyi változtatás kéne, hogy a számokat én tippelhessem meg, és az alapján derül ki, hogy pl 3 találat az fizet, és megmutatja miket húzott a gép.
Ha nem tanultatok tömböket old meg 5 db változóval. Elég ronda és az életben nem csinálnám meg így de működhet. Se ciklus se tömb, de ne nagyon mutogasd.
Felveszel 5 egész változót: a1, a2, a3, a4, a5. Az a1 véletlen szám lesz 1 és 90 közötti. Ez eddig korrekt van egy nyerőszámod.
Az a2 kezdetben egy véletlen szám 1 és 89 között. Majd megvizsgálod a1<=a2, akkor hozzáadsz 1-et az a2-höz. Így nem lesz egyenlő az első két nyerőszám sosem, és ez alapján kell megcsinálni a többit is.
Az a3 kezdetben egy véletlen szám 1 és 88 között. Majd megvizsgálod a1<=a3, akkor hozzáadsz 1-et az a3-hoz. Ezután ha a2<=a3, akkor hozzáadsz 1-et az a3-hoz.
Az a4 kezdetben egy véletlen szám 1 és 87 között. Majd megvizsgálod a1<=a4, akkor hozzáadsz 1-et az a4-hez. Ezután ha a2<=a4, akkor hozzáadsz 1-et az a4-hez. Ezután ha a3<=a4, akkor hozzáadsz 1-et az a4-hez.
Az a5 kezdetben egy véletlen szám 1 és 86 között. Majd megvizsgálod a1<=a5, akkor hozzáadsz 1-et az a5-höz. Ezután ha a2<=a5, akkor hozzáadsz 1-et az a5-höz. Ezután ha a3<=a5, akkor hozzáadsz 1-et az a5-höz. Ezután ha a4<=a5, akkor hozzáadsz 1-et az a5-höz.
Kapcsolódó kérdések:
Minden jog fenntartva © 2024, www.gyakorikerdesek.hu
GYIK | Szabályzat | Jogi nyilatkozat | Adatvédelem | Cookie beállítások | WebMinute Kft. | Facebook | Kapcsolat: info(kukac)gyakorikerdesek.hu
Ha kifogással szeretne élni valamely tartalommal kapcsolatban, kérjük jelezze e-mailes elérhetőségünkön!