PDA

View Full Version : [C++]Frasi casuali


Raiki
03-01-2009, 15:58
Salve avrei bisogno di sapere una cosa:

Sto facendo un mio piccolo chi vuol essere milionario........io ho fatto delle variabile dichiarate come string che hanno una frasa come valore,ho provato la funzione rand() per renderle casuali ma mi da questo errore:

include\stdlib.h||In function `int main()':|
include\stdlib.h|342|error: too many arguments to function `int rand()'| at this point in file|
||=== Build finished: 2 errors, 0 warnings ===|


Qualcuno sa fare?

agente mm8
03-01-2009, 16:39
Credo che hai passato argomenti errati al metodo rand(), da quello che si capisce dal log...

DanieleC88
03-01-2009, 17:13
Hai passato troppi argomenti a rand(), vedi bene che magari hai semplicemente sbagliato a mettere una parentesi. Magari facci vedere come la stai chiamando. ;)

Raiki
04-01-2009, 10:30
Non ti posto il codice del programma perchè so na 500 di righe,però ti posto il codice di prova che ho usato per cercare di capire come fare:


#include <iostream>
#include <cstdlib>

using namespace std;

int main()
{
string frase1 = "a";
string frase2 = "b";
string dom;

dom = rand(frase1, frase2);

cout << dom;

system("pause");

return 0;

}

stdecden
04-01-2009, 14:39
Cambia:

dom = rand(frase1, frase2);


con:


dom = (rand() % 2 == 0) ? frase1 : frase2;


rand restituisce semplicemente un numero casuale quindi devi usare un operatore terniario oppure un if.

Raiki
04-01-2009, 15:31
Ok grazie funziona:D :D

cionci
04-01-2009, 15:45
Raiki: leggi la documentazione.
http://www.cplusplus.com/reference/clibrary/cstdlib/rand.html

Raiki
04-01-2009, 15:51
Me lo sono proprio dimenticato questo sito eppure lo tengo fra i preferiti:muro: :muro: