954,219 Members — Technology Publication meets Social Media
Username:
Password:
Lost login information?
Have something to say? Contribute New Article Reply to this Article

Program Help

Ok so my first thread got deleted, due to spam. However, I still need help with my program. So here's my program description.

Electronic submission: You are to electronically submit your assignment through Moodle at clasess.cs.siue.edu.

Objectives: Loops and decisions.

Problem Description
Write a program to simulate a game of dice rolling. The dice will be rolled by three players, with each player rolling one die each. Each player will continue rolling a die and adding its value to their total up to that point. The player whose total goes over twenty first wins. To generate the player’s roll, a random number generator will be used, as shown below.

If two players go over twenty with the same roll, then the player with the largest number wins. If the two winners have the same number, then it is a tie. Remember there can be three way ties, also.

After each player rolls, the program should display a vertical graph of each player’s total points to pictorially show who is winning at that point.

In order to randomly “throw” the die, you must include the following statements:
Include the following prototypes:
#include

The following should be the first statement in main():
srand((unsigned)time(NULL));

When you need to roll the die:
die = (rand() % 6) + 1; // die is a variable name that you made up

I am suppose to use X's to keep tally of the score, using setw().

Also here's my code so far, which isn't that far along at all, due to the fact that I am not a good programmer when dealing with complex programs. I know this probably isn't that hard but for me it it. So any help would be great

//Name: Nick Auffarth
//Class: CS140-003
//Assignment: Program 2
//Date: September 24, 2006
#include <iostream>
#include <iomanip>
#include <ctime>
#include <string>
using namespace std;



void main()
{
	srand((unsigned)time(NULL));
	
	int die;	
	string name1, name2, name3;
	

	cout << "Programmed by Nick Auffarth" << endl << endl;
	cout << "The first person to roll a total of 20 wins." << endl;
	cout <<"If more than two cross the 20 mark, then the one with the highest" << endl;
	cout << "total wins." << endl << endl;
	cout <<"Enter Player One's First Name: ";
	cin >> name1;
	cout <<"Enter Player Two's First Name: ";
	cin >> name2;	
	cout <<"Enter Player Three's First Name: ";
	cin >> name3;

	
	
	
	
	
	
	
	cout<<setw(10);
	cout<<"x"<<endl;
	
	
}
NicAuf
Newbie Poster
11 posts since Sep 2007
Reputation Points: 10
Solved Threads: 0
 

I am a newbie too at this programming stuff. Maybe we can work on the algorithm together to help get you started? Do you want the program to "roll" the dice three times before it displays the results of all three players? Or roll once, and then display one result before rolling again? I figured either one of those would be the next step in your algorithm after you entered the players names.

teppuus
Light Poster
47 posts since Sep 2007
Reputation Points: 10
Solved Threads: 0
 

Yeah I want the program to roll the dice once for each player, show the result of the row, dispalys x's in a column that corresponds with the number rolled. I need to keep doing this until one of them "wins." There hardest part I have is the rolling of the die, when ever it rolls I get the same number for each player. Also I need the x's in the columns to correspond with each new sum.

NicAuf
Newbie Poster
11 posts since Sep 2007
Reputation Points: 10
Solved Threads: 0
 

In my book, it says you have to use the header file cstdlib to use function rand to generate a random number. Do you think using #include would help? Wasn't sure since your instructions mentioned ctime header file...maybe they are similar.

teppuus
Light Poster
47 posts since Sep 2007
Reputation Points: 10
Solved Threads: 0
 

I don;t know but I'll try it see if that works.

NicAuf
Newbie Poster
11 posts since Sep 2007
Reputation Points: 10
Solved Threads: 0
 

I still get the same numbers.

NicAuf
Newbie Poster
11 posts since Sep 2007
Reputation Points: 10
Solved Threads: 0
 

hmm, ok. I'll keep looking to see if I can find something that might explain that.

teppuus
Light Poster
47 posts since Sep 2007
Reputation Points: 10
Solved Threads: 0
 

Here is a description about getting a new random number each time: http://www.cplusplus.com/reference/clibrary/cstdlib/srand.html

teppuus
Light Poster
47 posts since Sep 2007
Reputation Points: 10
Solved Threads: 0
 

I ran that example program on that webpage, and it did change the random number (after running the program twice). It seems you have to change the srand value from srand ( time(NULL) ); to srand (1); after rolling the die.

teppuus
Light Poster
47 posts since Sep 2007
Reputation Points: 10
Solved Threads: 0
 

I am so lost..........

NicAuf
Newbie Poster
11 posts since Sep 2007
Reputation Points: 10
Solved Threads: 0
 

You might be calling srand(), but I don't see any code calling rand() as yet.
Post your latest code.

> It seems you have to change the srand value from srand ( time(NULL) );
> to srand (1); after rolling the die.
Calling srand(time(NULL)); just ONCE at the start of the program is usually sufficient to change things around from one run to another.

Salem
Posting Sage
Team Colleague
11,531 posts since Dec 2005
Reputation Points: 5,862
Solved Threads: 953
 

Its pretty much unchanged as the first code i posted. I am completely lost, and I'm at wits end.

NicAuf
Newbie Poster
11 posts since Sep 2007
Reputation Points: 10
Solved Threads: 0
 

But you've just claimed you've been calling rand(), yet I see no evidence of it.

Salem
Posting Sage
Team Colleague
11,531 posts since Dec 2005
Reputation Points: 5,862
Solved Threads: 953
 

How's it going NicAuf? Were you able to figure out your code? Salem wants you to show all your code (if you are having problem with the die rolling, then you have more code than you are showing). It's the best way ppl can help. Don't give up!

teppuus
Light Poster
47 posts since Sep 2007
Reputation Points: 10
Solved Threads: 0
 

This article has been dead for over three months

Post: Markdown Syntax: Formatting Help
You