Вычислить факториал - C (СИ) (76734)
Формулировка задачи:
заданные натуральные числа m и n. получить
Вычисление факториала описать с помощью функции С
Решение задачи: «Вычислить факториал»
textual
Листинг программы
#include <stdio.h>
double F(int n, int m) {
double ans = 1.0;
int buf;
if (n < m) {
buf = n;
n = m;
m = buf;
}
int i;
for (i = 1; i <= m; ++i)
ans = ans * i / (i + n);
return ans;
}
int main () {
int n, m;
printf ("Enter n & m: ");
scnaf ("%d %d", &n, &m);
printf ("Answer is %lf\n", F(n, m));
return 0;
}
Объяснение кода листинга программы
Вычисление факториала с помощью данного кода:
- Включаем стандартную библиотеку, которая содержит функции для ввода/вывода данных.
- Определяем функцию F(n, m), которая принимает два целых числа n и m.
- Инициализируем переменную ans равной 1.0. Она будет использоваться для хранения результата вычисления факториала.
- Инициализируем переменную buf значением n. Она будет использоваться для временного хранения значения n.
- Проверяем условие n < m. Если это условие истинно, то меняем значения n и m местами с помощью операции присваивания и обмена (buf = n; n = m; m = buf;).
- Инициализируем переменную i для цикла.
- Запускаем цикл от 1 до m. На каждой итерации умножаем значение ans на i и делим на (i + n).
- Возвращаем значение ans.
- В функции main() запрашиваем у пользователя ввод двух целых чисел n и m**.
- Вызываем функцию F(n, m) и выводим результат на экран.
- Возвращаем 0, чтобы указать, что программа успешно завершилась.