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

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

Войти
Регистрация
Восстановить пароль
 
Минор
0 / 0 / 0
Регистрация: 31.01.2013
Сообщений: 22
#1

точность возвращения функции long double - C++

05.02.2013, 23:22. Просмотров 566. Ответов 6
Метки нет (Все метки)

есть число a long double
надо написать чтобы фунция возвращала число до 25 знака после запятой
то есть
return a.%25; (как правильно составить вот эту вот скобку)
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
MrGluck
Ворчун
Эксперт CЭксперт С++
 Аватар для MrGluck
6227 / 3472 / 424
Регистрация: 29.11.2010
Сообщений: 9,178
05.02.2013, 23:23     точность возвращения функции long double #2
C++
1
std::cout << std::fixed << std::setprecision(25);
vua72
414 / 414 / 85
Регистрация: 28.11.2010
Сообщений: 1,175
Завершенные тесты: 1
05.02.2013, 23:24     точность возвращения функции long double #3
функция возвращает результат, который хранится во внутреннем формате, для long double - 15(16) (у майкрософта)или 18(19) десятичных разрядов, так что никак.
Минор
0 / 0 / 0
Регистрация: 31.01.2013
Сообщений: 22
05.02.2013, 23:26  [ТС]     точность возвращения функции long double #4
Цитата Сообщение от MrGluck Посмотреть сообщение
std::cout << std::fixed << std::setprecision(25);
мне не надо выводить это на экран . только return
vua72
414 / 414 / 85
Регистрация: 28.11.2010
Сообщений: 1,175
Завершенные тесты: 1
05.02.2013, 23:29     точность возвращения функции long double #5
Цитата Сообщение от Минор Посмотреть сообщение
мне не надо выводить это на экран . только return
еще раз, прочитайте мой пост, а потом - про стандарт ieee 754.

Добавлено через 1 минуту
если вам нужна такая точность, то используйте mpfr
Минор
0 / 0 / 0
Регистрация: 31.01.2013
Сообщений: 22
05.02.2013, 23:32  [ТС]     точность возвращения функции long double #6
Цитата Сообщение от vua72 Посмотреть сообщение
еще раз, прочитайте мой пост, а потом - про стандарт ieee 754.
хорошо, тогда переформулирую, как бы вы возвращали значение до 10^(-5)
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
06.02.2013, 00:07     точность возвращения функции long double
Еще ссылки по теме:

Почему перестает работать программа при замене double на long double? C++
Теряется точность при вычислении с double C++
Double сокращение с точность до N знаков - C/C++ C++
Точность вычислений у double C++
Точность в double C++

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

Или воспользуйтесь поиском по форуму:
vua72
414 / 414 / 85
Регистрация: 28.11.2010
Сообщений: 1,175
Завершенные тесты: 1
06.02.2013, 00:07     точность возвращения функции long double #7
Цитата Сообщение от Минор Посмотреть сообщение
хорошо, тогда переформулирую, как бы вы возвращали значение до 10^(-5)
float - 7-8 знаков после запятой
double -15-16 знаков после запятой
long double -19(20) знаков после запятой

В вашем случае и флоата хватит.

Добавлено через 30 минут
Число десятичных разрядов:

C++
1
2
3
4
5
6
7
8
9
10
#include <iostream>
#include <cmath>
int main()
{
    std::cout<<"float "<< 23*log10(2)<<std::endl;
    std::cout<<"double "<< 53*log10(2)<<std::endl;
    std::cout<<"long double "<< 64*log10(2)<<std::endl;
    std::cout<<"quad double "<< 113*log10(2)<<std::endl; // нужна специальная библиотека в   gcc quadmath.h
    return 0;
}
результат

float 6.92369
double 15.9546
long double 19.2659
quad double 34.0164
Yandex
Объявления
06.02.2013, 00:07     точность возвращения функции long double
Ответ Создать тему
Опции темы

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