7 명의 플레이어와 딜러와 함께하는 블랙 잭 프로그램을 만들어야합니다. 소송 유형에 대해 switch 또는 if 문을 사용해야하며이 명령문은 한 번만 사용할 수 있습니다.블랙 잭 프로그램
내가 작동하지 않습니다 알고하면 셔플() 함수입니다 :
나는 두 번 (스페이드 A)처럼 저와 출력을 줄 것이다 디버깅없이 실행 만이 중복되지 것이다 그래서 나는 배열을 넣을 때 카드.
그러나 디버깅을 수행 할 때 모든 코드 행에 출력 할 때 중복되지 않는 카드가 2 개 있습니다.
플레이어 합계를 계산하는 데 문제가 있습니다. "각 플레이어에게 두 장의 카드를 제공하는 함수를 작성하십시오.", 명확한 크기가없는 배열에 두 장의 카드를 추가하려면 어떻게합니까?
#include <iostream>
#include <iomanip>
#include <ctime>
#include <windows.h>
#include <stdio.h>
using namespace std;
void Header();
void Shuffle(int&, char&);
void Dealer();
void Deal();
void Another_Card();
void Fin_Dealer();
void WLT();
void gotoxy(int h, int w)
{
HANDLE hConsole = GetStdHandle (STD_OUTPUT_HANDLE);
if (INVALID_HANDLE_VALUE != hConsole)
{
COORD pos = {h, w};
SetConsoleCursorPosition (hConsole, pos);
}
return;
}
int main()
{
Header();
Dealer();
Deal();
WLT();
gotoxy(0,19);
return 0;
}
void Header()
{
cout <<"\t\t\tWelcome to BlackJack!\n\n";
gotoxy(3,3);
cout <<"Dealer Player1 Player2 Player3 Player4 Player5 Player6 Player7 "<<endl;
return;
}
void Shuffle(int& num, char& suit)
{
int cards[52], dup[52];
int card;
srand(time(NULL));
for(int i = 0; i <52; i++)
dup[i] = 0;
card = rand() % 52;
while(dup[card])
card = rand() % 52;
dup[card] = 1;
suit = char(card/13 + 3); //display suit
num = card % 13;
switch(num)
{
case 0: cout<<setw(6)<<right<<" A"<<suit;
break;
case 1:
case 2:
case 3:
case 4:
case 5:
case 6:
case 7:
case 8:
case 9: cout<<setw(6)<<right<<" "<<num + 1<<suit;
break;
case 10: cout<<setw(6)<<right<<" J"<<suit;
break;
case 11:cout<<setw(6)<<right<<" Q"<<suit;
break;
case 12:cout<<setw(6)<<right<<" K"<<suit;
break;
default:cout<<setw(6)<<right<<"Error";
break;
}
return;
}
void Dealer()
{
int i = 0;
int num = 0;
char suit;
for(i = 4;i <6; i++)
{
gotoxy(0,i);
Shuffle(num, suit);
}
return;
}
void Deal()
{
int i = 0;
int num = 0;
int row = 4;
char suit;
for(i = 1; i < 8; i++)
{
gotoxy(i*8, row);
Shuffle(num,suit);
}
if(playertotal <=20)
{
Another_Card()
}
return;
}
void Another_Card()
{
return;
}
void Fin_Dealer()
{
return;
}
void WLT()
{
return;
}
'명확한 크기가없는 배열에 두 장의 카드를 추가하는 방법은 무엇입니까? '크기를 조정할 수있는 컨테이너 (21/2)를 사용하고 싶지 않을 경우 최대 크기를 갖습니다. Vegas/Atlantic City는 신발에 2 개 이상의 데크를 사용합니다. 딜러는 일반적으로 16을 넘지 않습니다. 일부 규칙은 소프트 17 (A + 6) –