Войти
или
Зарегистрироваться
Маркетплейс
Курсы
Учебник
Учебник 2.0
ЕГЭ
ОГЭ
Олимпиады
Рубрикатор
Компилятор
Онлайн Компилятор
Python по шагам — отладчик
Питон - Черепашка
Эмулятор исполнителя Робот - Кумир
Редактор HTML Code
SQLite Studio - работа с БД
Статья Автор:
Лебедев Дмитрий Алексеевич
Функции STL модуля numeric
Пример 2_1 Находим среднее значение
Двух последовательностей сразу
\(\frac{1}{i^2}\)
\(\frac{1}{i}\)
используем функцию accumulate для complex
#include <iostream> #include <vector> #include <numeric> #include <complex> auto average_score(const std:: vector<std::complex<double>> &scores){ return std::accumulate(scores.cbegin(), scores.cend(),std::complex{0.,0.})/(double) scores.size(); } int main(){ std:: vector<std::complex<double>> scores; int n; std::cin >>n; for (int i=1; i<=n; i++) { scores.push_back(std::complex(1./(i*i),1/(1.*i)));} auto y = average_score(scores); std:: cout<<y; return 0; }
×
#include <iostream> #include <vector> #include <numeric> #include <complex> auto average_score(const std:: vector<std::string> &scores){ return std::accumulate(scores.begin(), scores.end(),std::string{""}); } auto int_to_string(int x, int p){ std::string ans = ""; while (x >0){ if ((x % p) % 2 == 0) ans ='0'+ ans; else ans='1' + ans; x = x/p; } return ans; } int main(){ std:: vector<std::string> scores; int n; std::cin >>n; for (int i=1; i<=n; i++) { scores.push_back(int_to_string(i,7));} auto y = average_score(scores); std:: cout<<y; return 0; }
×
#include <iostream> #include <vector> #include <numeric> #include <complex> #include <execution> auto sum_score(const std:: vector<std::complex<double>> &scores){ return std::reduce(std::execution::par,scores.cbegin(), scores.cend(),std::complex{0.,0.}); } int main(){ std:: vector<std::complex<double>> scores; int n; std::cin >>n; for (int i=1; i<=n; i++) { scores.push_back(std::complex(pow(-1,i+1)*1./i/i,pow(-1,i)/(1.*i)));} auto y = sum_score(scores); std:: cout<<y; return 0; }
×
Печать