Seeding Rand

im trying to seed a random number and have it output a dice accoring to what the number is but i have been running into trouble when trying to make the second die roll random it ends up just giving the same number twice. Any Help?

tried using this code:



#include <stdlib.h>
#include <time.h>
#include <iostream>
#include "diceroll.h"
using namespace std;


int main()
{

int randnum, randnuma;


srand(time(NULL));
randnum = (rand() % 5 + 1);//sets what the random number will be
cout<<randnum<<endl; //output what randnum is
switch (randnum)//SHOWS THE OUTPUT
{
case 1:

cout << "ÚÄÄÄÄÄÄÄ¿" << endl;
cout << "³ ³" << endl;
cout << "³ ß ³" << endl;
cout << "³ ³" << endl;
cout << "ÀÄÄÄÄÄÄÄÙ" << endl;
break;

case 2:

cout << "ÚÄÄÄÄÄÄÄ¿" << endl;
cout << "³ ß ³" << endl;
cout << "³ ³" << endl;
cout << "³ ß ³" << endl;
cout << "ÀÄÄÄÄÄÄÄÙ" << endl;
break;

case 3:

cout << "ÚÄÄÄÄÄÄÄ¿" << endl;
cout << "³ ß ³" << endl;
cout << "³ ß ³" << endl;
cout << "³ ß ³" << endl;
cout << "ÀÄÄÄÄÄÄÄÙ" << endl;
break;

case 4:

cout << "ÚÄÄÄÄÄÄÄ¿" << endl;
cout << "³ ß ß ³" << endl;
cout << "³ ³" << endl;
cout << "³ ß ß ³" << endl;
cout << "ÀÄÄÄÄÄÄÄÙ" << endl;
break;

case 5:

cout << "ÚÄÄÄÄÄÄÄ¿" << endl;
cout << "³ ß ß ³" << endl;
cout << "³ ß ³" << endl;
cout << "³ ß ß ³" << endl;
cout << "ÀÄÄÄÄÄÄÄÙ" << endl;
break;

case 6:

cout << "ÚÄÄÄÄÄÄÄ¿" << endl;
cout << "³ ß ß ³" << endl;
cout << "³ ß ß ³" << endl;
cout << "³ ß ß ³" << endl;
cout << "ÀÄÄÄÄÄÄÄÙ" << endl;
break;

}//end switch(randnum)

srand(time(NULL));
randnuma = (rand() % 5 + 1);//sets what the random number will be
cout<<randnuma<<endl;
switch (randnuma)
{
case 1:

cout << "ÚÄÄÄÄÄÄÄ¿" << endl;
cout << "³ ³" << endl;
cout << "³ ß ³" << endl;
cout << "³ ³" << endl;
cout << "ÀÄÄÄÄÄÄÄÙ" << endl;
break;

case 2:

cout << "ÚÄÄÄÄÄÄÄ¿" << endl;
cout << "³ ß ³" << endl;
cout << "³ ³" << endl;
cout << "³ ß ³" << endl;
cout << "ÀÄÄÄÄÄÄÄÙ" << endl;
break;

case 3:

cout << "ÚÄÄÄÄÄÄÄ¿" << endl;
cout << "³ ß ³" << endl;
cout << "³ ß ³" << endl;
cout << "³ ß ³" << endl;
cout << "ÀÄÄÄÄÄÄÄÙ" << endl;
break;

case 4:

cout << "ÚÄÄÄÄÄÄÄ¿" << endl;
cout << "³ ß ß ³" << endl;
cout << "³ ³" << endl;
cout << "³ ß ß ³" << endl;
cout << "ÀÄÄÄÄÄÄÄÙ" << endl;
break;

case 5:

cout << "ÚÄÄÄÄÄÄÄ¿" << endl;
cout << "³ ß ß ³" << endl;
cout << "³ ß ³" << endl;
cout << "³ ß ß ³" << endl;
cout << "ÀÄÄÄÄÄÄÄÙ" << endl;
break;

case 6:

cout << "ÚÄÄÄÄÄÄÄ¿" << endl;
cout << "³ ß ß ³" << endl;
cout << "³ ß ß ³" << endl;
cout << "³ ß ß ³" << endl;
cout << "ÀÄÄÄÄÄÄÄÙ" << endl;
break;

}//end switch(randnum)
return 0;
}






and ive tried using this code:



#include <stdlib.h>
#include <time.h>
#include <iostream>
#include "diceroll.h"
using namespace std;

int main()
{
getrandroll(1);
getrandroll(2);
return 0;
}

void getrandroll(int i){
//variables
cout<<i<<endl;
int randnum;
//do{
srand(time(NULL));
cout<<"SRAND:"<<srand<<endl;
randnum = (rand() % 5 + 1);//sets what the random number will be
cout<<randnum<<endl;
randnum + i;
cout<<randnum<<endl;
switch (randnum)
{
case 1:

cout << "ÚÄÄÄÄÄÄÄ¿" << endl;
cout << "³ ³" << endl;
cout << "³ ß ³" << endl;
cout << "³ ³" << endl;
cout << "ÀÄÄÄÄÄÄÄÙ" << endl;
break;

case 2:

cout << "ÚÄÄÄÄÄÄÄ¿" << endl;
cout << "³ ß ³" << endl;
cout << "³ ³" << endl;
cout << "³ ß ³" << endl;
cout << "ÀÄÄÄÄÄÄÄÙ" << endl;
break;

case 3:

cout << "ÚÄÄÄÄÄÄÄ¿" << endl;
cout << "³ ß ³" << endl;
cout << "³ ß ³" << endl;
cout << "³ ß ³" << endl;
cout << "ÀÄÄÄÄÄÄÄÙ" << endl;
break;

case 4:

cout << "ÚÄÄÄÄÄÄÄ¿" << endl;
cout << "³ ß ß ³" << endl;
cout << "³ ³" << endl;
cout << "³ ß ß ³" << endl;
cout << "ÀÄÄÄÄÄÄÄÙ" << endl;
break;

case 5:

cout << "ÚÄÄÄÄÄÄÄ¿" << endl;
cout << "³ ß ß ³" << endl;
cout << "³ ß ³" << endl;
cout << "³ ß ß ³" << endl;
cout << "ÀÄÄÄÄÄÄÄÙ" << endl;
break;

case 6:

cout << "ÚÄÄÄÄÄÄÄ¿" << endl;
cout << "³ ß ß ³" << endl;
cout << "³ ß ß ³" << endl;
cout << "³ ß ß ³" << endl;
cout << "ÀÄÄÄÄÄÄÄÙ" << endl;
break;

}//end switch(randnum)

}//end function
Try this:

1
2
3
4

randnum = ( rand() % 6 ) + 1;

Instead of writing that switch twice, why not just make it a function?

This is cute, SFML would be so much easier but I have to give you credit for your enginuity. The "2, 3" and "5" appear to be wrong but this was an interesting origional idea.
Topic archived. No new replies allowed.