Форум программистов, компьютерный форум, киберфорум
С++ для начинающих
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.59/46: Рейтинг темы: голосов - 46, средняя оценка - 4.59
0 / 0 / 1
Регистрация: 27.12.2010
Сообщений: 23

Длинные числа в С++

07.04.2011, 14:20. Показов 9946. Ответов 11
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Я так понемаю самое большое число long long тоесть до милиарда????
а если больше!
100000000000000000 такое(целое) как сни работать +1 или *2 ?????
0
cpp_developer
Эксперт
20123 / 5690 / 1417
Регистрация: 09.04.2010
Сообщений: 22,546
Блог
07.04.2011, 14:20
Ответы с готовыми решениями:

Длинные числа в c++
Делаю прогу, которая работает с длинными числами, хранятся такие числа у меня в классе, в массиве, состоящем из unsigned short int, в...

Длинные целые числа
Подскажите пожалуйста как разработать поле типа : длинные целые числа ?

Длинные числа. Умножение отрицательных
Здравствуйте, помогите пожалуйста как сделать, чтобы и отрицательные числа перемножались? #include <iostream> ...

11
Эксперт С++
5058 / 3118 / 271
Регистрация: 11.11.2009
Сообщений: 7,044
07.04.2011, 14:30
Есть double, но он тоже ограничен.
Если нужны очень большие числа - пишите собственную реализацию (представление числа в виде массива и реализация операций) или используйте готовые библиотеки. Тогда длины чисел, по сути, ограниченны только объёмом свободной памяти. Другой вопрос - сколько будут выполняться операции на таких числах...
0
1552 / 918 / 193
Регистрация: 26.03.2010
Сообщений: 3,105
07.04.2011, 15:14
гуглите на тему "длинная арифметика".
0
2 / 2 / 0
Регистрация: 21.02.2011
Сообщений: 28
07.04.2011, 22:12
neske, самый умный))))
1
Диссидент
Эксперт C
 Аватар для Байт
27714 / 17332 / 3810
Регистрация: 24.12.2010
Сообщений: 38,978
07.04.2011, 22:19
SaHR, Я поискал на форуме,
нашёл 3889 ответов
0
9 / 9 / 0
Регистрация: 05.04.2011
Сообщений: 67
08.04.2011, 01:47
ну если под long int выделяется 4 байта памяти и его диапазон от -2 147 483 648 до 2 147 483 647
под тип double выделяется 8 байтов памяти и его диапазон от 2.2e-308 до 1.8е308 есть еще один вариант..это long double под его выводиться 16 байт памяти, а вот диапазон забыл=)
0
Диссидент
Эксперт C
 Аватар для Байт
27714 / 17332 / 3810
Регистрация: 24.12.2010
Сообщений: 38,978
08.04.2011, 08:50
Цитата Сообщение от Uxxzz Посмотреть сообщение
ну если под long int выделяется 4 байта памяти и его диапазон от -2 147 483 648 до 2 147 483 647
под тип double выделяется 8 байтов памяти и его диапазон от 2.2e-308 до 1.8е308 есть еще один вариант..это long double под его выводиться 16 байт памяти, а вот диапазон забыл=)
Не думаю, что все эти варианты удовлетворят ТС. long int и даже long long ему явно мало. А long double
будет давать неточный результат (значащих-то цифр всего 14) и тоже маловат. Нет, если разговор пошел о таких числах, без длинной арифметики не обойтись. Самый простой (но не самый эффективный) путь - представить числа в виде строк десятичных знаков и вспомнить как нас учили считать столбиком в 3-м классе. При этом очень просто организовать их ввод и вывод.
Впрочем, повторяю, библиотек на эту тему - немеряно.
1
9 / 9 / 0
Регистрация: 05.04.2011
Сообщений: 67
08.04.2011, 13:54
а тип ansigned long double может подойти....????
0
В астрале
Эксперт С++
 Аватар для ForEveR
8049 / 4806 / 655
Регистрация: 24.06.2010
Сообщений: 10,562
08.04.2011, 14:05
Uxxzz, Смотря насколько длинные числа вам нужны...
Если реально большие - нет.
Ну и если unsigned long double вообще существует в природе.

