C++ Problema con il lancio di 2 dadi

di il
5 risposte

C++ Problema con il lancio di 2 dadi

Salve a tutti! Ho un esercizio che non riesco proprio a risolvere spero che qualche anima pia mi riesca ad aiutare
Devo scrivere in C++ un algoritmo che simuli il lancio simultaneo di 2 dadi. L'algoritmo dovrà terminare allorquando entrambi i dadi recheranno il valor minimo (1) o valor massimo (6). E infine correggere l'algoritmo prevedendo un criterio di terminazione dopo n lanci senza che le condizioni di uscita di verifichino. Mi potreste aiutare per piacere :wall:

5 Risposte

  • Re: C++ Problema con il lancio di 2 dadi

    Trattandosi di un esercizio, potresti iniziare con lo scrivere un programma che lancia i due dadi (quindi usa le funzioni di generazione numeri randomici per ottenere dei valori int da 1 a 6) e ti mostra il risultato.
    Poi sulla base di questo programma predisponi una funzione che ti fa il lancio dei dadi e ti restituisce questi valori (oppure fai una funzione che restituisce un solo lancio e questa funzione la chiami due volte).
    Intanto supera questi step.
  • Re: C++ Problema con il lancio di 2 dadi

    Grazie per la risposta! Ho implementato questo codice che lancia 2 dadi e si ottegono 2 risultati che vengono visualizzatti da video.

    # include <iostream>
    #include <cstdlib>
    #include <time.h>
    using namespace std;

    int lanciadadi ( );

    int main ()
    {
    int risultato1=lanciadadi();
    int risultato2=lanciadadi();

    system ("pause");
    return 0;

    }

    int lanciadadi ()
    {
    int somma;
    srand (time(0));//inizializza il generatore
    int risultato=rand ()%6+1;//genera un numero casuale fra 0 e 5
    cout<<risultato<<' ';

    }

    questo primo step come va?
  • Re: C++ Problema con il lancio di 2 dadi

    Ho visto che devo inserire srand() all'interno di main() prima delle due chiamate a lanciadadi().

    Per il resto?
  • Re: C++ Problema con il lancio di 2 dadi

    La

    int somma;

    non mi sembra utile nella funzione (anzi non serve proprio).

    Sempre nella funzione la srand va eliminata e va inserita all'inizio del main, una sola volta.

    E sempre la funzione non dovrebbe visualizzare il dato con la cout ma restituirlo. Quindi elimina la cout e usa una

    return risultato;

    Le cout le fai nel main per i valori restituiti.
  • Re: C++ Problema con il lancio di 2 dadi

    Crossposting vietato!

    Anche l'uso di dev-c++ sarebbe da vietare nel regolamento di ogni forum...
Devi accedere o registrarti per scrivere nel forum
5 risposte