Форум программистов, компьютерный форум, киберфорум
Наши страницы

С++ для начинающих

Войти
Регистрация
Восстановить пароль
 
azimjon-9595
-4 / 0 / 0
Регистрация: 03.01.2016
Сообщений: 5
#1

Нахождение двойного факториала заданного числа N - C++

03.01.2016, 20:16. Просмотров 426. Ответов 3
Метки нет (Все метки)

Дано целое число N (> 0). Найти двойной факториал N:
N!! = N·(N–2)·(N–4)·…
(последний сомножитель равен 2, если N — четное, и 1, если N —
нечетное). Чтобы избежать целочисленного переполнения, вычислять это
произведение с помощью вещественной переменной и вывести его как
вещественное число.

Добавлено через 17 минут
решите
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
03.01.2016, 20:16
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Нахождение двойного факториала заданного числа N (C++):

Написать программу для вычисления двойного факториала числа - C++
2) написать программу для вычисления двойного факториала числа n!!=n*(n-2)*(n-4)*(n-6)... Число n вводится с клавиатуры.

Описать рекурсивные функции вычисляющие значения факториала и двойного факториала - C++
Написать блок схему и программу согласно заданию. Описать рекурсивные функции Fact(n) и Fact2(N) вещественного типа, вычисляющие значения...

Нахождение факториала: для заданного N найти последнюю отличную от нуля цифру - C++
Факториалом натурального числа N (обозначается как N!) называется произведение всех натуральных чисел от 1 до N. Например, 5! = 1*2*3*4*5 =...

C++ нахождение факториала числа n с вводом из файла - C++
Здравствуйте! В общем мне нужно написать программку, которая считала бы факториал числа n типа int и чтобы число для расчета бралось из...

Вычисление двойного факториала - C++
Помогите пожалуйста не как не пойму, само задание: Вычисление двойного факториала числа n!!=n*(n-2)*(n-4)*(n-6) и тд... Число n вводится с...

Вычислить факториала заданного числа используя do или while - C++
С помощью цикла «пока» или цикла «до» написать программу вычисления факториала заданного целого числа.

3
zss
Модератор
Эксперт С++
6536 / 6098 / 2008
Регистрация: 18.12.2011
Сообщений: 15,864
Завершенные тесты: 1
03.01.2016, 20:48 #2
C++
1
2
3
4
5
6
7
8
9
int fact2(int n)
{
    if(n < 0) // если пользователь ввел отрицательное число
        return 0; // возвращаем ноль
    if (n <= 1) // если пользователь ввел ноль,
        return 1; // возвращаем факториал от нуля
    // Во всех остальных случаях
    return n * fact(n - 2); // делаем рекурсию.
}
Источник
C++ нахождение факториала числа n с вводом из файла
0
Байт
Эксперт C
16564 / 10834 / 1649
Регистрация: 24.12.2010
Сообщений: 20,940
03.01.2016, 20:53 #3
Цитата Сообщение от azimjon-9595 Посмотреть сообщение
Чтобы избежать целочисленного переполнения, вычислять это
произведение с помощью вещественной переменной и вывести его как
вещественное число.
C++
1
2
3
4
5
6
7
8
9
double fact2(int n)
{
    if(n < 0) // если пользователь ввел отрицательное число
        return 0; // возвращаем ноль
    if (n <= 1) 
        return 1; 
    // Во всех остальных случаях
    return n * fact(n - 2); // делаем рекурсию.
}
0
SergioO
95 / 184 / 63
Регистрация: 13.12.2015
Сообщений: 1,000
03.01.2016, 21:27 #4
даже при N=100, N!! =100!! = (1*2*3*...*99*100)!, тк 10*20*...*90*100 уже даст 11 нулей в конец числа ), а это 1 00 000 000 000 и это малая часть числа, а 100 000 000 000! сто миллиардов факториал - дохринилиард. только перемножать блоками и писать в файл - никакого стандартного типа не хватит.
0
03.01.2016, 21:27
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
03.01.2016, 21:27
Привет! Вот еще темы с ответами:

Описать рекурсивную функцию, вычисляющую значение двойного факториала - C++
Описать рекурсивную функцию Fact2(N) вещественного типа,вычисляющую значение двойного факториала N!! = N*(N-2)*(N-4)*... (N&gt;0 - параметр...

Нахождение суммы цифр заданного трехзначного числа - C++
условие задачи: найдите сумму цифр заданного трехзначного числа.

Нахождение заданного числа в массиве(не получается прокручивать цикл do while) - C++
Не пойму почему не прокручивается цикл ваил ведь условие(оно такое ради избежания лишних циклов) вроде-бы нормальное то что нужно! вот...

Нахождение цифрового корня заданного числа (оптимизировать код) - C++
Здравствуйте! Вот интересная задачка на циклы. Но во многих тестах по времени не проходит...Что я делаю не так?:( Условие: ...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
4
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru