Вычислить факториал первого элемента массива, значение которого меньше 8 - C (СИ)
Формулировка задачи:
1. Вычислить факториал первого элемента массива, значение которого меньше 8. Желательно использовать одномерные массивы. Заранее спасибо!
Решение задачи: «Вычислить факториал первого элемента массива, значение которого меньше 8»
textual
Листинг программы
#include <stdio.h>
#define N 5
unsigned int Fact(const int x)
{
return x > 1 ? x * Fact(x - 1) : 1;
}
int main(void)
{
int A[N] = {10, 9, 7, 3, 8}, i;
for (i = 0; i < N && A[i] >= 8; i++);
if (i != N)
printf("%d! = %d\n", A[i], Fact(A[i]));
else
printf("No such");
return 0;
}
Объяснение кода листинга программы
- Подключение стандартной библиотеки для работы с файлами (stdio.h).
- Определение константы N, которая задает размер массива.
- Объявление функции Fact, которая вычисляет факториал числа.
- В функции main создается массив A типа int с пятью элементами.
- Переменная i инициализируется нулем и используется в цикле for для прохода по элементам массива A.
- Условие цикла проверяет, что значение элемента массива больше или равно 8.
- Если условие выполняется, то вычисляется факториал текущего элемента массива с помощью функции Fact и выводится на экран.
- Если условие не выполняется, то выводится сообщение
No such. - Цикл завершается, когда все элементы массива были проверены или когда был найден элемент, удовлетворяющий условию.
- В конце программы возвращается 0, что означает успешное завершение работы программы.