+ Rispondi al messaggio
Visualizzazione dei risultati da 1 a 6 su 6

[C/C++] Random

  1. #1
    L'avatar di nable
    nable non  in linea Novello
    Salve a tutti, ho bisogno di un chiarimento sulla creazione di numeri random in C.

    Devo creare 4 numeri casuli tra 0 e 99, ho inizializzato il seme e poi invocato la funzione rand come di seguito:

    ...
    srand((unsigned)(i+1)*time(NULL));
    ...
    tipo=rand()%100;
    ...

    il problema e che dalla seconda volta in poi i numeri generati sono sempre gli stessi; come posso fare x evitare questo problema??

    Grazie

  2. #2
    cristiano2004 non  in linea Scolaretto
    #include <stdlib.h>
    #include <time.h>
    #include <stdio.h>


    void main(void)
    {
    int i;
    time_t t;
    srand((unsigned) time(&t));
    for(i=0;i < 4;i++)

    printf("%u ",rand()%100);


    }

  3. #3
    L'avatar di nable
    nable non  in linea Novello
    adesso provo subito questo metodo, grazie

  4. #4
    L'avatar di albertonissa
    albertonissa non  in linea Topo di biblioteca
    io di solito faccio cosi':

    #include <stdlib.h>
    #include <stdio.h>
    #include <time.h>
    
    int main() {
      int numero;
      int i;
    
      for(i = 0; i < 4; i++) {
        srand(time(NULL) + i);
        numero = rand()%100;
        printf("%d\n", numero);
      }
    
      return 0;
    }
    

  5. #5
    L'avatar di bottomap
    bottomap non  in linea Amanuense
    Ciao,

    Una srand(time(NULL)) pu essere tranquillamente sufficiente una sola volta all'inizio del programma... la sequenza si ripete tra due esecuzioni successive se passa meno di un secondo tra un'esecuzione e l'altra... in pratica basta generare un seme sulla base del tempo attuale (la struttura time in questione) una volta all'inizio del programama.

    Ciaociao
    Ultima modifica di bottomap; 06-12-2010 10:13 
    ℹ️ Leggi di pi su bottomap ...

  6. #6
    L'avatar di nable
    nable non  in linea Novello
    Ragazzi o risolto grazie a tutti!!

    Avevo sbagliato a fare un copia incolla e chiamavo 2 volte la funzione srand.

    grazie!!

+ Rispondi al messaggio

Potrebbero interessarti anche ...

  1. Risposte: 0
    Ultimo Post: 31-01-2012, 17:04
  2. random
    Da cubateam nel forum Visual Basic 6
    Risposte: 2
    Ultimo Post: 08-04-2009, 14:45
  3. Random Chr
    Da PappalardoProduction.com nel forum Visual Basic 6
    Risposte: 3
    Ultimo Post: 22-02-2008, 19:00
  4. Random vb6
    Da BrandonHeat nel forum Visual Basic 6
    Risposte: 41
    Ultimo Post: 30-01-2006, 16:17
  5. Random
    Da albertonissa nel forum Visual Basic 6
    Risposte: 2
    Ultimo Post: 19-02-2004, 14:09