471,850 Members | 1,017 Online

# help on craps 1
help!!!
IMy problem is that I don't know how to make the increase/decrease part work.
The specification given to me by my teacher was: if the layer wins, double the wager (done!), and if loses , decrease the wager by the value entered by the player(done also!).
fot each continuation of the game, the player must be asked if he wants to increase/ decrease the wager, he must enter a new value. otherwise the wager remains the same. (I can't do that! Pls. help me!).

here's my code (pardon my code for being messy.. and i think my functions are all wrong.. :( )
[PHP]
#include <stdio.h>
#include <string.h>
#include <time.h>
#include <stream.h>

int wager, random1, random2, sum, sum1, point, total;
int done, done1, done2, done3;
char ans, ans1, ans2, ans3;

int diceroll (int random1, int random2)
{
int dc1, dc2;

printf("\nPress a key to roll a dice.\n");
getch();
printf("Rolling a dice...\n");
getch();

srand((unsigned)time(NULL));

for(dc1=0; dc1<1; dc1++) {
printf("\nThe spot on the first dice is:");
random1 = (rand()%6)+1;
cout << random1 << endl; }

for(dc2=0; dc2<1; dc2++) {
printf("The spot on the second dice is:");
random2 = (rand()%6)+1;
cout << random2 << endl; }

return (random1+random2);
}

int win(int total, int wager)
{
return (total += (wager*2));
}

int lose(int total, int wager)
{
total -= wager;
if (total<=0)
return 0;
else
return (total -= wager);
}

void rules(void)
{
printf("\n\nWELCOME TO CRAPS!!\n\n");
printf("\nInstructions & Rules:\n");
printf("Player rolls two dice. After the dice has come to rest, the sum of the spots on the 2 upward face is calculated.\n");
printf("To win: The sum of faces is 7 or 11 after a roll.\n");
printf("To get a craps/lose: The sum of faces is 2, 3 or 12 after a roll.\n");
printf("To make a point: The sum of faces is 4, 5, 6, 8, 9, or 10 after a roll.\n");
printf("After making a point, player must continue rolling until dice achieve the same 'point value', to win.\n");
printf("But if sum of faces is 7 before player achieve the same 'pont value', player lose.\n\n");
}

int bet(void)
{
done3=0;
while(!done2){
printf("\nDo you want to increase or decrease your wager? <I, D or N>:");
scanf("%s", ans3);
if (strcmp(ans3,"I")==0) {
done3=1;
break; }
else if (strcmp(ans3,"D")==0) {
done3=1;
break; }
else if (strcmp(ans3,"N")==0) {
done3=1;
break; }
else
printf("\nInvalid Character - I, D, N only.");
done3=0;
break;
}
}

void cont(void)
{
done1=0;
while (!done1){
printf("\nDo you want to continue playing (Y or N)?");
scanf("%s", ans1);
if ((strcmp(ans1,"Y")==0)||(strcmp(ans1, "y")==0)) {
bet();
done1=1;
break; }
else if ((strcmp(ans1,"N")==0)||(strcmp(ans1, "n")==0)) {
printf("Thank you for playing craps!");
done1=1;
break;}
else
printf("\nInvalid Character - Y or N only.");
done1=0;
break;
}
}

void newg(void)
{
done2=0;
while (!done2){
printf("\nDo you want to play a new game (Y or N)?");
scanf("%s", ans2);
if ((strcmp(ans2,"Y")==0)||(strcmp(ans2, "y")==0)) {
main();
done2=1;
break; }
else if ((strcmp(ans2,"N")==0)||(strcmp(ans2, "n")==0)) {
done2=1;
printf("Thank you for playing craps!");
break; }
else
printf("\nInvalid Character - Y or N only.");
done2=0;
break;
}
}

main()
{
rules();

printf("\nMake a wager (1-1000):");
scanf("%d", &wager);
while ((wager>1000)||(wager<1)) {
printf("\nInvalid Wager - only number between 1 and 1000\n");
scanf("%d", &wager); }

sum=diceroll(random1, random2);
printf("Their sum is :%d\n", sum);

switch(sum)
{
case 7: case 11:
printf("You win! You now have %d\n", win(total, wager));
cont();
break;
case 2: case 3: case 12:
printf("CRAPS! You Lose! You now have %d\n", lose(total, wager));
{
if (total<=0) {
printf("You cannot play anymore.\n");
newg(); }
else
cont();
break;
}
default:
point=sum;
done=0;
while(!done){

sum1=diceroll(random1, random2);
printf("Their sum is :%d\n", sum1);

if (sum1==point){
printf("You win! You now have %d.\n", win(total, wager));
cont();
break; }
else if (sum1==7) {
printf("You Lose! You now have %d.\n", lose(total, wager));
{
if (total<=0) {
printf("You cannot play anymore.\n");
newg(); }
else
cont();
}
done=1; }
else
done=0;
}
}
}

[/PHP]
Aug 20 '06 #1
1 4790 axas
32 in which function you have problem?
Aug 21 '06 #2

 1 post views Thread by Jamie Bissett | last post: by 6 posts views Thread by tigrfire | last post: by 1 post views Thread by lblock | last post: by 4 posts views Thread by wishwish20 | last post: by 1 post views Thread by lenest | last post: by reply views Thread by rocky666 | last post: by 3 posts views Thread by whitehatmiracle | last post: by 3 posts views Thread by TamaThps | last post: by reply views Thread by NeoPa | last post: by reply views Thread by antdb | last post: by reply views Thread by YellowAndGreen | last post: by 2 posts views Thread by guiromero | last post: by reply views Thread by Dolores Martín | last post: by 7 posts views Thread by Petrol | last post: by reply views Thread by aboka | last post: by 9 posts views Thread by CD Tom | last post: by reply views Thread by isladogs | last post: by