Страницы

Поиск по вопросам

среда, 22 мая 2019 г.

Разбиение кода на функции. С++

Есть код программы, которая позволяет ввести динамический массив, а затем 1. Упорядочивает элементы массива по возрастанию. 2. Находит сумму отрицательных элементов массива. 3. Находит произведение элементов массива, расположенных между максимальным и минимальным элементами. Не получается грамотно разбить код на многофайловый проект.
#include "stdafx.h" #include using namespace std; double *p, n; double pr = 1; int sum, min = 1000000, max = -1000000, i_, j_;
int main() { setlocale(LC_ALL, "Russian"); cout << "Введите количество элементов: "; cin >> n; p = new double[n];
cout << "Введите элементы массива: "; for (int i = 0; i < n; i++) cin >> p[i];
for (int i = 0; i < n; i++) { if (p[i] < 0) sum += p[i]; if (max < p[i]) { max = p[i]; i_ = i; } if (min > p[i]) { min = p[i]; j_ = i; } }
if (i_ > j_) swap(i_, j_); for (int i = (i_ + 1); i < j_; i++) pr *= p[i];
for (int i = 0; i < n; i++) for (int j = i; j > 0 && p[j - 1] > p[j]; j--) swap(p[j], p[j - 1]);
cout << "Отсртированный массив: "; for (int i = 0; i < n; i++)
cout << p[i] << " "; cout << endl; cout << "Сумма отрицатльных элементов: " << sum < system("pause"); return 0; }


Ответ

Ты уже большую часть ответа написал в вопросе.
Нужно выделить такие функции и соответствующим образом их вызвать:
Ввести динамический массив Упорядочивает элементы массива по возрастанию. Находит сумму отрицательных элементов массива. Находит позицию минимального элемента Находит положение максимального элемента Находит произведение элементов массива между заданными позициями Выводит массив

Комментариев нет:

Отправить комментарий