Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > IT форум > Помощь студентам
Регистрация

Восстановить пароль

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 21.01.2009, 15:39   #1
XeN0N
Форумчанин
 
Аватар для XeN0N
 
Регистрация: 18.01.2009
Сообщений: 118
По умолчанию точность вывода переменной

С++ Builder

out.open("out.txt");
out <<k;

k выводится до 5 знака после запятой
по условию нужно до 8
как ?

спс
XeN0N вне форума Ответить с цитированием
Старый 21.01.2009, 15:50   #2
Sazary
В тени
Старожил
 
Аватар для Sazary
 
Регистрация: 19.12.2008
Сообщений: 5,788
По умолчанию

непосредственно перед выводом k:
out.precision(9);
Вполне очевидно, чтобы что-то понять, необходимо книги читать.
Не нужно плодить бессмысленных тем. Вас Поиск избавит от многих проблем.

___________________________________ ___________________________________ _______
[=Правила форума=]_____[Поиск]_____[Литература по С++]____[Литература. Паскаль]
Sazary вне форума Ответить с цитированием
Старый 21.01.2009, 16:01   #3
XeN0N
Форумчанин
 
Аватар для XeN0N
 
Регистрация: 18.01.2009
Сообщений: 118
По умолчанию

Вот precision(9)
Код:
k=25
-9.39264092 n=3 d=0
-8.18279129 n=4 d=0
-7.53951585 n=5 d=0
-5.91742426 n=5 d=0
-5.66075651 n=4 d=0
-4.1961545 n=4 d=0
-3.3870104 n=3 d=0
-2.19045797 n=4 d=0
-1.46833534 n=4 d=0
Вот precision(11)
Код:
k=25
-9.3926409185 n=3 d=0
-8.1827912858 n=4 d=0
-7.5395158492 n=5 d=0
-5.9174242561 n=5 d=0
-5.6607565071 n=4 d=0
-4.1961544968 n=4 d=0
-3.3870104006 n=3 d=0
-2.1904579665 n=4 d=0
-1.4683353402 n=4 d=0
В двух случаях 0 и 9 были округлены. Этого можно избежать?
XeN0N вне форума Ответить с цитированием
Старый 21.01.2009, 16:09   #4
Sazary
В тени
Старожил
 
Аватар для Sazary
 
Регистрация: 19.12.2008
Сообщений: 5,788
По умолчанию

Цитата:
В двух случаях 0 и 9 были округлены. Этого можно избежать?
Честно говоря, не понял, что вы имеете в виду.
Какие 0 и 9? Где они округлены?
Вполне очевидно, чтобы что-то понять, необходимо книги читать.
Не нужно плодить бессмысленных тем. Вас Поиск избавит от многих проблем.

___________________________________ ___________________________________ _______
[=Правила форума=]_____[Поиск]_____[Литература по С++]____[Литература. Паскаль]
Sazary вне форума Ответить с цитированием
Старый 21.01.2009, 16:14   #5
XeN0N
Форумчанин
 
Аватар для XeN0N
 
Регистрация: 18.01.2009
Сообщений: 118
По умолчанию

-4.1961545 n=4 d=0
-3.3870104 n=3 d=0

7 знаков после запятов
невыведенные знаки в первом случае 96, во втором 006

Можно сделать чтоб выводилось так?:
-4.19615449 n=4 d=0
-3.38701040 n=3 d=0

хотя наверно правильнее будет так
-4.19615450 n=4 d=0
-3.38701040 n=3 d=0
XeN0N вне форума Ответить с цитированием
Старый 21.01.2009, 16:25   #6
Sazary
В тени
Старожил
 
Аватар для Sazary
 
Регистрация: 19.12.2008
Сообщений: 5,788
По умолчанию

подключите:
Код:
#include <iomanip>
и перед выводом:
Код:
out<<setprecision(9)<<fixed;
Должно работать..
Вот этот код:
Код:
#include <iostream>
#include <conio.h>
#include <iomanip>
using namespace std;

int main(){
double k=-4.19615449;
cout<<setprecision(9)<<fixed;
cout <<k;
getch();
return 0;
}
Выводит
-4.196154490
Вполне очевидно, чтобы что-то понять, необходимо книги читать.
Не нужно плодить бессмысленных тем. Вас Поиск избавит от многих проблем.

___________________________________ ___________________________________ _______
[=Правила форума=]_____[Поиск]_____[Литература по С++]____[Литература. Паскаль]
Sazary вне форума Ответить с цитированием
Старый 21.01.2009, 16:30   #7
XeN0N
Форумчанин
 
Аватар для XeN0N
 
Регистрация: 18.01.2009
Сообщений: 118
По умолчанию

спс .
XeN0N вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
проблема вывода! Рустам PHP 18 28.05.2009 13:01
Вид вывода в С++ Rembo Общие вопросы C/C++ 4 04.01.2008 20:40
Работа с файлами (создание, удаление, открытие, связываение с переменной, очищение памяти переменной) Arkuz Общие вопросы Delphi 12 25.09.2007 20:47
Точность Sour Помощь студентам 2 31.05.2007 21:08