+ Rispondi al Thread
Visualizzazione dei risultati da 1 a 2 su 2

Discussione: Valore random tra minimo e massimo

  1. #1
    Fnordyrhyme72 non è in linea Novello
    Post
    1

    Valore random tra minimo e massimo

    Buongiorno, sono da diversi giorni programmando un gioco in C++, e avrei bisogno di un piccolissimo aiuto.
    da diversi giorni ho saputo l'esistenza del rand() e di srand(time(NULL)).
    Sapendo che rand() che è un generatore di numeri casuali con un max personalizzabile, esiste un comando simile ma con un min e un max personalizzabile?

    Per avere un Max personalizzabile si deve scrivere questo:
    codice:
    int main()
    {
    int N1 = 20; //Variabile che useremo per il max, ma non e obbligatorio
    srand(time(NULL)); //Dichiariamo il rand() in un modo più corretto
    cout<<"il numero e' "<<rand()%N1<<"\n"; //in questo caso stamperà un numero tra 0 è 19
    cout<<"il numero e' "<<(rand()%N1) + 1<<" \n"; //invece qui sarà tra 1 e 20
    system("pause");
    return 0;
    }
    PS: Ho detto comando essendo che non voglio un programma, ma un codice simile a rand().
    PS1: Ho voluto un pò introdurre l'argomento cosi almeno per coloro che non conoscevano il comando ora lo sanno.
    PS2: se mi dite "basta aggiungere un +<Numero che vuoi>", non sarebbe veramente corretto, essendo che tu sposteresti i limiti di quel rand(), invece io voglio "settarli", mi spiego, voglio tipo che mi manda un numero casuale tra 4 e 9, essendo che con il "(rand()%<Numero>)+<Numero>" non sarebbe teoricamente possibile.

  2. #2
    L'avatar di AntonioG
    AntonioG non è in linea Moderatore Globale Ultimo blog: Commodore 64 e Codemotion
    Luogo
    Roma
    Post
    15,039
    Blogs
    5
    Buonasera,

    intanto ho modificato il titolo, dato che non aveva senso quello che avevi scritto. Devi indicare, sommariamente, il problema.
    Ti invito a leggere il regolamento.

    Per il resto, è semplice, basta scrivere

    codice:
    rand() % (maxval + 1 - minval) + minval
    Avvisi generali e importanti, a pena CHIUSURA thread e/o BAN
    Il crossposting è vietato.
    Le richieste di "pappa pronta" sono vietate.
    Utilizzate i tag CODE per il codice.
    Leggere il Regolamento per chiarimenti PRIMA di creare nuovi thread.
    Utilizzare sempre i PM per comunicare con i moderatori.
    Non mi contattate in PM per problemi di software, usate il forum

+ Rispondi al Thread

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi