Top.Mail.Ru
Ответы

Есть ли в С++ функция факториала?

По дате
По Рейтингу
Аватар пользователя
Новичок
16лет

int factorial (int n)
{
int f=1,i;
for(i=2;i<=n;++i)
{
f=f*i;
}
return f;
}

Аватар пользователя
Просветленный
16лет

Для факториала нужно написать специальный класс БОЛЬШООООООГО целого. В обычные 32-битный int влезает факториал только до 12!

Аватар пользователя
Знаток
8лет

да тут можно руками её написать! с использованием рекурсии!
unsigned long factorial(unsigned long n)
{
if(n < 0){return 0;}
if(n == 0){return 1;}
else{n*factorial(n - 1);}
}
всё!

Аватар пользователя
Мастер
2мес

в с++ нет встроенной функции факториала но можно написать свою легко и быстро

Аватар пользователя
Ученик

#include <iostream>
using namespace std;
int main() {
int x;
cin >> x;
for (int i = 1; i <= x; i++) {
int z = 1;
for (int q = 1; q <= i; q++) {
z *= q;
if (q == i) {
cout << z << ' ';
}
}
}
return 0;
}