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

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

Войти
Регистрация
Восстановить пароль
 
Рейтинг: Рейтинг темы: голосов - 31, средняя оценка - 4.84
vortexx1
6 / 6 / 2
Регистрация: 06.03.2011
Сообщений: 269
#1

Большие числа - C++

07.07.2011, 11:56. Просмотров 4582. Ответов 11
Метки нет (Все метки)

Здравствуйте. Как в С++ работать с большими числами (600851475143, например)?
Честно гуглил, но там ничего толкового не нашел.

Спасибо.
0
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
07.07.2011, 11:56
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Большие числа (C++):

Очень большие числа: узнать, есть ли остаток от деления одного числа на другое - C++
Требуется узнать, есть ли остаток от деления одного числа на другое. Оба числа много больше int64, ~1000 символов и больше. Я попытался...

Ввести с клавиатуры 10 чисел. Если среди них есть числа большие 15, заменить их на 15. Напечатать все полученные числа. - C++
Помогите решить задачу в Turdo C++, там где используется printf scanf: Ввести с клавиатуры 10 чисел. Если среди них есть числа большие...

Ввести с клавиатуры 10 чисел. Если среди них есть числа, большие 15, заменить их на 15. Напечатать все полученные числа - C++
Ввести с клавиатуры 10 чисел. Если среди них есть числа, большие 15, заменить их на 15. Напечатать все полученные числа.

большие числа - C++
скажите пожалуйсто есть ли какая нибудь библиотека в си++ для работы с большими числами (до 10^18), если нет то может у кого класс...

Большие числа в C - C++
можно ли в языке С работать с большими целыми? Существует ли некое подобие BigInteger C#?

Выводятся большие отрицательные числа - C++
В функции max двумерный массив переводится сначала в одномерный, при выводе одномерного массива вместо правильных элементов выводятся...

Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
diagon
Higher
1929 / 1195 / 49
Регистрация: 02.05.2010
Сообщений: 2,925
Записей в блоге: 2
07.07.2011, 12:01 #2
Ваше число в long long влезет.
Если нужны неограниченные числа - смотрите в сторону длинной арифметики.
1
mimicria
return (true);
1957 / 1094 / 91
Регистрация: 19.04.2011
Сообщений: 2,345
07.07.2011, 12:03 #3
Цитата Сообщение от vortexx1 Посмотреть сообщение
Как в С++ работать с большими числами (600851475143, например)?
Например с помощью библиотеки длинной арифметики типа GMP
1
vortexx1
6 / 6 / 2
Регистрация: 06.03.2011
Сообщений: 269
07.07.2011, 12:04  [ТС] #4
long long пробовал - компилятор ругается.
0
diagon
Higher
1929 / 1195 / 49
Регистрация: 02.05.2010
Сообщений: 2,925
Записей в блоге: 2
07.07.2011, 12:05 #5
Цитата Сообщение от mimicria Посмотреть сообщение
Например с помощью библиотеки длинной арифметики типа GMP
имхо она неудобная, ибо в си стиле. Я бы boost:: python использовал =)
А еще лучше свой класс написать.
long long пробовал - компилятор ругается.
Попробуйте
Код
__int64
1
vortexx1
6 / 6 / 2
Регистрация: 06.03.2011
Сообщений: 269
07.07.2011, 12:21  [ТС] #6
__int64 тоже пробовал, все равно ругается.
0
taras atavin
Ушёл с форума.
3569 / 1753 / 91
Регистрация: 24.11.2009
Сообщений: 27,619
07.07.2011, 12:24 #7
hyper попробуй.
1
vortexx1
6 / 6 / 2
Регистрация: 06.03.2011
Сообщений: 269
07.07.2011, 12:35  [ТС] #8
А как этот hyper применяется-то?
0
taras atavin
Ушёл с форума.
3569 / 1753 / 91
Регистрация: 24.11.2009
Сообщений: 27,619
07.07.2011, 12:41 #9
Как любой целый тип. Только разрядность у него 64 бита. А если надо обязательно беззнаковый, то unsigned hyper. Только hyper не везде работает, многие компилы его просто не знают.
1
silent_1991
07.07.2011, 17:25
  #10

Не по теме:

Цитата Сообщение от 'taras atavin' Посмотреть сообщение
многие компилы его просто не знают
Я даже скажу, почему - потому что про этот тип в стандартне ни слова.

0
grizlik78
Эксперт С++
1911 / 1443 / 112
Регистрация: 29.05.2011
Сообщений: 3,000
07.07.2011, 17:31 #11
Цитата Сообщение от diagon Посмотреть сообщение
Например с помощью библиотеки длинной арифметики типа GMP
имхо она неудобная, ибо в си стиле.
Для простых применений имеющегося там C++ интерфейса вполне хватит.
vortexx1, а компилятор-то какой? А то может и правда только своё писать придётся
Как-то настораживает, что ни одно из распространённых расширений 64-битных типов не поддерживается.
0
no0ker
101 / 88 / 4
Регистрация: 17.12.2010
Сообщений: 416
07.07.2011, 19:12 #12
vortexx1, а какие задачи вообще преследуются?
если нужно организовать, например, только сложение и вычитание, проще написать свой класс.
0
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
07.07.2011, 19:12
Привет! Вот еще темы с ответами:

упорядочить по возростанию числа большие 2 - C++
упорядочить по возростанию числа больше 2 , а остальные оставить на своих же местах

Strtol и слишком большие числа - C++
Если strtol скормить строчку со слишком большим числом, оно вернет LONG_MAX и установит errno в ERANGE. Вопрос - если strtol скормить...

Возведение в степень по модулю. Большие числа - C++
Всем привет. У меня есть пару способов возведения в степень по модулю, но с большими числами не работает.:( Требуется вычислить A^X mod...

Вывести на экран числа большие заданного N - C++
Задание.Вывести на экран числа большие заданного N. Вроде все работает, но выдает ответ всегда 10 ответов, даже при N=70. Выведет 9 раз 70...


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

Или воспользуйтесь поиском по форуму:
Yandex
Объявления
07.07.2011, 19:12
Ответ Создать тему
Опции темы

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