Pagina 1 di 2 1 2 ultimoultimo
Visualizzazione dei risultati da 1 a 10 su 12
  1. #1
    Utente di HTML.it L'avatar di Alcott
    Registrato dal
    Jul 2003
    Messaggi
    154

    [C] Generare una stringa casuale

    Ciao a tutti,
    avrei bisogno di generare una stringa di 10 lettere maiuscole. Cercando il precedenti post, ne ho trovato uno che si basa sulla funzione rand(), ma purtroppo non mi va bene perchè è pseudo casuale, e chiamando una funzione all'interno di un for che mi genera la stringa, orrengo sempre lo stesso risultato.

  2. #2
    prova ad utilizzare la funzione randomize() all'inizio della tua funzione. serve a generare stringhe sempre diverse. mentre utilizzando solo rand() la sequenza di generazione di stringhe è sempre la stessa.
    www.matteosteri.it

  3. #3
    Utente di HTML.it L'avatar di Alcott
    Registrato dal
    Jul 2003
    Messaggi
    154
    In quale header è definita?
    Inoltre non saprei dove metterla Ti posto la funzione
    codice:
    void genera (char array[], int j) //j è il contatore del ciclo che chiama genera()
    {
      int i;
      srand (i+j);
      for (i=0; i<10; )
        array[i++] = (char) ((rand() % 26)+ 65);
    }

  4. #4
    Originariamente inviato da tommisceddu
    prova ad utilizzare la funzione randomize() all'inizio della tua funzione. serve a generare stringhe sempre diverse. mentre utilizzando solo rand() la sequenza di generazione di stringhe è sempre la stessa.

    non e' standard si deve utilizzare la funzione srand(time(NULL));

    http://forum.html.it/forum/showthrea...hreadid=753477

  5. #5
    Originariamente inviato da Alcott
    In quale header è definita?
    srand in <stdlib.h>
    time in <time.h>
    Originariamente inviato da Alcott
    Inoltre non saprei dove metterla Ti posto la funzione
    codice:
    void genera (char array[], int j) //j è il contatore del ciclo che chiama genera()
    {
      int i;
      srand (time(NULL));
      for (i=0; i<10; )
        array[i++] = (char) ((rand() % 26)+ 65);
    }
    fatto.

  6. #6
    Utente di HTML.it L'avatar di Alcott
    Registrato dal
    Jul 2003
    Messaggi
    154
    Mhm, purtroppo ancora non va...
    Continua a generare stringhe uguali anche con srand(time(NULL))

  7. #7
    Originariamente inviato da Alcott
    Mhm, purtroppo ancora non va...
    Continua a generare stringhe uguali anche con srand(time(NULL))
    :master: impossibile..

  8. #8
    Utente di HTML.it L'avatar di Alcott
    Registrato dal
    Jul 2003
    Messaggi
    154
    Va va... errore mio nello scriverla

  9. #9
    Utente di HTML.it L'avatar di edriv
    Registrato dal
    Oct 2004
    Messaggi
    367
    anche con la srand() i numeri sono pseudo-casuali... in teoria la casualità perfetta non esiste!
    I've got a bike. You can ride it if you like.

  10. #10
    Moderatore di Programmazione L'avatar di LeleFT
    Registrato dal
    Jun 2003
    Messaggi
    17,304
    Originariamente inviato da edriv
    anche con la srand() i numeri sono pseudo-casuali... in teoria la casualità perfetta non esiste!
    Non solo in teoria: anche nella pratica! Purtroppo il calcolatore può essere solo programmato per eseguire delle istruzioni e non certo per "lasciare al caso" qualcosa!

    Ciao.
    "Perchè spendere anche solo 5 dollari per un S.O., quando posso averne uno gratis e spendere quei 5 dollari per 5 bottiglie di birra?" [Jon "maddog" Hall]
    Fatti non foste a viver come bruti, ma per seguir virtute e canoscenza

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2024 vBulletin Solutions, Inc. All rights reserved.