All pastes #1382479 Raw Edit

Stuff

public text v1 · immutable
#1382479 ·published 2009-04-05 07:49 UTC
rendered paste body
//BlackJack 
//Classic Gambling game where the player counts to 21. 

#include <iostream>
#include <cstdlib>
#include <ctime>

using namespace std;
const int NUM_CARDS_IN_DECK = 13;
const int MAX_CARDS_IN_HAND = 11;

int main ()
{
	char again = 'y';
	char approach = 'y';

//code from deck maker start
	srand((unsigned int)time(0)); //seeds random numbers for game
	int deck[NUM_CARDS_IN_DECK];
	int value[NUM_CARDS_IN_DECK] = { 14, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13 };
	char name[NUM_CARDS_IN_DECK] = { 'A', '2', '3', '4', '5', '6', '7', '8', '9', 'T', 'J', 'Q', 'K' };
	//deck end

	int randomNumber = rand(); //generate random number!
	int high = 21;
	int low = 10;
	int range = (high - low) + 1;

	int finalScore = 0; //starting spending money 
	int startMoney = 120;
	finalScore += startMoney;
	int feePerRound = 20;
	int tableFee = feePerRound; //amount player pays to get cards/play one round.
	int dealerNumber = rand() % range + low; //random number between 1 and 21 (modified)
	
	int winnings = 0, moneyBet; //how much money the player will bet after seeing the cards.
	//deck maker start
	//initializing deck
	for( int i=0; i<NUM_CARDS_IN_DECK; i++ )
	{
		deck[i] = i;
	}

	//shuffle deck
	for( int i=0; i<NUM_CARDS_IN_DECK; i++ )
	{
		int randomCard = rand()%NUM_CARDS_IN_DECK;
		int temp = deck[i];
		deck[i] = deck[randomCard];
		deck[randomCard] = temp;
	}

	int currentDeckPosition = 0;
	int hand[MAX_CARDS_IN_HAND];
	int numCardsInHand = 0; 
	// deck maker end



	cout << "\t\t\tWelcome to Blackjack!\n\n";
	cout << "\nWe won't try to take your money... much.\n";
	cout << "You have currently: " << startMoney;
	cout << "\nPay the table minimum?(y/n): ";
	cin >> approach;
	
	cout << "how Much would you like to bet ?: ";
	cin >> moneyBet;

	while (approach == 'y')
	{

		finalScore -= tableFee;
		int choice;

		cout << "\nYour two cards: ";
		hand[numCardsInHand] = deck[currentDeckPosition];
		cout << "\n " << name[hand[0]] << "\n";

		numCardsInHand++;
		currentDeckPosition++;
		hand[numCardsInHand] = deck[currentDeckPosition];
		cout <<" " << name[hand[1]] << "\n";

		cout << "\nYou have Currently: " <<finalScore;
		cout << "\n1- Stay";
		cout << "\n2- Hit";
		cout << "\n3- Bet";
		cout << "\n4- Quit";
		
		cout << "\nSelect a number to proceed: ";
		cin >> choice;
		
		switch (choice)
		{
		case 1:
			cout << "" << value[hand[numCardsInHand]];
			finalScore += moneyBet;
			break;

		case 2:
			finalScore += tableFee;
			cout << "you were dealt: " << name[hand[numCardsInHand]];
			numCardsInHand++;
			currentDeckPosition++;
			//put something here like if handValueTotal > 21 = bust!
			break;

		case 3:
			cout << "how Much?: ";
			cin >> moneyBet;
			break;

		case 4:
			cout << "\nYour total winnings are: " << finalScore <<"\n";
			system ("pause");
			return 0;

		default:
			cout << "you didnt enter 1,2, or 3./n";

		}


	}while (again == 'y')
	{
		cout << "\n Do you want to play again?(y/n): ";
		cin >> again;
	}

	cout << "\nYour total winnings are: " << finalScore; 

	system ("pause");

	return 0;
}