Умножение ненулевых элементов массива - C (СИ)
Формулировка задачи:
Дано одномерный массив, что состоит c N действителных элементов
-Заполнить массив рандомными числами
-Найти минималный позитивный элемент
- Вычислить умножение не нулевых элементов массива
-Вывести не нулевые элементы на экран в обратном порядке
Решение задачи: «Умножение ненулевых элементов массива»
textual
Листинг программы
#include <stdio.h> #include <time.h> #include <Windows.h> #define N 10 #define LOW_BORDER -100 #define HIGH_BORDER 100 int main(int argc, char *argv[]) { srand(time(NULL)); int arr[N], min, i, Product = 1; int temp_element = 0; printf("Randomly generated array of %d elements:\n", N); for (i = 0; i < N; i++) { arr[i] = rand() % (HIGH_BORDER + 1 - LOW_BORDER) + LOW_BORDER; printf("%2d ", arr[i]); if (arr[i] > 0) min = arr[i]; } for (i = 0; i < N; i++) { if (arr[i] > 0) { if(arr[i] < min) { min = arr[i]; } } if (arr[i] != 0) { Product *= arr[i]; } } printf("\n\n\nNon zero elements in a reverse order\n"); for (i = N-1; i >= 0; i--) { if (arr[i] != 0) printf("%2d ", arr[i]); } printf("\n\nThe product is equal: %d\n", Product); printf("\n\nThe minimal positive element: %d\n", min); system("pause"); return 0; }
Объяснение кода листинга программы
В этом коде происходит следующее:
- Сгенерируйте случайный массив целых чисел в диапазоне от -100 до 100 с помощью функции
rand()
. - Найдите минимальный ненулевой элемент массива, которым занимается переменная
min
. - Умножьте все ненулевые элементы массива, используя переменную
Product
. - Выведите массив в обратном порядке, показывая только ненулевые элементы.
- Выведите произведение всех ненулевых элементов массива.
- Выведите минимальный ненулевой элемент массива.
- Подождите, пока пользователь не нажмет любую клавишу, чтобы остановить программу. Вот список переменных и их значений:
arr
- массив из 10 целых чисел.min
- минимальный ненулевой элемент массива.i
- счетчик для двух циклов.Product
- произведение всех ненулевых элементов массива.temp_element
- временный элемент, используемый в процессе поиска минимального ненулевого элемента.N
- количество элементов в массиве.LOW_BORDER
иHIGH_BORDER
- границы диапазона случайных чисел.time(NULL)
- текущее время, используемое для инициализации генератора случайных чисел.srand(time(NULL))
- инициализация генератора случайных чисел с использованием текущего времени.printf
- функция для вывода информации на консоль.system(
pause)
- приостановка программы до нажатия клавиши пользователем.return 0
- завершение программы.
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д