C++ пользователь вводит данные о прибыли компании за каждый месяц года. После этого пользователь вводит диапазон

C++ пользователь вводит данные о прибыли компании за каждый месяц года. После этого пользователь вводит диапазон месяцев (например, 3 и 6 - поиск производится между 3-м и 6-м месяцем). Требуется определить месяц с наибольшей прибылью и месяц с наименьшей прибылью в указанном диапазоне.
Kote

Kote

Чтобы решить эту задачу, нужно выполнить следующие шаги:

Шаг 1: Создание переменных и ввод данных пользователем
Начнем с создания переменных, чтобы хранить данные о прибыли за каждый месяц. Для этого можно использовать массив из 12 элементов. Попросим пользователя ввести данные о прибыли компании за каждый месяц года. Например:

cpp
#include
using namespace std;

int main() {
const int numMonths = 12;
float profits[numMonths];

// Ввод данных о прибыли за каждый месяц
for (int i = 0; i < numMonths; i++) {
cout << "Введите прибыль за " << i+1 << "-й месяц: ";
cin >> profits[i];
}

// Ввод диапазона месяцев
int startMonth, endMonth;
cout << "Введите начальный месяц: ";
cin >> startMonth;
cout << "Введите конечный месяц: ";
cin >> endMonth;

// Проверка корректности введенного диапазона
if (startMonth < 1 || endMonth > numMonths || startMonth > endMonth) {
cout << "Ошибка: некорректный диапазон месяцев!" << endl;
return 0;
}


Шаг 2: Поиск месяца с наибольшей и наименьшей прибылью
Далее нам нужно найти месяц с наибольшей и наименьшей прибылью в указанном диапазоне. Мы можем использовать цикл для итерации по диапазону месяцев и сравнивать значения прибыли:

cpp
// Начальные индексы для поиска максимальной и минимальной прибыли
int maxProfitIndex = startMonth - 1;
int minProfitIndex = startMonth - 1;

// Поиск месяца с наибольшей и наименьшей прибылью в диапазоне
for (int i = startMonth; i <= endMonth; i++) {
if (profits[i - 1] > profits[maxProfitIndex]) {
maxProfitIndex = i - 1;
}
if (profits[i - 1] < profits[minProfitIndex]) {
minProfitIndex = i - 1;
}
}


Шаг 3: Вывод результатов
Наконец, выведем результаты на экран. Для удобства, предположим, что порядковый номер месяца соответствует его индексу в массиве прибыли:

cpp
// Вывод месяца с наибольшей прибылью
cout << "Месяц с наибольшей прибылью: " << maxProfitIndex + 1 << endl;

// Вывод месяца с наименьшей прибылью
cout << "Месяц с наименьшей прибылью: " << minProfitIndex + 1 << endl;

return 0;
}


Теперь, когда мы полностью реализовали программу, она позволяет пользователю вводить данные о прибыли компании за каждый месяц года, а также задавать диапазон месяцев. Затем программа определяет месяц с наибольшей прибылью и месяц с наименьшей прибылью в указанном диапазоне и выводит результаты на экран.

Вот полный код программы для решения данной задачи на языке C++:

cpp
#include
using namespace std;

int main() {
const int numMonths = 12;
float profits[numMonths];

// Ввод данных о прибыли за каждый месяц
for (int i = 0; i < numMonths; i++) {
cout << "Введите прибыль за " << i+1 << "-й месяц: ";
cin >> profits[i];
}

// Ввод диапазона месяцев
int startMonth, endMonth;
cout << "Введите начальный месяц: ";
cin >> startMonth;
cout << "Введите конечный месяц: ";
cin >> endMonth;

// Проверка корректности введенного диапазона
if (startMonth < 1 || endMonth > numMonths || startMonth > endMonth) {
cout << "Ошибка: некорректный диапазон месяцев!" << endl;
return 0;
}

// Начальные индексы для поиска максимальной и минимальной прибыли
int maxProfitIndex = startMonth - 1;
int minProfitIndex = startMonth - 1;

// Поиск месяца с наибольшей и наименьшей прибылью в диапазоне
for (int i = startMonth; i <= endMonth; i++) {
if (profits[i - 1] > profits[maxProfitIndex]) {
maxProfitIndex = i - 1;
}
if (profits[i - 1] < profits[minProfitIndex]) {
minProfitIndex = i - 1;
}
}

// Вывод месяца с наибольшей прибылью
cout << "Месяц с наибольшей прибылью: " << maxProfitIndex + 1 << endl;

// Вывод месяца с наименьшей прибылью
cout << "Месяц с наименьшей прибылью: " << minProfitIndex + 1 << endl;

return 0;
}


Теперь данный код позволяет решить задачу, определить месяц с наибольшей прибылью и месяц с наименьшей прибылью в указанном диапазоне. В случае, если диапазон месяцев будет некорректным (например, начальный месяц больше конечного или выходит за пределы года), программа выведет сообщение об ошибке, чтобы пользователь мог исправить ввод.
Знаешь ответ?
Задать вопрос
Привет!
hello