Мое задание - рассчитать средние боулинг. У меня пять игроков и три игры для каждого игрока. В настоящее время у меня две петли, одна для игрока, а другая для номера игры. Мне нужно показать средние игроки в конце каждого из этих циклов, а команды - в конце этого цикла.Расчет двух разных средних значений в C++
Я исправил свой код и заменил старый код на новый код ниже. Я играл с ним, прежде чем я проверил здесь, чтобы увидеть все комментарии и т. Д., И я решил это к тому времени.
Но спасибо всем!
#include <iostream>
using namespace std;
int main()
{
//DECLARATIONS
const int PLAYER_NUMBER = 5; //There are five players total
const int GAME_NUMBER = 3; //There are three games total
const int MIN = 0; //Min number
const int MAX = 300; //Max number
double* playerScore; //The players' score of current game
double playerAverage = 0; //The current players' average
double teamAverage = 0; //The teams' average
//INPUT
for (int currentPlayer = 0; currentPlayer < PLAYER_NUMBER; currentPlayer++)
{//Set the current player number
for (int currentGame = 0; currentGame < GAME_NUMBER; currentGame++)
{//Set the current game number
//Get scores
cout << "For Player " << (currentPlayer + 1) << ", enter score for game " << (currentGame + 1) << ": ";
cin >> playerScore[currentGame];
if(playerScore[currentGame] < MIN || playerScore[currentGame] > MAX)
{//Check range
cout << "The score must be between 0 and 300!\n";
currentGame--; //If there is an error, subtract the game number by one
}//End If statement
playerAverage += playerScore[currentGame];
if(currentGame == 2)
{//Current player average
cout << endl << "The average for player " << (currentPlayer + 1) << " is: " << (playerAverage/3) << endl << endl;
teamAverage += playerAverage;
playerAverage = 0;
}//End If statement
}//End game for-statement
}//End player for-statement
cout << endl << "The average for the team is: " << (teamAverage/15) << endl << endl;
//ENDING
system("Pause");
return 0;
}//Close main
Но, для тех, кто еще там, есть способ просто терминал остается открытым, и не прибегая к использованию «SYS (» PAUSE «);»? Я действительно ненавижу использовать его.
Если CIN выполняется успешно, строки ниже ее выполнения. Я подозреваю, что вы видите артефакт отладчика, который заставляет его казаться, что cin выполняет, а не строки ниже. –
Спасибо всем! Я играл с кодом сразу после того, как я разместил его, и я как-то заставил его работать, перемещая несколько строк. Я думаю, что это может быть случайностью. В следующий раз, когда я перейду к кодированию чего-то вроде этого, я обязательно испорчу его: P –
Иногда проблема в том, что вы забыли сохранить исходный файл или не перекомпилировались автоматически при перестройке. Эти вещи могут быть очень неприятными. –