ダーツゲームを作成すると、2つのエラーが発生します
too few argurments in function call
と
game, identifier not found
私は、2人のプレーヤーが301からダーツを「ジョーとシド」でプレイできるようにする割り当てのゲームを作成しようとしています。配列には、雄牛と21の数字だけのダブルはありません。質問を解決するために、助けていただければ幸いです。以下のコードには4つの主要な機能があり、それぞれがスコアを下げます。最初は50代(ブル)、次に20代、次にシングルです。両方のプレーヤーはブルで終了する必要があり、スコアが50に達したときにブルではないスコアは破棄されます。 。
これが私のコードです。助けていただければ幸いです。
#include <iostream>
using namespace std;
int dartScores[] = {20, 1, 18, 4, 13, 6, 10, 15, 2, 17, 3, 19, 7, 16, 8, 11, 14, 9, 12, 5, 20};
void makeThrow( int &score );
int main ()
{
int joeScore = 301;
int sidScore = 301;
for (int i = 0; i< 1000;i++){
while( joeScore > 0 || sidScore > 0 )
{
//do a throw
game( joeScore);
game( sidScore);
}
// remember to reset the score value
}
}
void makeThrow_50( int &score, int acc )
{
if ( rand()%100 < acc )
{
score -= 50;
}
else
{
//select a random
int missedScore = dartScores[ rand()%20 ];
// Only reduce score when thrown score is less than remaining score
if (missedScore > score)
{
// Valid dart, take from score
score -= missedScore;
}
else
{
// Invalid throw - BUST
//cout << " BUST ";
}
//if (score <0) score=0;
}
}
void makeThrow_20( int &score, int acc )
{
if ( rand()%100 < acc )
{
score -= 20;
}
else
{
//select a random
int missedScore = dartScores[ rand()%20 ];
// Only reduce score when thrown score is less than remaining score
if (missedScore > score)
{
// Valid dart, take from score
score -= missedScore;
}
else
{
// Invalid throw - BUST
//cout << " BUST ";
}
//if (score <0) score=0;
}
}
void makeThrow_Single( int &score, int acc )
{
if ( rand()%100 < acc )
{
score -= 1;
}
else
{
//select a random
int missedScore = dartScores[ rand()%20 ];
// Only reduce score when thrown score is less than remaining score
if (missedScore > score)
{
// Valid dart, take from score
score -= missedScore;
}
else
{
// Invalid throw - BUST
//cout << " BUST ";
}
//if (score <0) score=0;
}
}
void makeThrow_bull( int &score, int acc )
{
if ( rand()%100 < acc )
{
score -= 50;
}
else
{
//select a random
int missedScore = dartScores[ rand()%20 ];
// Only reduce score when thrown score is less than remaining score
if (missedScore > score)
{
// Valid dart, take from score
score -= missedScore;
}
else
{
// Invalid throw - BUST
//cout << " BUST ";
}
//if (score <0) score=0;
}
}
int game(int& score, int acc) {
if (score >= 100)
makeThrow_50(score, acc);
else if (score >= 70)
makeThrow_20(score, 80);
else if (score >= 51)
makeThrow_Single(score, 80);
else
makeThrow_bull(score, 80);
}