|
|
|
![]() |
|
Strumenti |
![]() |
#1 |
Junior Member
Iscritto dal: Aug 2008
Messaggi: 1
|
c++ numeri casuali
ciao a tutti.. Vado subito al sodo.. Mi serve una traccia di programma che dia dei numeri completamente casuali tra 10 e 18 e li metta tutti in un vettore di sei elementi..
srand(time(0)); for(i=0; i=6; i++) { scelta = 1+rand() % 8; i=0; switch(scelta) { case 1: valori[i]=11; break; case 2: valori[i]=12; break; case 3: valori[i]=13; break; case 4: valori[i]=14; break; case 5: valori[i]=15; break; case 6: valori[i]=16; break; case 7: valori[i]=17; break; case 8: valori[i]=18; break; } for(i=0; i=6; i++) { cout<<valori[i]<<endl; } ho provato facendo così ma quando mi da i valori va in loop facendo uscire tutti 0.. Sapete qualche altro metodo ? Grazie in anticipo a tutti |
![]() |
![]() |
![]() |
#2 |
Senior Member
Iscritto dal: Jun 2002
Città: Dublin
Messaggi: 5989
|
Ti conviene innanzitutto eliminare interamente lo switch: una volta ottenuto il numero casuale, ti basta aggiungervi 10, o generare direttamente un numero tra 10 e 18.
![]() Vedo alcuni errori gravi poi:
Io farei in questo modo: Codice:
#define RAND(min, max) ((min) + (int) ((float)(max) * (rand() / (RAND_MAX + 1.0f)))) #define N 6 // ... int valori[N]; int i; srand(time(0)); for (i = 0; i < N; ++i) { valori[i] = RAND(10, 18); cout << valori[i] << endl; }
__________________
C'ho certi cazzi Mafa' che manco tu che sei pratica li hai visti mai! |
![]() |
![]() |
![]() |
#3 |
Moderatore
Iscritto dal: Nov 2003
Messaggi: 16211
|
__________________
Ubuntu è un'antica parola africana che significa "non so configurare Debian" ![]() Scienza e tecnica: Matematica - Fisica - Chimica - Informatica - Software scientifico - Consulti medici REGOLAMENTO DarthMaul = Asus FX505 Ryzen 7 3700U 8GB GeForce GTX 1650 Win10 + Ubuntu |
![]() |
![]() |
![]() |
Strumenti | |
|
|
Tutti gli orari sono GMT +1. Ora sono le: 12:59.