• Предмет: Информатика
  • Автор: taniyham
  • Вопрос задан 4 месяца назад

Дано одновимірний масив. Збільшити у 2 рази елементи, які розміщені у масиві між найбільшим та найменшим його елементами.
C++

Ответы

Ответ дал: lyudmilasokolova2006
1

Ответ:

Ось приклад коду на C++, який реалізує дану задачу:

#include <iostream>

#include <algorithm>

using namespace std;

int main() {

const int N = 10; // розмір масиву

int a[N] = {2, 8, 3, 7, 1, 9, 5, 4, 6, 0}; // масив з випадковими значеннями

int max_idx = distance(a, max_element(a, a + N)); // індекс найбільшого елементу масиву

int min_idx = distance(a, min_element(a, a + N)); // індекс найменшого елементу масиву

if (max_idx > min_idx) {

for (int i = min_idx + 1; i < max_idx; i++) {

a[i] *= 2; // збільшуємо значення елемента в 2 рази

}

} else {

for (int i = max_idx + 1; i < min_idx; i++) {

a[i] *= 2; // збільшуємо значення елемента в 2 рази

}

}

// виводимо змінений масив на екран

for (int i = 0; i < N; i++) {

cout << a[i] << " ";

}

cout << endl;

return 0;

}

Объяснение:

Спочатку ми знаходимо індекс найбільшого та найменшого елементів масиву за допомогою стандартних функцій max_element та min_element. Далі, якщо індекс найбільшого елемента менший за індекс найменшого елемента, ми збільшуємо значення елементів масиву між цими індексами. Якщо ж індекс найменшого елемента менший за індекс найбільшого елемента, то збільшуємо значення елементів між ними. Нарешті, виводимо змінений масив на екран.

МОЖНО ЛУЧШИЙ ОТВЕТ

Вас заинтересует