Форум программистов, компьютерный форум CyberForum.ru

Нужно вычислить факториал 33, 100 и 1000 как можно проще - C++

Восстановить пароль Регистрация
Другие темы раздела
C++ Что такое "терм" http://www.cyberforum.ru/cpp-beginners/thread700679.html
Собственно что такое терм и с чем его едят? В книге Страуструпа в разделе грамматики есть такое понятие ТЕРМ и я никак не пойму что это такое?
C++ Максимальная сумма векторов массива Дан одномерный массив n написать программу,которая вычисляет максимальную из сумм,всех векторов этого массива.Векторы должны иметь не менее двух чисел. Ребята, в понедельник сдавать пожалуйста помогите. Нв С++ http://www.cyberforum.ru/cpp-beginners/thread700667.html
C++ Книги с++
Надо книги для начинающих по С++. для С++
C++ Функция strcpy () - строка должна быть пустой?
Здравствуйте! Возник вопрос: пусть имеются две непустые строки s1 и s2. Правильно ли копировать содержимое строки s2 в строку s1? Или строка s1 должна быть пустой? Проверил, вроде работает и так и так. char *str1 = new char , *str2 = new char ; cin.getline (str1, 25); cin.getline (str2, 50); delete str1; str1 = new char ; strcpy (str1, str2); cout << str2;...
C++ Найти наибольший общий делитель двух чисел http://www.cyberforum.ru/cpp-beginners/thread700638.html
Задача "Длинный НОД" Даны два числа. Найти их наибольший общий делитель. Входные данные Вводятся два натуральных числа, не превышающих 10^9 (запись 10^9 обозначает "10 в 9-й степени", то есть 1000000000). Выходные данные Выведите НОД введенных чисел мой код: #include <iostream> #include <cmath> using namespace std; int main(){ int a,b,nod=1,d=1; cin>>a>>b;...
C++ Результат -1.#IND Доброго времени суток. Выполняю вроде бы простейшее задание, но результат программа выдает странный: #include "stdafx.h" #include <iostream> #include <clocale> #include <cmath> using namespace std; int main () подробнее

Показать сообщение отдельно
-=ЮрА=-
Заблокирован
Автор FAQ
18.11.2012, 14:06     Нужно вычислить факториал 33, 100 и 1000 как можно проще
Цитата Сообщение от Hetrik Посмотреть сообщение
Нужно вычислить фактариал 33, 100
- проще того что внизу думаю невозможно
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
#include <iostream>
using namespace std;
 
double fact(double val)
{
    double ret = 1 < val ? val : 1;
    if(1 < (val -= 1))
        ret *= fact(val);
    return ret;
}
 
int main()
{
    cout<<"100! = "<<fact(100)<<endl;
    return 0;
}
У 1000! порядок превосходит DOUBLE_MAX, 4,02387260077093773543702433923e+2567 т.е нужен больший тип для хранения
Миниатюры
Нужно вычислить факториал 33, 100 и 1000 как можно проще  
 
Текущее время: 02:30. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru