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

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

Войти
Регистрация
Восстановить пароль
 
Рейтинг: Рейтинг темы: голосов - 9, средняя оценка - 4.67
Jarry
0 / 0 / 0
Регистрация: 18.06.2013
Сообщений: 50
#1

Количество цифр после запятой - C++

08.04.2014, 18:50. Просмотров 1526. Ответов 6
Метки нет (Все метки)

Доброго дня.
Как после запятой запятой округлить значение до 5 знаков, если там содержится больше, а если меньше то чтобы не заполнялось нулем.
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
#include <iostream>
#include <iomanip>
 
using namespace std;
 
int main()
{
    float a, b;
    a=0.1234567;
    b=0.12;
    cout << fixed << setprecision(5) << a << " " << b << endl;
    return 0;
}
"a" выводит все как надо а вот "b" выводит 0.12000
как сделать что бы "b" выводила 0.12
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
08.04.2014, 18:50
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Количество цифр после запятой (C++):

Подсчитать количество цифр после запятой в вещественном числе - C++
Доброго времени суток. Подскажите, пожалуйста, как посчитать кол-во цифр после запятой? Например в числе 5.4569 -4 знака после запятой. В...

Какой идентификатор использовать, чтобы получить точное количество цифр после запятой - C++
Доброго времени суток всем! Возник такой вопрос. Задана формула, которая ситает с определённой точностью . Но при компиляции это программы...

В строке имеется одна точка с запятой (;). Подсчитать количество символов до точки с запятой и после нее. - C++
В строке имеется одна точка с запятой ( ; ). Подсчитать количество символов до точки с запятой и после нее.

Ограничение количества цифр после запятой - C++
Как ограничить количество цифр после запятой? Слишком уж дотошная точность получается...Мне только две нужны.

Как сделать больше цифр после запятой - C++
Есть консольная программа вычисляющая sqrt: #include &lt;iostream&gt; #include &lt;cmath&gt; using namespace std; int main() { ...

Можно ли в консольном приложении вывести 25 цифр после запятой? - C++
Можно ли в консольном приложении вывести цифр 25 после запятой? cout выводит только цифр 6, а setw(n) только сдвигает число в конец строки

Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
zss
Модератор
Эксперт С++
6358 / 5922 / 1919
Регистрация: 18.12.2011
Сообщений: 15,219
Завершенные тесты: 1
08.04.2014, 19:03 #2
C++
1
 cout << fixed << setprecision(5) << a << " "<< setprecision(2)<< b << endl;
Jarry
0 / 0 / 0
Регистрация: 18.06.2013
Сообщений: 50
08.04.2014, 19:19  [ТС] #3
а если за ранее не известно какое количество цифр будет после запятой, то как быть?
zss
Модератор
Эксперт С++
6358 / 5922 / 1919
Регистрация: 18.12.2011
Сообщений: 15,219
Завершенные тесты: 1
08.04.2014, 19:30 #4
Цитата Сообщение от Jarry Посмотреть сообщение
то как быть?
Остается одно - выводить результат в строку, а потом откусывать нули справа.
Однако, я не вижу смысла.
Если хотите точность вывода 6 знаков, то вполне резонно выводить результат в виде 0.120000,
а если два - то какая Вам разница 0.120000 там или 0.124999 ?
Байт
Эксперт C
15984 / 10252 / 1536
Регистрация: 24.12.2010
Сообщений: 19,336
08.04.2014, 19:49 #5
Цитата Сообщение от zss Посмотреть сообщение
Однако, я не вижу смысла.
А мне вот приходилось по настоятельной просьбе заказчика такими глупостями заниматься. Дело было на складе торговца пряностями.
Jarry
0 / 0 / 0
Регистрация: 18.06.2013
Сообщений: 50
08.04.2014, 20:35  [ТС] #6
А как вывести результат в строку?
IrineK
Заблокирован
08.04.2014, 20:52 #7
Цитата Сообщение от Jarry Посмотреть сообщение
как сделать что бы "b" выводила 0.12
Убрать fixed.

C++
1
cout << setprecision(5) << a << " " << b << endl;
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
08.04.2014, 20:52
Привет! Вот еще темы с ответами:

Как определить для типа float число цифр после запятой - C++
Здравствуйте! Помогите, пожалуйста с заданием: нужно для чисел типа float определить точное число цифр после запятой, без использования...

Выводится 25 цифр (после запятой), но только 15 из них верные. Как увеличить точность? - C++
#include &lt;iostream&gt; #include &lt;iomanip&gt; using namespace std; int main() { double a = 2.7182818284590452353602875; ...

Количество знаков после запятой - C++
#include &lt;iostream&gt; #include &lt;iomanip&gt; using namespace std; int main() { float g = 10.53446; printf(&quot;%.4f\n&quot;, g); ...

Количество символов после запятой - C++
cout &lt;&lt; &quot;Введите Е: &quot;; cin &gt;&gt; E; for (i = 1; fabs(drob)&gt;E; i++) { s1 += drob; drob*= -x*x / (i + 1); A++; } cout...


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

Или воспользуйтесь поиском по форуму:
Yandex
Объявления
08.04.2014, 20:52
Ответ Создать тему
Опции темы

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