Вопрос по c++, console – Как отобразить больше десятичных знаков в консоли вывода? [Дубликат]

11

This question already has an answer here:

How do I print a double value with full precision using cout? 11 answers

Я хочу вывести значение double в его полной точности. Однако при использовании функции cout отображаются только первые 6 цифр, хотя точность составляет около 15-16 цифр.

Как заставить мою программу отображать все значение, включая компонент величины (мощности)?

Ваш Ответ

3   ответа
8

#include <iomanip>

cout << setprecision (9) << double_value << endl;

больше иоманипуляторов,Вот

Не является эквивалентом формата% g printf. И этот формат не дает того, что дают некоторые другие языки: самая короткая строка, которая считывает исходное число.
что если бы вы хотели, чтобы это было совершенно точно. но, очевидно, поверните число, такое как 7.3333333, чтобы сказать, 7.33
7

setprecision (код взят из ссылки):

int main () {
  double f =3.14159;
  cout << setprecision(15) << f << endl;
  return 0;
}
На тот случай, если вы пропустили это ниже, вы также можете использовать научный манипулятор, чтобы заставить научную запись, если хотите.
11

setprecision() манипулятор:

http://www.cplusplus.com/reference/iostream/manipulators/setprecision/

Вы также можете заставить научную запись сscientific манипулятор:

http://www.cplusplus.com/reference/iostream/manipulators/scientific/

cout << scientific << setprecision(15) << my_number << endl;

Похожие вопросы