11. januar 2004 - 16:29
Der er
8 kommentarer og 1 løsning
Tal i tilfældig rækkefølge..
Jeg kan ikke lige gennemskue hvordan jeg udskriver tallen mellem fx 0 og 20 i tilfældig rækkefølge. Både C og C++ er velkommen da det mest er princippet jeg leder lidt efter..
Annonceindlæg tema
Forsvar & beredskab
Cybersikkerhed, realtidsdata og robuste it-systemer er blevet fundamentet for moderne forsvar.
11. januar 2004 - 16:39
#1
I c++ kunne du gøre sådan: #include <iostream> #include <vector> #include <algorithm> using namespace std; int main() { vector<int> vect; for(int i=0;i<20;i++) { vect.push_back(i); } random_shuffle(vect.begin(), vect.end()); for(vector<int>::const_iterator iter = vect.begin();iter != vect.end();iter++) { cout << *iter << " "; } return 0; }
11. januar 2004 - 16:47
#2
Du kan også bruge funktionen rand() Eks: #include <iostream> #include <cstdlib> #include <algorithm> using namespace std; int main() { srand(time(NULL)); int tal=rand()%21; cout<<"tilfaeldigt tal mellem 1 og 20: "<<tal<<endl; system("pause"); return 0; }
11. januar 2004 - 16:49
#3
Vil bare sige at soreno's løsning er bedre, da min vil kræve at du hele tiden skal tjekke om tallet er brugt en gang.
11. januar 2004 - 22:07
#4
Soreno: Din virker meget godt, men gider du ikke forklare hvorfor du bruger vectors.. Kan man ikke bare lave det med nogle helt almindelige int variabler eller sådan noget..? :)
11. januar 2004 - 23:07
#5
Mener du arrays eller?
12. januar 2004 - 00:20
#6
Soreno's løsning med et array: #include <iostream> #include <stdio.h> using namespace std; static const int NumNumber = 20; int main() { int Ar[NumNumber]; int i, j, t, n; for(i = 0; i < NumNumber; i++) { Ar[i] = i; } for(i = 0; i < 100; i++) for(j = 0; j < NumNumber; j++) { n = rand()%20; t = Ar[j]; Ar[j] = Ar[n]; Ar[n] = t; } for(i = 0; i < NumNumber; i++) cout << Ar[i] << " "; cout << endl; return 0; }
12. januar 2004 - 20:06
#7
Linien: n = rand()%20; bør naturligvis rettes til n = rand()%NumNumber;
14. januar 2004 - 23:19
#8
Hej igen folk.. Jeg kunne bruge koden.. Tak. Ingen der vil lægge et svar? :)
15. januar 2004 - 06:18
#9
Et svar.
Kurser inden for grundlæggende programmering