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

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

Войти
Регистрация
Восстановить пароль
 
Chelioss
179 / 179 / 4
Регистрация: 08.01.2011
Сообщений: 1,133
#1

нужен тип целого числа для числа 19!= 121 645 100 408 832 000 - C++

18.01.2011, 20:51. Просмотров 841. Ответов 17
Метки нет (Все метки)

Нужно посчитать сумму цифр целого положительного числа.

C++
1
2
3
4
5
6
7
8
9
10
double summacifr(double chislo)
{
    double summa=0;
    while(chislo)
    {
        summa+=chislo%10;
        chislo/=10;
    }
    return summa;
}
Дело в том, что для операции остатка нужно целое число, а такое число в int и unsigned long не вмещается.

Хотя программа работает с таким числом. Почему? Разве в unsigned long вмещается не больше 4294967295?
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
18.01.2011, 20:51     нужен тип целого числа для числа 19!= 121 645 100 408 832 000
Посмотрите здесь:

Используя арифметические операции, определить и вывести сумму цифр трехзначного целого числа k (100<=k<=255) - C++
1)осуществить: - проверку корректности по типу вводимых значений; - проверку диапазонов вводимых значений. -Используя...

Из целого числа получить новое, состоящее из нечетных цифр числа (2315663 -> 3153) - C++
Из целого числа получить новое, состоящее из нечетных цифр числа (2315663 -&gt; 3153) на DevC++. Заранее спасибо

Найти порядок n для целого числа k - C++
2. Найти порядок n для целого числа k &lt; {2}^{n} при помощи операций сдвига.

Для заданного целого числа n вычислить - C++
Для заданного целого числа n вычислить \sum_{i=1}^{n}\frac{100}{{i}^{2}}+3*i Помогите с програмой пожалуй, зарание спасибо

Найти квадрат (для целого) и куб (для вещественного числа) - C++
ПОМОГИТЕ ПОЖАЛУЙСТА РАЗОБРАТЬСЯ С КОДОМ, ТОЧНЕЕ С ФУНКЦИЕЙ,КОТОРАЯ ЭТО ВОЗВЕДЕНИЕ В КВАДРАТ ИЛИ КУБ ОСУЩЕСТВЛЯЕТ. Если мы вводим целое...

Составьте программу, которая для целого числа k (от 1 до 99) - C++
Помогите PLEASE. Составьте программу, которая для целого числа k (от 1 до 99), введенного вами, напечатает фразу «Мне k лет», при этом в...

Для заданного целого числа n вычислить значение суммы - C++
Для заданного целого числа n вычислить значение суммы:\sum_{{i}_{1}}^{n}\sum_{{i}_{2}}^{n}...\sum_{{i}_{n}}^{n}\frac{1}{{i}_{1}+...{i}_{n}}

После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
deadlock
375 / 354 / 8
Регистрация: 14.12.2010
Сообщений: 1,265
18.01.2011, 20:58     нужен тип целого числа для числа 19!= 121 645 100 408 832 000 #2
помещай его в массив char, потом при суммировании преобразуешь каждый символ в число и суммируешь

