Форум программистов, компьютерный форум, киберфорум
С++ для начинающих
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.99/352: Рейтинг темы: голосов - 352, средняя оценка - 4.99
1472 / 827 / 140
Регистрация: 12.10.2013
Сообщений: 5,456

Количество знаков после запятой double, Long double

23.03.2018, 12:55. Показов 68071. Ответов 7
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Есть число большой точности A.
A=-1.768573656315270993281
742915329544712934120053405549882
337511135282776553364635382011977
933536332198647808795874576643230
034448609820608458844529169083285
379260833581131961323480667495949
838043253626912240448884745364662
8324959064543;

Какой тип переменных вмещает их как константы? Сколько можно чисел после запятой?

Double 308 знаков после запятой?
Long double 4932?
Не ругается максимум на 125 символов после запятой для double в компиляторе Visual Stdio 2008 , где еще половина?

Какое самое малое число можно разделить на 1000 не превышая точность Long double?
Рисую фракталы, мне нужна точность. Процессор 32 bit.
0
Programming
Эксперт
39485 / 9562 / 3019
Регистрация: 12.04.2006
Сообщений: 41,671
Блог
23.03.2018, 12:55
Ответы с готовыми решениями:

Какая функция определяет количество знаков после запятой переменной double?
У меня есть программа, которая считает сумму ряда, в неё вводится значение x, точность, с которой определяется значение ln(x) и по формуле...

Подсчет знаков после запятой в переменной double
Не получается, так как в double числа хранятся не точно, и на моменте, когда i == 3345333, d == 3345333.0000000004 и программа...

Как вывести double до 2 знаков после запятой?
Нужно вывести число до 2 знаков после запятой. Попробовал так: 1) round(a*100)/100; 2) out.precision(2); out<<a; ...

7
Модератор
Эксперт С++
 Аватар для zss
13778 / 10971 / 6491
Регистрация: 18.12.2011
Сообщений: 29,258
23.03.2018, 18:42
Цитирую MS:
DBL_MAX 1.7976931348623158e+308 Maximum value
Как видите, всего 16 знаков после запятой.
А 308 - это степенной показатель, т.е
1.7976931348623158*10308
Если нужно просто хранить такие числа, то пишите их в строковый массив, или в string.
А для вычислений нужно использовать специальные пакеты длинной арифметики.
0
1472 / 827 / 140
Регистрация: 12.10.2013
Сообщений: 5,456
23.03.2018, 19:25  [ТС]
Какие 16 знаков, остальное рандомный мусор? Как это? Зачем они тогда?
32 бит процессор это 4 байтный т.е. float его родной формат и тратит он наверно 1 такт.
float
-3.4*10^32 до +3.4 *10^32
32 знака после запятой а не 16.

double
-1.7*10^308 до +1.7*10^308
308 знака после запятой.
Т.е. вычисления возможны в этих диапазонах а не до 16 знаков после запятой.
Спец. либы для длинной арифметики это наверно для чисел больше long double 10 байт.
Где много тактов идет на например сложение двух чисел.
0
зомбяк
 Аватар для TRam_
1585 / 1219 / 345
Регистрация: 14.05.2017
Сообщений: 3,940
23.03.2018, 20:09
Цитата Сообщение от Excalibur921 Посмотреть сообщение
Какой тип переменных вмещает их как константы? Сколько можно чисел после запятой?
https://en.wikipedia.org/wiki/Long_double
An exception is Microsoft Visual C++ for x86, which makes long double a synonym for double.
Не поддерживает ваша Visual Studio тип long double, вместо него под его именем используется обычный double.

Добавлено через 6 минут
Цитата Сообщение от Excalibur921 Посмотреть сообщение
Какие 16 знаков
Примерно 16 десятичных знаков.
Цитата Сообщение от Excalibur921 Посмотреть сообщение
Есть число большой точности A
Нужна либа, которая понимает и длинную арифметику, и плавающую точку. Потому что обычно длинная арифметика пишется для целых чисел (т.е. нет динамически меняющегося степенного множителя).
0
7804 / 6568 / 2988
Регистрация: 14.04.2014
Сообщений: 28,705
23.03.2018, 20:14
Excalibur921, тебе же сказали, что это не количество знаков, а степень. Просвещайся, как вещественный формат устроен. Тебе long double не поможет с такими длинными числами.
0
1472 / 827 / 140
Регистрация: 12.10.2013
Сообщений: 5,456
23.03.2018, 20:24  [ТС]
TRam_,
Цитата Сообщение от Excalibur921 Посмотреть сообщение
Какие 16 знаков, остальное рандомный мусор? Как это? Зачем они тогда?
Причем тут 16 знаков вообще? Так я могу считать числа если два заданы до 25 и 27 знака? Если ответ входит в диапазон double то все ок? А если нет? Будет INF предупреждение или что то такое?

