[C++] Hogy kell egy tömböt feltölteni véletlen számokkal, úgy, hogy ne tartalmazzon 2 ugyanolyan számot?
Nem kell 10-szereznem elég egy ciklus ami 1000-szer fut le :)
for (int i=0; i<N; i++)
{
tomb[i]=rand()%10+1;
for (int z=0; z<1000; z++)
{
for (int j=0; j<i; j++)
{
if (tomb[j]==tomb[i])
{
tomb[i]=rand()%10+1;
}
}
}
}
"Hát ez még mindig jobb mint a semmi amit tőletek kaptam!!"
Vicces vagy. Nyilván nem fogok kódot írni, azért pénzt kérnék.
Megpróbálom rendesen megcsinálni, úgy ahogy az 5-ös válaszoló írta. Segítenétek, hogy mi a hiba?
#include <iostream>
#include <cstdlib>
#include <time.h>
#include <stdlib.h>
#include <algorithm>
using namespace std;
int main()
{
srand(time(NULL));
int N=10, tomb[N], vel;
for (int i=0; i<N; i++)
{
vel=rand()%10+1;
for (int j=0; j<i; j++)
{
if (tomb[j]==vel)
{
vel=rand()%10+1;
j=0;
}
}
tomb[i]=vel;
}
sort (tomb,tomb+N);
for (int i=0; i<N; i++)
{
cout<<tomb[i]<<" ";
}
system ("PAUSE");
}
Megvan a hiba. Szerintetek így már végleges, és jó?
#include <iostream>
#include <time.h>
#include <stdlib.h>
#include <algorithm>
using namespace std;
int main()
{
srand(time(NULL));
int N=10, tomb[N], vel;
for (int i=0; i<N; i++)
{
vel=rand()%10+1;
for (int j=0; j<i; j++)
{
if (tomb[j]==vel)
{
while (tomb[j]==vel)
{
vel=rand()%10+1;
j=0;
}
j=0;
}
}
tomb[i]=vel;
}
sort (tomb,tomb+N);
for (int i=0; i<N; i++)
{
cout<<tomb[i]<<" ";
}
return 0;
}
#include <iostream>
#include <time.h>
#include <stdlib.h>
#include <algorithm>
#define N 10
using namespace std;
int tomb[N], vel;
bool benne_van(int szam)
{
bool benne = false;
for (int i = 0; i < N; i++) if (szam == tomb[i]) benne = true;
return benne;
}
int main()
{
srand(time(NULL));
for (int i = 0; i < N; i++){
vel = rand() % 20 + 1;
while (benne_van(vel)) vel = rand() % 20 + 1;
tomb[i] = vel;
}
sort (tomb, tomb + N);
for (int i = 0; i < N; i++) cout << tomb[i] << " ";
system("PAUSE");
return 0;
}
Kapcsolódó kérdések:
Minden jog fenntartva © 2025, 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!