Вычислить произведение элементов массива - C (СИ)
Формулировка задачи:
Всем привет, нужна помощь!
Заполнить одномерный массив целыми числами. Вычислить произведение элементов массива, стоящих между максимальным и минимальным элементами.
Заранее огромное спасибо!
Решение задачи: «Вычислить произведение элементов массива»
textual
Листинг программы
#include <stdio.h> #include <stdlib.h> #include <time.h> #define SIZE 20 int main(){ //объявляние массима размером SIZE int array[SIZE]; //счетчик индексов массива int count_ind; // сумма элементов между макс и мин элемент int sum_elem_ar = 0; //копия идекса миним элемента int copy_min_ind; // --//-- маск элемента int copy_max_ind; //мин int min; //max int max; int temp; // записываем случайные величины в массив for(count_ind = 0; count_ind <= SIZE - 1; count_ind++){ //функция генерации случайных числе srand((unsigned)count_ind); array[count_ind] = 1 + (rand() % ++count_ind); } min = array[SIZE]; max = array[0]; //ищем макс и мин элементы for(count_ind = 0; count_ind <= SIZE - 1; count_ind++){ if(min < array[count_ind]){ min = array[count_ind]; copy_min_ind = count_ind; } if(max > array[count_ind]){ max = array[count_ind]; copy_max_ind = count_ind; } if(copy_max_ind < copy_min_ind){ temp = copy_min_ind; copy_min_ind = copy_max_ind; copy_max_ind = temp; } } //ищем сумму элементов min and max for(count_ind = copy_min_ind; count_ind < copy_max_ind; count_ind++) sum_elem_ar += array[count_ind]; printf("Sum_elem_ar = %d", sum_elem_ar); return 0; }
Объяснение кода листинга программы
В этом коде выполняются следующие действия:
- Сборка массива: создается массив размером SIZE, в который затем записываются случайные числа, сгенерированные функцией rand().
- Поиск минимума и максимума: ищется минимальное и максимальное значение в массиве.
- Поиск суммы элементов между минимальным и максимальным элементами: используя найденные индексы минимального и максимального элементов, происходит итерация по элементам массива и суммируются значения элементов.
- Вывод результата: выводится значение суммы элементов. Список действий в коде:
- Объявление массива размером SIZE.
- Объявление переменных:
- count_ind (счетчик индексов массива)
- sum_elem_ar (сумма элементов между макс и мин элемент)
- copy_min_ind (копия индекса миним элемента)
- copy_max_ind (копия индекса макс элемента)
- min (мин)
- max (макс)
- temp (временная переменная)
- Запись случайных чисел в массив.
- Поиск минимума и максимума массива.
- Поиск суммы элементов между минимальным и максимальным элементами.
- Вывод результата.
Пояснение к коду:
- В строке 19-22 происходит сортировка индексов min и max элементов, если они не упорядочены. Это необходимо для корректного вычисления суммы элементов.
- В цикле с 24 по 27 происходит итерация по элементам массива от min до max и суммирование их значений.
- Значение sum_elem_ar выводится в строке 28.
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д