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

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

Войти
Регистрация
Восстановить пароль
 
Рейтинг: Рейтинг темы: голосов - 348, средняя оценка - 4.81
Mayonez
380 / 272 / 21
Регистрация: 26.12.2009
Сообщений: 875
#1

Количество знаков после запятой - C++

31.10.2010, 16:13. Просмотров 49186. Ответов 3
Метки нет (Все метки)

C++
1
2
3
4
5
6
7
8
9
10
11
#include <iostream>
#include <iomanip>
using namespace std;
 
int main()
{
   float g = 10.53446;
   printf("%.4f\n", g);
   cout << setprecision(4) << g << endl;
   return 0;
}
printf 10.5344 - 4 знака после запятой
setprecision(4) 10.53 - 2 знака после запятой, всего 4 знака
в чём разница?
как с помощью манипуляторов (или флагов форматирования) вывести 4 (или другое число) знаков после запятой?
Лучшие ответы (1)
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
31.10.2010, 16:13     Количество знаков после запятой
Посмотрите здесь:

Увеличение количества знаков после запятой C++
C++ Насчёт числа знаков после запятой
Вывод n знаков после запятой C++
C++ Увеличить количество знаков после запятой
Какая функция определяет количество знаков после запятой переменной double? C++
Максимальное количество знаков после запятой C++
Количество знаков после запятой C++
C++ Подсчет знаков после запятой в переменной double
Число знаков после запятой C++
Вывести n знаков после запятой C++
Фиксирование количества знаков после запятой C++
C++ N знаков после запятой

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

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
-comrade-
355 / 356 / 42
Регистрация: 11.06.2010
Сообщений: 703
31.10.2010, 16:20     Количество знаков после запятой #2
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
#include <iostream>
 
int main()
{
    float d = 10.53446;
    std::cout.setf(std::ios_base::fixed,std::ios_base::floatfield);
 
    std::cout.precision(5);
    std::cout << d << std::endl;
    std::cout.precision(4);
    std::cout << d << std::endl;
    std::cout.precision(3);
    std::cout << d << std::endl;
    std::cout.precision(2);
    std::cout << d << std::endl;
    std::cout.precision(1);
    std::cout << d << std::endl;
    system("pause");
    return 0;
}
Mayonez
380 / 272 / 21
Регистрация: 26.12.2009
Сообщений: 875
31.10.2010, 16:33  [ТС]     Количество знаков после запятой #3
это - флаги форматирования (спасибо), а как с манипуляторами и что в приведенном прримере не так?
Mr.X
Эксперт С++
3040 / 1685 / 265
Регистрация: 03.05.2010
Сообщений: 3,867
01.11.2010, 21:27     Количество знаков после запятой #4
Сообщение было отмечено автором темы, экспертом или модератором как ответ
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
[QUOTE=Mayonez;1073160]это - флаги форматирования ([COLOR="Gray"]спасибо[/COLOR]), а как с манипуляторами и что в приведенном прримере не так?[/QUOTE]
//////////////////////////////////////////////////////////////////////////////////////
#include <iomanip>
#include <iostream>
//////////////////////////////////////////////////////////////////////////////////////
int main()
{
    double d = 10.53446;
    
 
    
    std::cout << std::fixed << std::setprecision(5) << d << std::endl;
    
    std::cout << std::fixed << std::setprecision(4) << d << std::endl;
    
    std::cout << std::fixed << std::setprecision(3) << d << std::endl;
    
    std::cout << std::fixed << std::setprecision(2) << d << std::endl;
    
    std::cout << std::fixed << std::setprecision(1) << d << std::endl;
}
Yandex
Объявления
01.11.2010, 21:27     Количество знаков после запятой
Ответ Создать тему
Опции темы

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