chiterist C chiterist Регистрация 17 Май 2013 Сообщения 89 Репутация 0 Спасибо 0 Монет 0 11 Фев 2022 #1 Факториал натурального числа n определяется как произведение всех натуральных чисел от 1 до n включительно и обозначается n!: n!=1∗2∗3∗...∗n Например, 3!=1∗2∗3=6. Напишите программу, которая выводит на экран значение 10! (10 факториал).
Факториал натурального числа n определяется как произведение всех натуральных чисел от 1 до n включительно и обозначается n!: n!=1∗2∗3∗...∗n Например, 3!=1∗2∗3=6. Напишите программу, которая выводит на экран значение 10! (10 факториал).
банзай407 Б банзай407 Регистрация 3 Мар 2013 Сообщения 86 Репутация 0 Спасибо 0 Монет 0 11 Фев 2022 #2 С рекурсивной функцией: #include <iostream> unsigned long long f(unsigned long n) { return (n == 0) ? 1 : n * f(n - 1); } int main() { std::cout << f(10) << std::endl; } C oдной основной функцией main: #include <iostream> int main() { int n, f = 1; for (n = 1; n < 11; n++) f *= n; std::cout << f << std::endl; } Ещё проще (просто вывести значение 10! безо всяких вычислений и без использования явно лишних модулей): #include <iostream> int main() { std::cout << 3628800 << std::endl; } Позитивный голос 0
С рекурсивной функцией: #include <iostream> unsigned long long f(unsigned long n) { return (n == 0) ? 1 : n * f(n - 1); } int main() { std::cout << f(10) << std::endl; } C oдной основной функцией main: #include <iostream> int main() { int n, f = 1; for (n = 1; n < 11; n++) f *= n; std::cout << f << std::endl; } Ещё проще (просто вывести значение 10! безо всяких вычислений и без использования явно лишних модулей): #include <iostream> int main() { std::cout << 3628800 << std::endl; }
Finder F Finder Регистрация 8 Фев 2013 Сообщения 100 Репутация 0 Спасибо 0 Монет 0 11 Фев 2022 #3 #include "iostream" #include "cmath" int main(){std::cout<<long(std::tgamma(11));} Позитивный голос 0
Raxmir R Raxmir Регистрация 4 Июл 2013 Сообщения 89 Репутация 0 Спасибо 0 Монет 0 11 Фев 2022 #4 #include<stdio.h> long int fact(long int n) { while(n-1) return n*fact(n - 1); } int main() { printf("%ld",fact(10)); system("pause"); return 0; } Позитивный голос 0
#include<stdio.h> long int fact(long int n) { while(n-1) return n*fact(n - 1); } int main() { printf("%ld",fact(10)); system("pause"); return 0; }
SplinterGhost S SplinterGhost Регистрация 6 Дек 2013 Сообщения 80 Репутация 0 Спасибо 0 Монет 0 11 Фев 2022 #5 int fact(int n) { if(n<= 0) return 1; else return n * fact(n - 1); } int main() { int n; cin>>n; cout <<n<<"!="<<fact ; system("pause") ; return 0; cout<<n Позитивный голос 0
int fact(int n) { if(n<= 0) return 1; else return n * fact(n - 1); } int main() { int n; cin>>n; cout <<n<<"!="<<fact ; system("pause") ; return 0; cout<<n
GOGA G GOGA Регистрация 2 Авг 2013 Сообщения 76 Репутация 0 Спасибо 0 Монет 0 11 Фев 2022 #6 Раз в задаче сказано вывести именно 10. ну так и выведи 2 * 3 *4 *5 *6 *7 *8 *9 *10 Позитивный голос 0