Losowanie sześciu liczb bez powtórzeń - kod do sprawdzenia

0
#include <iostream>
#include <cstdlib>
#include <ctime>
#include <windows.h>

using namespace std;

bool sprawdzenie(int liczba,int losowanie,int tablica[]);
int main()
{
    int liczba,tablica[6],losowanie;
    srand(time(NULL));
    for(losowanie = 0; losowanie < 6; losowanie++)
    {
        liczba = rand() % 49 + 1;
        if(sprawdzenie(liczba,losowanie,tablica) == true) --losowanie;
        if(sprawdzenie(liczba,losowanie,tablica) == false) tablica[losowanie] = liczba;
    }
    for(int i = 0; i < 6; i++)
    {
        Sleep(1000);
        cout << tablica[i] << endl;
    }
    return 0;
}
bool sprawdzenie(int liczba,int losowanie,int tablica[])
{

    for(int i = 0; i <= losowanie; i++)
    {
        if(liczba == tablica[i]) return true;
    }
    return false;
}
 
0

Całkowicie. Nie. Ok.

0

A co jest źle ? Bo program działa jak powinien.

1

To, że twój program może działać w nieskończoność.

0

Jak w nieskończoność? W końcu wylosuje 6 różnych liczb.

0

Jest szansa, że wylosuje, ale jest też szansa, że będzie losował w nieskończoność.

Można to zrobić lepiej i było to już wielokrotnie tutaj pokazywane.

0

Jak tasuje się liczby ?

1 użytkowników online, w tym zalogowanych: 0, gości: 1