Цитата Сообщение от TRam_ Посмотреть сообщение
место него под его именем используется обычный double.
Что это за развод такой хитрый… или из-за Express в названии? Pro версия поддерживает?
0
7804 / 6568 / 2988
Регистрация: 14.04.2014
Сообщений: 28,705
23.03.2018, 20:29
Цитата Сообщение от Excalibur921 Посмотреть сообщение
Pro версия поддерживает?
Нет. Это особенность компилятора Microsoft. У long double 19-20 значащих цифр. Не намного больше.
1
зомбяк
 Аватар для TRam_
1585 / 1219 / 345
Регистрация: 14.05.2017
Сообщений: 3,940
23.03.2018, 20:51
Цитата Сообщение от Excalibur921 Посмотреть сообщение
Так я могу считать числа если два заданы до 25 и 27 знака?
Нет. Они просто не зададутся и округлятся до того, что вмещается в число. Если скомпилируются, конечно.

А в первом посте у тебя вообще-то около 220-250 значащих цифр. То есть ~ в 10 раз больше, чем есть в long double даже там, где он полностью поддерживается.

Добавлено через 2 минуты
Цитата Сообщение от Excalibur921 Посмотреть сообщение
Будет INF предупреждение или что то такое?
Никаких предупреждений. Просто округление при задании в переменную и при выполнении арифметических операций.
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
inter-admin
Эксперт
29715 / 6470 / 2152
Регистрация: 06.03.2009
Сообщений: 28,500
Блог
23.03.2018, 20:51
Помогаю со студенческими работами здесь

Точность в N знаков после запятой числа типа double
Добрый день, уважаемы форумчане! Возникла проблема, заключающаяся в изменении значения, получающегося в результате выполнения функции...

Как отображать у double больше знаков после запятой?
Что-то забыл как это сделать :(

исправьте ошибку!округлить double до 2-х знаков после запятой
округлять,не используя math.h #include "stdafx.h" #include <stdio.h> int main () { double i; printf ("i="); ...

Сколько Знаков после запятой имеет тип double и почему при выводе они отбрасываются
Здравствуйте! Написал функцию по расчету квадратного корня от числа. Функция работает стабильно, однако заметил, что при выводе...

Тип double и количество символов после запятой
Здравствуйте, уважаемые я дико нуб, поэтому помогите чем можете ) суть такова: тип переменной double необходимо сделать так,...


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

Или воспользуйтесь поиском по форуму:
8
Ответ Создать тему
Новые блоги и статьи
Знаешь почему 90% людей редко бывают счастливыми?
kumehtar 14.04.2026
Потому что они ждут. Ждут выходных, ждут отпуска, ждут удачного момента. . . а удачный момент так и не приходит.
Фиксация колонок в отчете СКД
Maks 14.04.2026
Фиксация колонок в СКД отчета типа Таблица. Задача: зафиксировать три левых колонки в отчете. Процедура ПриКомпоновкеРезультата(ДокументРезультат, ДанныеРасшифровки, СтандартнаяОбработка) / / . . .
Настройки VS Code
Loafer 13.04.2026
{ "cmake. configureOnOpen": false, "diffEditor. ignoreTrimWhitespace": true, "editor. guides. bracketPairs": "active", "extensions. ignoreRecommendations": true, . . .
Оптимизация кода на разграничение прав доступа к элементам формы
Maks 13.04.2026
Алгоритм из решения ниже реализован на нетиповом документе, разработанного в конфигурации КА2. Задачи, как таковой, поставлено не было, проделанное ниже исключительно моя инициатива. Было так:. . .
Контроль заполнения и очистка дат в зависимости от значения перечислений
Maks 12.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "ПланированиеПерсонала", разработанного в конфигурации КА2. Задача: реализовать контроль корректности заполнения дат назначения. . .
Архитектура слоя интернета для сервера-слоя.
Hrethgir 11.04.2026
В продолжение https:/ / www. cyberforum. ru/ blogs/ 223907/ 10860. html Знаешь что я подумал? Раз мы все источники пишем в голове ветки, то ничего не мешает добавить в голову такой источник, который сам. . .
Подстановка значения реквизита справочника в табличную часть документа
Maks 10.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "ПланированиеПерсонала", разработанного в конфигурации КА2. Задача №1: при указании работ (справочник РаботыПоРемонтуСпецтехники),. . .
Очистка реквизитов документа при копировании
Maks 09.04.2026
Алгоритм из решения ниже применим как для типовых, так и для нетиповых документов на самых различных конфигурациях. Задача: при копировании документа очищать определенные реквизиты и табличную. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru