Untitled
unknown
plain_text
3 years ago
2.7 kB
7
Indexable
#include <iostream> #include <algorithm> // нужно для функции sort #include <cstdlib> // нужно для функции rand using namespace std; const int N = 10; // размер массива int main() { double arr[N]; // объявляем массив arr типа double размером N // заполняем массив случайными числами в диапазоне [-10.0, 10.0] for (int i = 0; i < N; i++) { arr[i] = (rand() % 21 - 10) / 1.0; // генерируем случайное число от -10 до 10 } double sum = 0; // сумма отрицательных элементов double product = 1; // произведение элементов, расположеных между максимальным и минимальным элементами double max = arr[0]; // максимальный элемент double min = arr[0]; // минимальный элемент int start = 0; // индекс элемента, с которого нужно начать умножение int end = 0; // индекс элемента, на котором нужно закончить умножение // вычисляем сумму отрицательных элементов, максимальный и минимальный элементы, а также индексы элементов, с которых нужно начать и закончить умножение for (int i = 0; i < N; i++) { if (arr[i] < 0) { sum += arr[i]; } if (arr[i] > max) { max = arr[i]; start = i; } if (arr[i] < min) { min = arr[i]; end = i; } } // устанавливаем порядок умножения: сначала нужно умножить элементы с меньшими индексами, потом - с большими if (start > end) { swap(start, end); } // вычисляем произведение элементов, расположенных между максимальным и минимальным элементами for (int i = start + 1; i < end; i++) { product *= arr[i]; } // упорядочиваем элементы массива по увеличению sort(arr, arr + N); cout << "Sum of negative elements: " << sum << endl; cout << "Product of elements between max and min: " << product << endl; cout << "Sorted array: "; for (int i = 0; i < N; i++) { cout << arr[i] << " "; } cout << endl; return 0; }
Editor is loading...