Я новичок, и я не совсем понимаю, что я делаю неправильно, используя ctime и переменные, которым присваиваются случайные числа. Моя переменная newCard продолжает возвращать одно и то же значение каждый раз, когда я ее вызываю. Любая обратная связь будет оценена!
Эта программа предназначена для просмотра циклов и не может включать пользовательские функции
#include <iostream>
#include <cstdlib>
#include <ctime>
using namespace std;
int main()
{
srand(static_cast<unsigned>(time(0)));
int total = 0;
int card1 = rand() % 10 + 1;
int newCard = rand() % 10 +1;
char deal, replay;
do
{
cout << " First Cards: " << card1 << ", " << newCard;
total = card1 + newCard;
cout << "\n Total: " << total;
cout << "\n Do you want another card? (Y/N) ";
cin >> deal;
while(deal == 'y' || deal == 'Y')
{
cout << "\n New Card = " << newCard;
total += newCard;
cout << "\n Total: " << total;
if(total == 21)
{
cout << "\n Congratulations!! BLACKJACK! ";
cout << "\n Would you like to play again? (Y/N):";
cin >> replay;
break;
}
else if(total > 21)
{
cout << "\n BUST ";
cout << "\n Would you like to play again? (Y/N):";
cin >> replay;
break;
}
cout << "\n Would you like another card? (Y/N): ";
cin >> deal;
}
while (deal == 'n' || deal == 'N')
{
cout << "\n Would you like to play again? (Y/N): ";
cin >> replay;
}
}
while(replay == 'y' || replay == 'Y');
while (replay =='n' || replay == 'N')
{
cout << "\n Exiting BlackJack \n\n";
return 0;
}
}
int newCard = rand() % 10 +1;
выполняется 1 раз при запуске вашей программы. ЗначениеnewCard
не меняется.c++
не пересчитывает формулу, если вы предполагали, что это произойдет. - person drescherjm   schedule 03.09.2018