Мне нужна помощь в получении правильного формата выходного потока в десятичном формате в C ++ 17 - PullRequest
0 голосов
/ 27 февраля 2019

Я сделал эту небольшую программу конвертации валют, которая конвертирует доллар в франки, но когда я ставлю сумму, например, 2000 долларов и более, у меня нет правильного формата, у меня есть это: 1.15165e+006.Я хочу всю десятичную сумму.Спасибо

Конвертировать доллары США в франки CFA

#include <iostream>

using namespace std;

int main()

{

const double cfa_per_usd {575.825}; 

cout <<"**********Welcome to the USD to Franc CFA Converter************" << endl;

double cfa {0.0};

cout <<"\nEnter value in USD: ";
double dollar {0};
cin >> dollar;
cfa = dollar * cfa_per_usd;
cout << dollar <<" Dollar(s) is equivalent to " << cfa << " Francs CFA" <<endl; 

 return 0;
} 

Я нашел частичный ответ на свою проблему, я добавил библиотеку, затем добавил "фиксированное" ключевое слово и "setprecision ()":

cout << dollar << "Доллары (и) эквивалентны" << fixed << setprecision (2) << cfa << "Francs CFA" <<p> Но я понял, что только япосле десятичной запятой есть нули: всего 2 «.00», я изменил константу на 576,212 за доллар, поэтому, если я конвертирую 2000 долларов, у меня должно быть 1,1512,424,54 франка, но у меня просто 1152424,00 франка.нет там, есть идеи, как это исправить?

1 Ответ

0 голосов
/ 28 февраля 2019

Я нашел частичный ответ на мою проблему, я добавил библиотеку, затем добавил «фиксированное» ключевое слово и «setprecision ()»:

cout << dollar <<" Dollar(s) is equivalent to " << fixed << setprecision(3) << cfa << " Francs CFA" <<endl;

Но я понял, что у меня только нулипосле десятичной запятой: всего 2 «.00», я изменил константу на 576,212 за доллар, поэтому, если я конвертирую 2000 долларов, у меня должно быть 1,1512,424,54 франка, но у меня просто 1152424,00 франка, .54 там нет, есть идеи как это исправить?

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...