Witam poniższy program losuje liczby i wyświetla je w tabeli problem polega na tym że gdy do zmiennej a wpiszemy liczby inne od 1,0 to program wypisuje nam tylko jedną linijkę i się zacina
#include <iostream>
#include <cstdlib>
#include <time.h>
bool sprawdz(int b, int tab[])
{
bool jest = false;
if(b > 0) for(int i = 0; i<b; i++)
{
if(tab[b] == tab[i]) jest = true;
}
return jest;
}
void losuj(int tab[], int i, int b, int a)
{
bool jest;
for(jest = true; jest; jest = sprawdz(i,tab))
{
tab[i] = (rand() % (b - a +1)) + a;
}
}
using namespace std;
int main()
{
int kule[100][1000], n[1000], m, a, b;
cout << "Podaj zakres wartosci kul od " << endl;
cin >> a;
cout << "do " << endl;
do{
cin >> b;
if(a>b) cout <<"Podaj poprawna liczbe:";
}while(a>b);
cout << "Podaj ilosc pojemnikow: ";
cin >>m;
srand(time(NULL));
for(int j=0; j<m; j++)
{
for(int i = 0; i<b; i++)
{
losuj(n,i,b,a);
kule[j][i] = n[i];
cout << kule[j][i] << " ";
}
cout<< endl;
}
return 0;
}