2017-04-27 10 views
0

나는 알고리즘의 지속 시간을 std::chrono::duration<double> 변수로 저장했으며 실험을 몇 번 반복하고 싶습니다. (3 번 말합니다) 저장하려고합니다. 벡터에서 평균을 계산하는 3 가지 지속 시간.std :: chrono :: duration의 정밀도 <double> 및 double - C++

저는 double의 벡터를 사용합니다 (time.count() 저장).

지속 기간이다 다소간

0.003

0.004

0.003 I의 평균을 산출 할 때 결과 (이중 사용) 입니다.

평균을 계산할 때 더 정밀도가 있어야합니까?

+0

그 계산 코드를 볼 수 있습니까? –

+0

'double sum = 0; (int i = 0; i

+1

[mcve] 또는 [SSCCE (짧은, 자체 포함, 올바른 예)] (http : // sscce. org) – NathanOliver

답변

0

평균을 계산할 수 있도록 벡터에서 루프를 수행해야합니다.

double sum = 0; 
//define 3 duration objects and initialize it later 
std::chrono::duration<double> a(0.003); 
std::chrono::duration<double> b(0.004); 
std::chrono::duration<double> c(0.003); 
//define a vector of durations 
std::vector<std::chrono::duration<double>> times{a, b, c}; 
//calcuöate the sum of all element in vector 
for (auto x : times) 
{ 
    sum += x.count(); 
} 
//calculate mean as double 
double mean = sum/times.size(); 

std::cout << "Mean Duration: " << mean <<std::endl;