Спасибо каждому из вас за вашу помощь заранее.C++: проблемы с поиском наибольшего значения в массиве
Проблема первая:
я писал программу сегодня, которая должна отображать максимальное значение из 10 значений, которые пользователь будет входным. Тем не менее, всякий раз, когда я тестирую программу и вводимые значения, она, кажется, отображает более одного «наибольшего значения». Я думаю, что это может быть связано с моим чрезмерным использованием функций cout и cin. Похоже, что программа переходит в список значений, вводимых пользователем, и выбирает самые высокие из них, идущие вниз по списку.
Например:
2, 4, 5, 1, 7, 8, 3, 2, 9
Было бы выбрать 5, 8 и 9 в качестве самых высоких значений.
Проблема вторая:
мне было интересно, если есть способ, чтобы упростить код, который я написал ниже (в ссылке на соиЬ и CIN функций). Такие, как, что делает функцию, пока и имеющий функцию, как:
while (something)
cout << "Please input the number of pancakes person " << x << "has ate.\n"
cin >> something // Either x or a pancakes function. I tried both.
count++ // Sorry, I would just assume that the count function would be used in this scenario.
Задача 3:
Что касается наибольшего вывода значения в моей программе, может быть, что я испортил что-то с массивом?
Код:
#include <iostream>
using namespace std;
int main()
{
int pancakes [10];
int x;
int largestValue = 0;
cout << "Please input the number of pancakes person 1 has ate.\n";
cin >> pancakes[0];
cout << "Please input the number of pancakes person 2 has ate.\n";
cin >> pancakes[1];
cout << "Please input the number of pancakes person 3 has ate.\n";
cin >> pancakes[2];
cout << "Please input the number of pancakes person 4 has ate.\n";
cin >> pancakes[3];
cout << "Please input the number of pancakes person 5 has ate.\n";
cin >> pancakes[4];
cout << "Please input the number of pancakes person 6 has ate.\n";
cin >> pancakes[5];
cout << "Please input the number of pancakes person 7 has ate.\n";
cin >> pancakes[6];
cout << "Please input the number of pancakes person 8 has ate.\n";
cin >> pancakes[7];
cout << "Please input the number of pancakes person 9 has ate.\n";
cin >> pancakes[8];
cout << "Please input the number of pancakes person 10 has ate.\n";
cin >> pancakes[9];
for (int x = 0; x < 10; x++)
if (pancakes[x] > largestValue)
{
largestValue = pancakes[x];
cout << "The person who ate the most pancakes ate: " << largestValue << " pancakes.\n";
}
return 0;
}
Как бы ваш код посмотреть, если там было 100 человек едят блины? –
Вот почему я спросил, как это сделать, где я могу сказать: «Пожалуйста, введите количество блинов, которых хелел». (см. выше) –
Вы, очевидно, знаете концепцию цикла for. Примените это к части «cout/cin» вашей программы. –