|
|
|
![]() |
|
Strumenti |
![]() |
#1 |
Senior Member
Iscritto dal: May 2008
Città: Messina
Messaggi: 548
|
random C++
devo assegnare a 4 variabili 4 valori random diversi, non contemporaneamente ma solo se degli if vengono verificati, che devono anche cambiare ad ogni step di un ciclo for...
il semplice rand() non basta, in quanto questo valore rimane tale per tutta l'esecuzione del programma... |
![]() |
![]() |
![]() |
#2 |
Member
Iscritto dal: Apr 2007
Messaggi: 182
|
Prima inizializzi il generatore in questo modo
Codice:
srand ( time(NULL) ); Codice:
for( ... ) randomNumber = rand() % 10; |
![]() |
![]() |
![]() |
#3 | |
Senior Member
Iscritto dal: May 2008
Città: Messina
Messaggi: 548
|
Quote:
Codice:
srand ( time(NULL) ); for(i=0;i<100;i++) { random[0]=rand(); if (random[1]<catcha) { random[1]=rand(); if (random[1]<catcha) { random[2]=rand(); if (random[2]<catcha) { random[3]=rand(); if (random[3]<catcha) { preso+=1; } } } } } |
|
![]() |
![]() |
![]() |
#4 |
Member
Iscritto dal: Apr 2007
Messaggi: 182
|
A me sembra molto strano. Comunque senza sapere cosa deve fare il tuo programma mi sembra tu abbia sbagliato nel primo IF a scrivere random[1] anzichè random[0].
|
![]() |
![]() |
![]() |
#5 | |
Moderatore
Iscritto dal: Nov 2006
Messaggi: 21813
|
Quote:
all'inizio del programma inizializza il generatore e vedrai che a ogni chiamata del rand() ti darà un numero diverso anni fà sul borland c'era la funzione randomize adesso non sò è da parecchio che non uso i random
__________________
"WS" (p280,cx750m,4790k+212evo,z97pro,4x8GB ddr3 1600c11,GTX760-DC2OC,MZ-7TE500, WD20EFRX) Desktop (three hundred,650gq,3800x+nh-u14s ,x570 arous elite,2x16GB ddr4 3200c16, rx5600xt pulse P5 1TB)+NB: Lenovo p53 i7-9750H,64GB DDR4,2x1TB SSD, T1000 |
|
![]() |
![]() |
![]() |
#6 | |
Senior Member
Iscritto dal: May 2008
Città: Messina
Messaggi: 548
|
Quote:
come si inizializza il generatore di numeri random? comunque il programma dovrebbe simulare una "fase" di un gioco. Questa parte prevede, dopo il calcolo di un valore, che ho chiamato catcha, di confrontare questo con un valore random. Se è minore lo confronta con un altro valore random, così fino a che non è stato confrontato con 4 valori random. Se è risultato minore anche del 4, aumenta il valore di una variabile, che serve, alla fine, a calcolare la percentuale. |
|
![]() |
![]() |
![]() |
#7 |
Senior Member
Iscritto dal: May 2008
Città: Messina
Messaggi: 548
|
risolto, bastava correggere il primo if, come detto da onassis
![]() |
![]() |
![]() |
![]() |
Strumenti | |
|
|
Tutti gli orari sono GMT +1. Ora sono le: 10:36.