Olyan Lottó programot kell írnom ami nekem bonyolult C++-ban. Valaki?
Az a feladat hogy lottó programot kell írni úgy hogy:
Feljön a Dos-os ablak.
1.Megkérdezni hogy hányas lottót szeretnék játszani (1-50-ig)
Ez a rész nincs meg ---^
2.Add meg a számokat (1-9ig)
3. Kiírja a lottó számokat.
4. Kiírja hogy én miket tippeltem
5. Nyertem/vesztettem kiírás
6. hány találatom lett.
Ennyi van kész:
#include <iostream>
#include <cstdlib>
#include <time.h>
#include <string>
#include <locale>
#include <fstream>
using namespace std;
int main(int argc, char *argv[])
{
setlocale(LC_ALL, "");
int lottery[5];
int user[5];
bool allmatch = true;
bool nomatch = true;
int matchcount = 0;
srand (time(NULL));
lottery[0] = rand() % 10;
lottery[1] = rand() % 10;
lottery[2] = rand() % 10;
lottery[3] = rand() % 10;
lottery[4] = rand() % 10;
for(int i = 0; i < 5; i++)
{
cout <<"Gépelj be 0-tól 9-ig egy számot: ";
cin>>user[i];
while (user[i]<0 || user[i]>9)
{
cout << "Hiba. Muszáj 0 és 9 közötti számot beírnod: ";
cin >> user[i];
}
}
cout<<endl<<"Lottó számok: ";
for(int i = 0; i < 5; i++)
{
cout<<lottery[i];
cout<<"|";
}
cout<<endl<<endl<<" Használt számok: ";
for(int i = 0; i < 5; i++)
{
cout<<user[i];
cout<<"|";
}
for(int i = 0; i < 5; i++)
{
if(user[i] == lottery[i])
{
matchcount++;
nomatch = false;
}
if(user[i] != lottery[i])
{
allmatch = false;
}
}
if(nomatch == true)
{
cout<<endl<<endl<<"Sajnálom, nem nyert."<<endl;
}
if(allmatch == true)
{
cout<<endl<<endl<<"Gratulálok,Nyertél."<<endl;
}
if(matchcount != 0)
cout<<endl<<endl<<matchcount<<" Találat"<<endl;
return 0;
}
A sorsolást úgy kellene megcsinálnod, hogy:
Van egy tömböd, ebbe teszed be a véletlen számokat. Az új szám generálásakor ellenőrzöd, hogy benne van-e. Amíg olyan számot kapsz, ami már a tömbben van, addig új számot generálsz helyette. Egy ciklussal feltöltöd a tömböt, ezek lesznek a nyerőszámok.
Ha használhatsz STL-t, akkor hasonlóan használhatsz halmazt (Set), aminek az az előnye, hogy egyrészt nem kell előre megadnod a méretét, másrészt nem kell kiszűrnöd a duplikátumokat. Viszont csak iterátorral tudsz végigmenni rajta. Technikásabb, de egyszerűbb.
Használhatsz vektort is (Vector), amit a tömbhöz hasonlóan tudsz kezelni.
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!