|
|
|
![]() |
|
Strumenti |
![]() |
#1 |
Senior Member
Iscritto dal: Jun 2008
Messaggi: 551
|
rand() generare numero casuale da intervallo non consecutivo
buongiorno a tutti,
qualcuno sa dirmi come si fa con la funzione rand() a generare numeri casuali da un intervallo di numeri non consecutivi? ad esempio generare ogni volta un numero casuale dall'intervallo: 6, 10, 14, 18, 22. linguaggio C grazie a tutti!!!
__________________
Se non hai ancora deciso per il tuo futuro Don'T panic!!! segui le tue passioni, ti porteranno lontano. |
![]() |
![]() |
#2 |
Senior Member
Iscritto dal: Oct 2006
Città: milano
Messaggi: 1439
|
Mi viene in mente che potresti mettere quei valori in un array e generare l'indice. Dipende se conosci quei valori.
|
![]() |
![]() |
#3 |
Senior Member
Iscritto dal: Jun 2008
Messaggi: 551
|
può essere un'idea...
io cmq cercavo un'istruzione per agire direttamente sulla formula di traslazione del risultato di rand: n = a + rand() % b; a=valore di traslazione b=fattore di scala un aiuto?
__________________
Se non hai ancora deciso per il tuo futuro Don'T panic!!! segui le tue passioni, ti porteranno lontano. |
![]() |
![]() |
#4 | ||
Senior Member
Iscritto dal: Oct 2006
Città: Roma
Messaggi: 1383
|
Quote:
Quote:
c'é una guida bellissima in proposito nella sottosezione dei tutorials. Ultima modifica di fero86 : 09-12-2009 alle 15:08. |
||
![]() |
![]() |
#5 | |
Member
Iscritto dal: Oct 2007
Messaggi: 250
|
Quote:
E tanto per essere pignoli, numeri isolati non costituiscono un intervallo. :P Ah dovresti pure inserire [C] nel titolo del topic, altrimenti il primo mod che passa te lo chiude. |
|
![]() |
![]() |
#6 |
Senior Member
Iscritto dal: Nov 2005
Messaggi: 2776
|
Ok, tu intendevi un valore della "sequenza". Beh non è difficile nel tuo esempio:
Codice:
n=6+4*rand()%5; |
![]() |
![]() |
#7 |
Senior Member
Iscritto dal: Apr 2000
Città: Vicino a Montecatini(Pistoia) Moto:Kawasaki Ninja ZX-9R Scudetti: 29
Messaggi: 53971
|
|
![]() |
![]() |
Strumenti | |
|
|
Tutti gli orari sono GMT +1. Ora sono le: 07:09.