Well I got it to compile and run.
Here's the errors that I found:
Your function prototypes didn't match the function's return type in it's code. (Aka, return a short but prototype says it returns void.)
You didn't close all functions with braces. Forgot a few :-P
You closed the switch statement with a brace but didn't open with one.
Other than that it's all good. One thing that I would change, not bad code just style, is to not use tab in the parameter list of a function and don't use it inside strings unless needed.
Here's the output from the console and I think you'll see what I mean about tabs in strings. It makes it hard to read.
Welcome to Craps 1.0
Here are the rules:
You have 1000 dollars to start gambling.
There are three types of bets. You can bet on:
- 2 and 12 which will give you the ratio of 5 to 1 if you win.
- 4 and 10 which will give you the ratio of 2.5 to 1 if you win.
- 6 and 8 which will give you the ration of 1.5 and 1 if you win.
The minimum amount of money you can bet is 10 dollars and
the highest amount of money you can bet is 100.
Have fun playing!
You have : 1000 dollars.
Enter a type of bet ( 1 = '6/8', 2 = '4/10', 3 = '2/12':
Other than that, nice job overall!
Here's the revised code:
#include <iostream> // Includeing Headers
#include <stdlib.h>
#include <time.h>
using namespace std; // Language
// Global Variables
void ShowIntroScreen(void);
void ShowInformation(unsigned long Money);
short GetBet(void);
short DoDiceThrow(void);
unsigned short DoMoneyCalc(short Dice, short Bet, short BetMoney);
unsigned long GetAmount(void);
void main(void)
{
unsigned long MoneyEarned, Money;
short DiceValue, Bet, BetMoney;
ShowIntroScreen();
Money = 1000;
do // Loop Actions
{
ShowInformation (Money);
Bet = GetBet();
BetMoney = GetAmount();
DiceValue = DoDiceThrow();
MoneyEarned = DoMoneyCalc(DiceValue, Bet, BetMoney);
Money -= BetMoney;
if(MoneyEarned == 0 )
{
cout << "You have lost. The number was: " << DiceValue << endl << endl;
}
else
{
cout << "You won " << MoneyEarned - BetMoney;
cout << " dollars. Number was: " << DiceValue;
cout << endl << endl;
Money += MoneyEarned;
}
}
while (Money > 100);
cout << "Game Over. Keep $" << Money << " for the ride home\n";
}
void ShowIntroScreen (void) // Rules and Start Up
{
cout << " Welcome to Craps 1.0" << endl << endl;
cout << " Here are the rules:" << endl << endl;
cout << "You have 1000 dollars to start gambling. ";
cout << endl << endl;
cout << "There are three types of bets. You can bet on: " << endl << endl;
cout << " - 2 and 12 which will give you the ratio of 5 to 1 if you win.\n";
cout << " - 4 and 10 which will give you the ratio of 2.5 to 1 if you win.\n";
cout << " - 6 and 8 which will give you the ration of 1.5 and 1 if you win.";
cout << endl << endl;
cout << "The minimum amount of money you can bet is 10 dollars and \n" " the highest amount of money you can bet is 100.";
cout << endl << endl;
cout << "Have fun playing!";
cout << endl << endl;
}
void ShowInformation (unsigned long Money) // Money Display
{
cout << "You have : " << Money << " dollars.";
cout << endl << endl;
}
short GetBet (void) // Gets Bet Type
{
unsigned short BetType;
cout << "Enter a type of bet ( 1 = '6/8', 2 = '4/10', 3 = '2/12': ";
cin >> BetType;
if ((BetType == 1) || (BetType == 2) || (BetType == 3))
{
return BetType;
}
else
{
return 1;
}
}
short DoDiceThrow (void) // Randomized Numbers
{
short DiceValue;
srand (time (NULL));
DiceValue = (rand () % 11) + 2;
if ((DiceValue == 4 ) || (DiceValue == 10))
{
srand (time (NULL));
DiceValue == (rand () % 12) + 1;
}
if ((DiceValue == 2) || (DiceValue == 12))
{
srand (time (NULL));
DiceValue = (rand () % 12) + 1;
if ((DiceValue == 2) || (DiceValue == 12))
{
srand (time (NULL));
DiceValue = (rand () % 12) + 1;
}
}
return DiceValue;
}
// Calculating Data
unsigned short DoMoneyCalc (short Dice, short Bet, short BetMoney)
{
unsigned long MoneyEarned = 0;
switch (Bet)
{
case 1:
if ((Dice == 6) || (Dice == 8))
{
MoneyEarned = BetMoney * 1.5;
}
break;
case 2:
if ((Dice == 10) || (Dice == 4))
{
MoneyEarned = BetMoney * 2.5;
}
break;
case 3:
if ((Dice == 3) || (Dice == 12))
{
MoneyEarned = BetMoney * 5;
}
break;
default:
MoneyEarned = 0;
break;
}
return MoneyEarned;
}
unsigned long GetAmount (void)
{
unsigned short BetAmount;
cout << "Enter amount to bet (min 10 - max 100): ";
cin >> BetAmount;
if (BetAmount < 10)
{
BetAmount = 10;
}
if (BetAmount > 100)
{
BetAmount = 100;
}
return BetAmount;
}