Вопрос задан 09.07.2023 в 17:09. Предмет Информатика. Спрашивает Олашин Настя.

C++ Дан массив из N действительных элементов. a) Найти максимальный элемент второй половины

массива и его порядковый номер. б) Упорядочить элементы массива в порядке возрастания, используя сортировку обменом.
0 0
Перейти к ответам

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

Внимание! Ответы на вопросы дают живые люди. Они могут содержать ошибочную информацию, заблуждения, а также ответы могут быть сгенерированы нейросетями. Будьте внимательны. Если вы уверены, что ответ неверный, нажмите кнопку "Пожаловаться" под ответом.
Отвечает Пасканная Дарья.

#include <iostream>

#include <cmath>

using namespace std;

signed main() {

   int n;

   cin >> n;

   double a[n];

   for(int i = 0; i < n; i++)

       cin >> a[i];

   double mx = -10000000000000;

   for(int i = n/2; i < n; i++)

       mx = max(mx,a[i]);

   for(int i = 0; i < n-1; i++)

       for(int j = 0; j < n - i - 1; j++)

           if(a[j] > a[j+1])

           {

               double temp = a[j];

               a[j] = a[j+1];

               a[j+1] = temp;

           }

   cout << "maximal element of the second half: " << mx <<"\n";

   cout << "array after sorting: " << "\n";

   for(auto i: a)

       cout << i << " ";

}

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

Конечно, вот пример кода на C++, который решает задачу:

cpp
#include <iostream> #include <algorithm> int main() { const int N = 10; // Размер массива double arr[N] = { 5.2, 3.1, 8.7, 1.0, 6.5, 4.3, 9.8, 2.6, 7.4, 0.9 }; // Пример массива // a) Найти максимальный элемент второй половины массива и его порядковый номер double maxElement = arr[N / 2]; int maxIndex = N / 2; for (int i = N / 2 + 1; i < N; ++i) { if (arr[i] > maxElement) { maxElement = arr[i]; maxIndex = i; } } std::cout << "Максимальный элемент второй половины массива: " << maxElement << std::endl; std::cout << "Порядковый номер максимального элемента: " << maxIndex << std::endl; // б) Сортировка массива обменом (пузырьковая сортировка) for (int i = 0; i < N - 1; ++i) { for (int j = 0; j < N - i - 1; ++j) { if (arr[j] > arr[j + 1]) { std::swap(arr[j], arr[j + 1]); } } } std::cout << "Отсортированный массив:" << std::endl; for (int i = 0; i < N; ++i) { std::cout << arr[i] << " "; } std::cout << std::endl; return 0; }

Примечание:

  • В этом примере размер массива N задан как 10, а сами элементы массива указаны в виде примера. Вы можете изменить их на свои значения.
  • Код выполняет два действия: находит максимальный элемент во второй половине массива и его индекс, а также сортирует массив методом пузырьковой сортировки.
0 0

Похожие вопросы

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

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

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