scf_celebic/ex1/D/skalar_stl/mylib.cpp
2025-10-20 15:32:15 +02:00

29 lines
No EOL
598 B
C++

#include "mylib.h"
#include <cassert> // assert()
#include <cmath>
#include <vector>
using namespace std;
long double Kahan_skalar(vector<double> const &input)
{
long double sum = 0.0;
long double c = 0.0;
for (long unsigned int i=0; i<input.size(); i++){
long double y = input[i] - c;
long double t = sum + y;
c = (t-sum) - y;
sum = t;
}
return sum;
}
long double normal_sum(vector<double> const &input)
{
long double sum = 0.0;
for (long unsigned int i=0; i<input.size(); i++){
sum += input[i];
}
return sum;
}