| imho.ws |
![]() |
|
|
|
# 1 |
|
Junior Member
Регистрация: 01.04.2005
Сообщения: 121
![]() |
Число знаков после запятой в С++
в консольной программе в переменной - double р; отображается только 14 знаков после запятой:
cout<<setprecision(30)<<p<<endl; хотя задано 30 Как отобразить больше 14 знаков после запятой и возможно ли это? И вообще сколько знаков после запятой у данной переменной может быть? |
|
|
|
|
# 3 | |
|
Junior Member
Регистрация: 09.12.2003
Адрес: Москва
Сообщения: 62
![]() |
Цитата:
__________________
не учите людей думать, они вам этого не простят... |
|
|
|
|
|
# 5 |
|
::VIP::
Регистрация: 09.09.2002
Адрес: Kiev
Пол: Male
Сообщения: 1 150
![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() |
насколько мне помнится, в С/С++ подобные вещи отданы на усмотрение разработчиков компилятора - так что может быть и 10 байт с 20 знаками, и 100 байт с 2000 знаками
![]() надо смотреть в каждом случае конкретный компилятор/платформу
__________________
Great minds discuss ideas. Average minds discuss events. Small minds discuss people. |
|
|
|
|
# 7 |
|
Member
Регистрация: 26.09.2005
Адрес: Питер
Сообщения: 336
![]() ![]() |
Ну как, если ручками, то лучше всего воспользоваться методом Ньютона.
А чтобы реализовать в проге, придется из интов составить длинное число(массив), к которому ты будешь специфически обращаться, а потом интерпретировать, как вещественное число. |
|
|
|
|
# 8 |
|
Guest
Сообщения: n/a
|
Самый (простой) алгоритм вычисления PI
PI = 4 - (4/3) + (4/5) – (4/7) + (4/9) – (4/11) + (4/13) – (4/15) +..- .. Если сложить 1000000 значений этой последовательности можно получить 5 знаков после запятой . Дальше хуже новые знаки растут плохо. Существуют библиотеки 128-разрядных чисел 31-знак; Поищите в инете: 128-разрядные числа двойной точности числа с динамически изменяемой мантиссой числа |