Вопрос задан 24.10.2018 в 03:02. Предмет Информатика. Спрашивает Богданова Арина.

Даны натуральное число n и целые числа a1, a2, ..., an. Найти номер макси- мального и номер

минимального из чисел ai . Если чисел с максимальным или с минимальным значением несколько, то должны быть найдены номера по- следних из них.(решите на с++)
0 0
Перейти к ответам

Ответы на вопрос

Внимание! Ответы на вопросы дают живые люди. Они могут содержать ошибочную информацию, заблуждения, а также ответы могут быть сгенерированы нейросетями. Будьте внимательны. Если вы уверены, что ответ неверный, нажмите кнопку "Пожаловаться" под ответом.
Отвечает Воробьёва Даша.
Пример работы на фотографии
\\\\\\\\\\\\\\\\\\\\\\\
#include <iostream>
using namespace std;
void getN(int &n) {
 bool flag;
 do {
  flag = false;
  cin >> n;
  if (n < 1) {
   cout << "Неправильное число! Повторите ввод: ";
   flag = true;
  }
 } while (flag);
}
int main() {
 setlocale(LC_ALL, "Russian");
 int n; getN(n);
 int *a = new int[n];
 for (int i = 0; i < n; ++i)
  cin >> a[i];
 int minI, maxI;
 minI = maxI = 0;
 for (int i = 1; i < n; ++i) {
  if (a[minI] >= a[i])
   minI = i;
  if (a[maxI] <= a[i])
   maxI = i;
 }
 cout << "!!! Нумерация с 0 до " << n-1 << endl;
 cout << "ID минимального:  " << minI << endl;
 cout << "ID максимального: " << maxI << endl;
 system("pause");
 return 0;
}

0 0
Отвечает нейросеть ChatGpt. Будьте внимательны, ответы нейросети могут содержать ошибочные или выдуманные данные.

Для решения данной задачи на C++ можно использовать следующий алгоритм:

1. Создайте переменные `max_num` и `min_num` и инициализируйте их значениями первого элемента массива `a`. 2. Создайте переменные `max_index` и `min_index` и инициализируйте их значениями 1. 3. Проходите по оставшимся элементам массива `a` с помощью цикла `for`: - Если текущий элемент больше значения переменной `max_num`, обновите `max_num` и `max_index`. - Если текущий элемент меньше значения переменной `min_num`, обновите `min_num` и `min_index`. 4. Выведите значения `max_index` и `min_index`.

Вот пример кода на C++:

```cpp #include using namespace std;

int main() { int n; cout << "Введите количество элементов: "; cin >> n;

int a[n]; cout << "Введите элементы массива: "; for (int i = 0; i < n; i++) { cin >> a[i]; }

int max_num = a[0]; int min_num = a[0]; int max_index = 1; int min_index = 1;

for (int i = 1; i < n; i++) { if (a[i] > max_num) { max_num = a[i]; max_index = i + 1; } if (a[i] < min_num) { min_num = a[i]; min_index = i + 1; } }

cout << "Номер максимального числа: " << max_index << endl; cout << "Номер минимального числа: " << min_index << endl;

return 0; } ```

Примечание: В приведенном коде предполагается, что пользователь вводит корректные значения для количества элементов и элементов массива. Необходимо также учесть, что в данном решении предполагается, что индексы начинаются с 1, а не с 0. Если требуется использовать индексы, начинающиеся с 0, то нужно изменить инициализацию переменных `max_index` и `min_index` на 0, а при выводе добавить 1 к значениям этих переменных.

0 0

Топ вопросов за вчера в категории Информатика

Последние заданные вопросы в категории Информатика

Задать вопрос