Работа с циклом (всё уже написано только найти ошибку) - C (СИ)
Формулировка задачи:
Суть программы посчитать F=(M!+N!)/(M+N)!
#include <stdio.h>
#include <stdlib.h>
#include <windows.h>
int main()
{
SetConsoleCP(1251);
SetConsoleOutputCP(1251);
float M,N,Y,F;
int i;
printf("Даны натуральные числа N и M. Вычислить F. \n");
printf("Введите натуральное число N = ");
scanf("%f",&N);
printf("Введите натуральное число M = ");
scanf("%f",&M);
{
Y=M+N;
for (i=1.0;i<=N;i++);
{
N=N*i;
}
for (i=1.0;i<=M;i++);
{
M=M*i;
}
for (i=1.0;i<=Y;i++);
{
Y=Y*i;
}
F=M+N;
}
printf("F = %f ",F);
return 0;
}Решение задачи: «Работа с циклом (всё уже написано только найти ошибку)»
textual
Листинг программы
#include <stdio.h>
#include <stdlib.h>
float factorial(float n)
{
int f = 1;
for(int i = 1; i <= n; i++)
f *= i;
return f;
}
int main()
{
float N, M;
double F ;
printf("Enter N = ");
scanf("%f",&N);
printf("Enter M = ");
scanf("%f",&M);
F = (factorial(N)+factorial(M))/factorial(N+M);
printf("F = %f ", F);
return 0;
}
Объяснение кода листинга программы
- Включаем необходимые заголовочные файлы для работы с функциями ввода-вывода и математическими операциями.
- Определяем функцию расчета факториала с помощью цикла.
- В функции main() объявляем переменные N, M и F типа float для хранения значения числа и double для хранения результата вычисления факториала.
- Выводим сообщение с просьбой ввести значение переменной N.
- Считываем значение переменной N с помощью функции scanf().
- Выводим сообщение с просьбой ввести значение переменной M.
- Считываем значение переменной M с помощью функции scanf().
- Вычисляем результат вычитания факториалов N и M, деленный на факториал суммы N и M.
- Выводим результат вычисления на экран.
- Возвращаем 0, чтобы указать, что программа успешно завершилась.