• Нужен код на C++:
    В произвольно заданном одномерном массиве определить два элемента с наибольшими значениями и обнулить все элементы, расположенные между найденными значениями.

Ответы 4

  • При вводе размера массива из 5 чисел и заполняя массив элементами: 5 1 2 3 4 выводится: 5 1 2 3 4
  • При вводе размера массива из 5 чисел и заполняя массив элементами: 5 1 2 3 4 выводится: 5 1 2 3 4
  • Так 5 - наибольшее и 1 - наименьшее. 5 имеет индекс "0", a 1 - "1". Между ними нечего обнулять.
  • #include <iostream>using namespace std;int main(){ int s, i; cout << "s = "; cin >> s; double a[s], m1, m2; int m1i, m2i, f, t; /* Заполнение */ for (i = 0; i < s; i++) { cout << i << ':'; cin >> a[i]; } /* Первый максимум */ m1i = 0; m1 = a[m1i]; for (i = 1; i < s; i++) { if (a[i] > m1) { m1 = a[i]; m1i = i; } } /* Второй максимум */ m2i = 0; m2 = a[m2i]; for (i = 1; i < s; i++) { if (i == m1i) continue; if (a[i] > m2) { m2 = a[i]; m2i = i; } } /* Порядок итерации */ if (m1 > m2) { f = m2i; t = m1i; } else { f = m1i; t = m2i; } for (i = f + 1; i < t; i++) { a[i] = 0; } for (i = 0; i < s; i++) { cout << a[i] << ' '; } return 0;}
  • Добавить свой ответ

Еще вопросы

Войти через Google

или

Забыли пароль?

У меня нет аккаунта, я хочу Зарегистрироваться

How much to ban the user?
1 hour 1 day 100 years