Задача на С++: Массив А вводится с клавиатуры. Сформировать новый массив В, состоящий из положительных элементов массива А и найти в нем наибольший элемент. размер произвольный

Ответы

Ответ дал: agenb7100
0

Ответ:

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

```cpp

#include <iostream>

#include <climits> // Для использования константы INT_MIN

int main() {

   // Ввод размера массива

   int n;

   std::cout << "Введите размер массива: ";

   std::cin >> n;

   // Проверка на корректный ввод размера

   if (n <= 0) {

       std::cerr << "Размер массива должен быть положительным числом.\n";

       return 1; // Возвращаем код ошибки

   }

   // Ввод элементов массива А

   int* A = new int[n];

   std::cout << "Введите элементы массива A:\n";

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

       std::cout << "A[" << i << "]: ";

       std::cin >> A[i];

   }

   // Создание массива B и поиск наибольшего элемента

   int* B = new int[n]; // Массив B не может быть больше массива A, поэтому его размер равен n

   int countB = 0; // Количество положительных элементов в B

   int maxElementB = INT_MIN; // Инициализация максимального элемента B

   // Заполнение массива B положительными элементами из A

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

       if (A[i] > 0) {

           B[countB] = A[i];

           ++countB;

           // Проверка и обновление максимального элемента B

           if (A[i] > maxElementB) {

               maxElementB = A[i];

           }

       }

   }

   // Вывод массива B

   std::cout << "Массив B, состоящий из положительных элементов массива A:\n";

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

       std::cout << "B[" << i << "]: " << B[i] << "\n";

   }

   // Вывод наибольшего элемента B

   if (countB > 0) {

       std::cout << "Наибольший элемент в массиве B: " << maxElementB << "\n";

   } else {

       std::cout << "Массив B не содержит положительных элементов.\n";

   }

   // Освобождение памяти

   delete[] A;

   delete[] B;

   return 0;

}

```

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

Объяснение:

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