Если х равно одному из чисел N!/1, N!/2, N!/3, ...,N!/N, то вывести на экран сообщение "Да", иначе - сообщение "Нет" - C (СИ)

Узнай цену своей работы

Формулировка задачи:

Даны натуральные числа х и N(x>N). Если х равно одному из чисел N!/1, N!/2, N!/3, ...,N!/N, то вывести на экран сообщение "Да", иначе - сообщение "Нет".

Решение задачи: «Если х равно одному из чисел N!/1, N!/2, N!/3, ...,N!/N, то вывести на экран сообщение "Да", иначе - сообщение "Нет"»

textual
Листинг программы
#include <stdio.h>
 
int fact(int n)
{
    if(n==1) return n;
    return fact(n-1)*n;
}
 
int main()
{
int x,N,i;
printf("Enter x: ");
scanf("%d",&x);
printf("Enter N: ");
scanf("%d",&N);
for(i=N;i>0;i--)
{
    if(x==fact(i)/i)
    {
        printf("DA");
        break;
    }
}
if(i==0)
    printf("NET");
 
return 0;
}

Объяснение кода листинга программы

Код выполняет вычисление факториала числа N и затем перебирает все числа от N до 1. Для каждого числа проверяется, равно ли оно x, поделенному на факториал этого числа. Если это так, то выводится сообщение DA и цикл прерывается. Если после проверки всех чисел сообщение DA не выведено, то выводится сообщение NET.

ИИ поможет Вам:


  • решить любую задачу по программированию
  • объяснить код
  • расставить комментарии в коде
  • и т.д
Попробуйте бесплатно

Оцени полезность:

7   голосов , оценка 3.714 из 5
Похожие ответы