PDA

View Full Version : سوال: نمایش تا 2 رقم اعشار در c++



kamran_14
شنبه 25 آذر 1391, 08:03 صبح
سلام خسته نباشید
چطوری می شه در سی پلاس پلاس وقتی که یک عدد رو به یک عددتقسیم کنیم فقط تا 2 رقم اعشار نشان دهد

omidshaman
شنبه 25 آذر 1391, 10:03 صبح
1 راه

#include <iostream>
using namespace std;
int main () {
double a,b,c;
a = 3.1415926534;
cout.precision(2);
cout << fixed << a << endl;
return 0;
}
و یک روش کاملتر

#include<iostream>
#include<iomanip>
using namespace std;
int main()
{
double x = 1.23456;
size_t save_prec = cout.precision(); //zakhire meghdar ghabli cout.precision() dar save_prec
cout << "ba 2 ragham ashar "<<setprecision(2) << fixed << x <<endl;
cout.precision(save_prec);//baraye reset kardane cout
cout <<"adad be soorate kamel "<< x << endl;

return 0;
}

std::ios_base::precision (http://www.cplusplus.com/reference/ios/ios_base/precision/)
std::fixed (http://www.cplusplus.com/reference/ios/fixed/)
البته با setf هم میشه
std::ios_base::setf (http://www.cplusplus.com/reference/ios/ios_base/setf/)

Ananas
شنبه 25 آذر 1391, 13:45 عصر
cout << __int64(x * 100.0) / 100.0 << endl;