Добавлено через 7 минут
gcc говорит что такого типа он не знает.
Собственно да, логично. signed/unsigned онли для интегральных типов.
0
114 / 114 / 13
Регистрация: 29.04.2010
Сообщений: 240
08.04.2011, 15:12
unsigned long double нормальный тип, студия нормально на него отреагировала. Другое дело, врядли ТС это подойдет, я бы посоветовал написать свой класс (число представить как массив цифр).
0
Эксперт С++
5058 / 3118 / 271
Регистрация: 11.11.2009
Сообщений: 7,044
08.04.2011, 15:45
PraZuBeR, мне 2010 студия сказала на unsigned long double "недопустимое сочетание спецификаторов типа".
И если уж заговорили о студии, то в ней double и long double - синонимы и "весят" по 8 байт каждый. Так что выигрыша не получится...
1
Диссидент
Эксперт C
 Аватар для Байт
27714 / 17332 / 3810
Регистрация: 24.12.2010
Сообщений: 38,978
08.04.2011, 16:13
Uxxzz, Тут выбор простой. Или ты ограничиваешь числа, с которыми собираешься работать, или забываешь о типах встроенных и начинаешь работать с длинной арифметикой в одном из их многообразном представлении. Все эти long-long-long-doudle-long-unsigned-long - те самые припарки, которые мертвому, увы, не помогли/

Добавлено через 2 минуты
100000000000000000 такое(целое) как сни работать +1 или *2 ?????
Плохо, плохо сни будут работать.
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
raxper
Эксперт
30234 / 6612 / 1498
Регистрация: 28.12.2010
Сообщений: 21,154
Блог
08.04.2011, 16:13
Помогаю со студенческими работами здесь

Длинные числа, 3 в 100 степени
Не получается написать такую так как консоль не поддерживает такое количество цифр.

Как сравнить длинные числа через list?
Знаю, как это сделать с помощью vector, а вот с list, увы нет. Вот код с попощью vector, может немного надо поменять: int...

Реализовать длинные целые числа в виде класс
здравствуйте,только начала изучение классов,помогите с решением задачи:нужно реализовать длинные целые числа в виде класса с конструктором...

Определить наибольший общий делитель двух многоразрядных чисел (длинные числа)
Определить наибольший общий делитель двух многоразрядных чисел. Для хранения многоразрядного числа использовать динамический...

Считая что в двух строках находятся очень длинные целые числа, сформировать третью строку - сумму этих чисел
Вообщем, задание вот такое: Даны две символьные строки, состоящие только из цифр (длина каждой более 10 символов). Считая, что в этих...


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

Или воспользуйтесь поиском по форуму:
12
Ответ Создать тему
Новые блоги и статьи
модель ЗдравоСохранения 8. Подготовка к разному выполнению заданий
anaschu 08.04.2026
https:/ / github. com/ shumilovas/ med2. git main ветка * содержимое блока дэлэй из старой модели теперь внутри зайца новой модели 8ATzM_2aurI
Блокировка документа от изменений, если он открыт у другого пользователя
Maks 08.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа, разработанного в конфигурации КА2. Задача: запретить редактирование документа, если он открыт у другого пользователя. / / . . .
Система безопасности+живучести для сервера-слоя интернета (сети). Двойная привязка.
Hrethgir 08.04.2026
Далее были размышления о системе безопасности. Сообщения с наклонным текстом - мои. А как нам будет можно проверить, что ссылка наша, а не подделана хулиганами, которая выбросит на другую ветку и. . .
Модель ЗдрввоСохранения 7: больше работников, больше ресурсов.
anaschu 08.04.2026
работников и заданий может быть сколько угодно, но настроено всё так, что используется пока что только 20% kYBz3eJf3jQ
Дальние перспективы сервера - слоя сети с космологическим дизайном интефейса карты и логики.
Hrethgir 07.04.2026
Дальнейшее ближайшее планирование вывело к размышлениям над дальними перспективами. И вот тут может быть даже будут нужны оценки специалистов, так как в дальних перспективах всё может очень сильно. . .
Горе от ума
kumehtar 07.04.2026
Эта мне ментальная установка, что вот прямо сейчас, мол, мне для полного счастья не хватает (нужное вписать), и когда я этого достигну - тогда и полный кайф. Одна из самых сильных ловушек на пути. . . .
Использование значений реквизитов справочника в документе, с определенными условиями и правами
Maks 07.04.2026
1. Контроль срока действия договора Алгоритм из решения ниже реализован на примере нетипового документа "ЗаявкаНаРаботу", разработанного в конфигурации КА2. Задача: уведомлять пользователя, если. . .
Доступность команды формы по условию
Maks 07.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "СписаниеМатериалов", разработанного в конфигурации КА2. Задача: сделать доступной кнопку (команда формы "ЗавершитьСписание") при. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru