-
دقت اعشار در c++
سلام دوستان . یک سوال داشتم که من میخوام توی کد زیر مثلا میانگین تا سه رقم اعشار حساب بشه ولی تا یک رقم میاد. از تابع setprecision استفاده کردم. اگه بخوام تقسیم با یه دقت مشخص تو قسمت total/=ArrL; حساب شه باید چیکار کنم؟
کد:
#include <iostream>
#include <string>
#include <iomanip>
using namespace std;
int main()
{
int flfl ;
cout<<"Hi ! App start point ! "<<endl;
int Numbers[5]={};
double total=0;
auto ArrL = end(Numbers)-begin(Numbers);
for (int i =0;i<ArrL;i++)
{
cout<<"Enter Number["<<i<<"]:\n";
cin>>Numbers[i];
total+=Numbers[i];
}
total/=ArrL;
cout<<"Average:"<<setprecision(12)<<total<<endl<<"Enter a number to exit"<<endl;
cin>>flfl;
:n16:
-
سلام.
مشکل از کد نیست وقتی شما عددی رو بر 5 تقسیم میکنید در اکثر حالات اعشاری نتیجه دارای 1 رقم اعشار هست و نه بیشتر.
------
کد:
auto ArrL = end(Numbers)-begin(Numbers);
اما در رابطه با کدتون وقتی طول ارایه ثابت هست دیگه نیازی به محاسبه ی اون نیست.
و در اخر اینکه بهتر بود تاپیکتونو تو
[ برای مشاهده لینک ، با نام کاربری خود وارد شوید یا ثبت نام کنید ]
ایجاد میکردید.