char chislo[]="121645100408832000";
Chelioss
179 / 179 / 4
Регистрация: 08.01.2011
Сообщений: 1,133
18.01.2011, 21:05  [ТС]     нужен тип целого числа для числа 19!= 121 645 100 408 832 000 #3
офигеть, а более простого способа нет?)))
deadlock
375 / 354 / 8
Регистрация: 14.12.2010
Сообщений: 1,265
18.01.2011, 21:05     нужен тип целого числа для числа 19!= 121 645 100 408 832 000 #4
функция конвертер:
C++
1
2
3
4
int CharToInt(char C)
{
   if (C>=48&&C<=57) return C-48;
}
asics
Freelance
Эксперт C++
2846 / 1783 / 144
Регистрация: 09.09.2010
Сообщений: 3,842
18.01.2011, 21:08     нужен тип целого числа для числа 19!= 121 645 100 408 832 000 #5
deadlock, Или так
C++
1
2
3
4
int char_to_int(char ch)
{
    return ch - '0';
}
easybudda
Эксперт С++
9456 / 5469 / 927
Регистрация: 25.07.2009
Сообщений: 10,495
18.01.2011, 21:09     нужен тип целого числа для числа 19!= 121 645 100 408 832 000 #6
Цитата Сообщение от deadlock Посмотреть сообщение
помещай его в массив char
да оно и в unsigned long long (он же uint64_t) поместится...
deadlock
375 / 354 / 8
Регистрация: 14.12.2010
Сообщений: 1,265
18.01.2011, 21:10     нужен тип целого числа для числа 19!= 121 645 100 408 832 000 #7
Цитата Сообщение от asics Посмотреть сообщение
deadlock, Или так
C++
1
2
3
4
int char_to_int(char ch)
{
    return ch - '0';
}
а проверить, что это цифра не мешает
Chelioss
179 / 179 / 4
Регистрация: 08.01.2011
Сообщений: 1,133
18.01.2011, 21:11  [ТС]     нужен тип целого числа для числа 19!= 121 645 100 408 832 000 #8
А такой тип unsigned long long есть?
Проверил, все таки с int не работает правильно.
asics
Freelance
Эксперт C++
2846 / 1783 / 144
Регистрация: 09.09.2010
Сообщений: 3,842
18.01.2011, 21:13     нужен тип целого числа для числа 19!= 121 645 100 408 832 000 #9
Цитата Сообщение от deadlock Посмотреть сообщение
а проверить, что это цифра не мешает
Так програма по дефолту подразумивает роботу з числами, так-что проверка никчему.
deadlock
375 / 354 / 8
Регистрация: 14.12.2010
Сообщений: 1,265
18.01.2011, 21:14     нужен тип целого числа для числа 19!= 121 645 100 408 832 000 #10
Цитата Сообщение от Chelioss Посмотреть сообщение
А такой тип unsigned long long есть?
Проверил, все таки с int не работает правильно.
размер int 4 байта, а unsigned long long 8 байт, то есть можно адресовать число максимум 18446744073709551615
Chelioss
179 / 179 / 4
Регистрация: 08.01.2011
Сообщений: 1,133
18.01.2011, 21:15  [ТС]     нужен тип целого числа для числа 19!= 121 645 100 408 832 000 #11
Такой тип есть, спасибо.
deadlock
375 / 354 / 8
Регистрация: 14.12.2010
Сообщений: 1,265
18.01.2011, 21:15     нужен тип целого числа для числа 19!= 121 645 100 408 832 000 #12
Цитата Сообщение от asics Посмотреть сообщение
Так програма по дефолту подразумивает роботу з числами, так-что проверка никчему.
думается, что число будут с клавиатуры вводить, а не в тексте программы, поэтому нужно
Chelioss
179 / 179 / 4
Регистрация: 08.01.2011
Сообщений: 1,133
18.01.2011, 21:16  [ТС]     нужен тип целого числа для числа 19!= 121 645 100 408 832 000 #13
В ВУЗе ваши способы не прокатят, но все равно спасибо)
asics
Freelance
Эксперт C++
2846 / 1783 / 144
Регистрация: 09.09.2010
Сообщений: 3,842
18.01.2011, 21:17     нужен тип целого числа для числа 19!= 121 645 100 408 832 000 #14
deadlock, В таком случае, проверка нужна не в функции-конвертере, а сразу после ввода числа.Потому что, какой резон работать не понятно с чем.
M128K145
Эксперт С++
8283 / 3502 / 143
Регистрация: 03.07.2009
Сообщений: 10,706
18.01.2011, 21:37     нужен тип целого числа для числа 19!= 121 645 100 408 832 000 #15
Chelioss, посмотрите Найти факториал числа
Здесь вы можете подсчитать факториалы больших чисел, а также написать небольшой метод для решения вашей задачи. Т.к. в решении значение факториала хранится в виде массива, значение каждого элемента которого не превышает 999 - вы можете обойтись обычным интом
easybudda
Эксперт С++
9456 / 5469 / 927
Регистрация: 25.07.2009
Сообщений: 10,495
18.01.2011, 21:39     нужен тип целого числа для числа 19!= 121 645 100 408 832 000 #16
Цитата Сообщение от Chelioss Посмотреть сообщение
А такой тип unsigned long long есть?
нет, я его от балды придумал!
нужен тип целого числа для числа 19!= 121 645 100 408 832 000
Chelioss
179 / 179 / 4
Регистрация: 08.01.2011
Сообщений: 1,133
18.01.2011, 21:47  [ТС]     нужен тип целого числа для числа 19!= 121 645 100 408 832 000 #17
А какая разница между unsigned long long и unsigned long long int?
M128K145
Для первого курса и 4 лабораторной такое не сойдет)
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
18.01.2011, 23:32     нужен тип целого числа для числа 19!= 121 645 100 408 832 000
Еще ссылки по теме:

Для целого числа найти сумму нечетных цифр - C++
Для целого числа найти сумму нечетных цифр в C++. Ребята,кто может помочь мне с кодом.Недавно только начали работать в С++,так что в нем я...

Для заданного целого числа n вычислить значение суммы - C++
Задача: Для заданного целого числа n вычислить значение суммы: В знаменателе сумма всевозможных комбинаций i1+i2+...+in Для n=3...

Фильтр для ввода целого числа в данном диапазоне - C++
# include &lt;iostream&gt; # include &lt;locale&gt; using namespace std; int main () { setlocale (LC_ALL,&quot;Russian&quot;); int number; ...

Как осуществить ввод числа, не зная какой тип числа будет введён? - C++
И не объявляя вводимую переменную как double...

Для вводимого целого положительного числа определите его двоичный эквивалент - C++
Профессионалы помоги пожалуйста!) Скинули лабораторные нужно коменты к строчкам чтобы знать, что ответить на вопрос &quot;что тут?&quot; ...


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

Или воспользуйтесь поиском по форуму:
ForEveR
В астрале
Эксперт С++
7969 / 4731 / 320
Регистрация: 24.06.2010
Сообщений: 10,539
Завершенные тесты: 3
18.01.2011, 23:32     нужен тип целого числа для числа 19!= 121 645 100 408 832 000 #18
Chelioss, Никакой
Yandex
Объявления
18.01.2011, 23:32     нужен тип целого числа для числа 19!= 121 645 100 408 832 000
Ответ Создать тему
Опции темы

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