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

Сумма факториалов цифр заданного числа - C++

Восстановить пароль Регистрация
 
FL4SH
0 / 0 / 0
Регистрация: 01.12.2010
Сообщений: 12
30.10.2011, 12:16     Сумма факториалов цифр заданного числа #1
Посчитать сумму факториалов цифр заданного числа
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
30.10.2011, 12:16     Сумма факториалов цифр заданного числа
Посмотрите здесь:

Сумма цифр заданного четырехзначного числа делиться на а с остатком b. C++
C++ составить линейную программу (сумма двух первых цифр заданного четырёхзначного числа равна сумме двух его последних цифр)
Сумма каких-либо двух цифр заданного трехзначного натурального числа N равна третьей цифре. C++
Найдите такие натуральные числа, чтобы сумма их цифр, а также сумма цифр следующего за ним числа делилась на 7 C++
C++ Найти простые числа, чтобы сумма их цифр, а также сумма цифр следующего за ним числа, делилась на 7
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
diagon
Higher
 Аватар для diagon
1920 / 1186 / 49
Регистрация: 02.05.2010
Сообщений: 2,925
Записей в блоге: 2
30.10.2011, 12:22     Сумма факториалов цифр заданного числа #2
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
#include <iostream>
 
long long factorial( int n )
{
    int res = 1;
    while ( n > 1 )
        res *= n--;
    return res;
}
 
int main()
{
    long long x, answer = 0;
    std::cin >> x;
    for ( ; x ; x /= 10 )
        answer += factorial( abs(x % 10) );
    std::cout << answer;
}
Mиxaил
 Аватар для Mиxaил
530 / 435 / 37
Регистрация: 10.12.2009
Сообщений: 1,857
30.10.2011, 12:25     Сумма факториалов цифр заданного числа #3
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
#include <iostream>
#include <boost/math/special_functions/factorials.hpp>
 
int main()
{
    unsigned int n = 1234;
    float sum = 0;
 
    while ( n )
    {
        sum += boost::math::factorial < float > ( n % 10 );
        n /= 10;
    }
 
    std::cout << sum << std::endl;
 
    std::cin.get();
    return 0;
}
Thinker
Эксперт C++
 Аватар для Thinker
4215 / 2189 / 150
Регистрация: 26.08.2011
Сообщений: 3,802
Записей в блоге: 5
30.10.2011, 12:30     Сумма факториалов цифр заданного числа #4
Вариант с небольшой оптимизацией, если эту задачу надо решить для нескольких чисел

C
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
#include<stdio.h>
#include<math.h>
#include<conio.h>
 
long fact[10];
 
long Sum(long a)
{
    long sum = 0;
    a = abs(a);
    while (a)
    {
        sum += fact[a%10];
        a /= 10;
    }
    return sum;
}
 
int main()
{
    long i;
    fact[0] = 1;
    for (i = 1; i < 10; i++)
        fact[i] = i*fact[i-1];
    printf("%ld\n", Sum(123));
    printf("%ld\n", Sum(12345));
    getch();
    return 0;
}
isaak
101 / 38 / 9
Регистрация: 17.10.2010
Сообщений: 634
30.10.2011, 15:35     Сумма факториалов цифр заданного числа #5
Михаил у меня ваш код не работал, я его немного подправил:

C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
#include <iostream>
#include <cmath>
 
int main()
{ 
    unsigned int n = 1234;
    
   float sum = 0;
 
    while ( n )
    {
        sum += ( n % 10 );
        n /= 10;
    }
 
    std::cout << sum << std::endl;
 
    std::cin.get();
    return 0;
}
diagon
Higher
 Аватар для diagon
1920 / 1186 / 49
Регистрация: 02.05.2010
Сообщений: 2,925
Записей в блоге: 2
30.10.2011, 15:39     Сумма факториалов цифр заданного числа #6
Цитата Сообщение от isaak Посмотреть сообщение
Михаил у меня ваш код не работал, я его немного подправил:
У вас просто сумма цифр считается. А нужна сумма факториалов цифр.
Mиxaил
 Аватар для Mиxaил
530 / 435 / 37
Регистрация: 10.12.2009
Сообщений: 1,857
30.10.2011, 15:41     Сумма факториалов цифр заданного числа #7
Цитата Сообщение от isaak Посмотреть сообщение
Михаил у меня ваш код не работал, я его немного подправил:
Я использовал библиотеку boost. Немного подправить - не пойдет
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
30.10.2011, 18:59     Сумма факториалов цифр заданного числа
Еще ссылки по теме:

Определить для числа: является ли сумма его цифр двузначным числом; больше ли сумма его цифр числа "а" C++
Сумма цифр заданного числа N C++
Проверить, больше ли сумма цифр заданного четырехзначного числа, чем 10 C++

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

Или воспользуйтесь поиском по форуму:
isaak
101 / 38 / 9
Регистрация: 17.10.2010
Сообщений: 634
30.10.2011, 18:59     Сумма факториалов цифр заданного числа #8
Михаил как ее подключить VS2010?
Yandex
Объявления
30.10.2011, 18:59     Сумма факториалов цифр заданного числа
Ответ Создать тему
Опции темы

Текущее время: 16:33. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru