From 80614e6fbbe57fc95d3edbcb02740b40670787be Mon Sep 17 00:00:00 2001 From: Alexander Zhirov Date: Mon, 4 Oct 2021 14:38:08 +0300 Subject: [PATCH] minor fixes --- lesson_4/exercises.cpp | 17 +++++++++++++++-- lesson_4/exercises.hpp | 2 -- lesson_4/main.cpp | 2 +- lesson_4/templates.hpp | 15 +++++---------- 4 files changed, 21 insertions(+), 15 deletions(-) diff --git a/lesson_4/exercises.cpp b/lesson_4/exercises.cpp index cebd20c..eab21dd 100644 --- a/lesson_4/exercises.cpp +++ b/lesson_4/exercises.cpp @@ -5,8 +5,15 @@ * Author: alexander */ -#include "exercises.hpp" +#include +#include #include +#include + +#include "exercises.hpp" +#include "templates.hpp" + +using namespace std; void exercise_1() { @@ -21,12 +28,16 @@ void exercise_1() insert_sorted(v, newIntValue); print(v); // -9 -9 -4 -3 3 3 4 6 8 9 10 + cout << endl; + list l(size); generator(l, -10.0, 10.0); l.sort(); print(l); // -9.31992 -6.76971 -5.98545 -2.1297 -1.9722 -0.292701 0.715274 3.43089 4.35249 9.45377 insert_sorted(l, newDoubleValue); print(l); // -9.31992 -6.76971 -5.98545 -2.1297 -1.9722 -0.292701 0.715274 2.2 3.43089 4.35249 9.45377 + + cout << endl; } void exercise_2() @@ -39,10 +50,12 @@ void exercise_2() print(v); // 1-ый вектор - печать исходного вектора copy(v.begin(), v.end(), ostream_iterator { cout, " " }); // 2-ой вектор - печать целочисленного вектора + cout << endl; + for_each(v.begin(), v.end(), [&](const double &i) { error += pow(i - static_cast(i), 2); }); - cout << endl << error << endl; + cout << endl << "Ошибка между цифровым и аналоговым сигналом равна " << error << endl; } diff --git a/lesson_4/exercises.hpp b/lesson_4/exercises.hpp index 5fad107..6b619b3 100644 --- a/lesson_4/exercises.hpp +++ b/lesson_4/exercises.hpp @@ -7,7 +7,5 @@ #pragma once -#include "templates.hpp" - void exercise_1(); void exercise_2(); diff --git a/lesson_4/main.cpp b/lesson_4/main.cpp index 118482b..43bb716 100644 --- a/lesson_4/main.cpp +++ b/lesson_4/main.cpp @@ -9,7 +9,7 @@ int main() { -// exercise_1(); + exercise_1(); exercise_2(); return 0; diff --git a/lesson_4/templates.hpp b/lesson_4/templates.hpp index 9de904e..093273d 100644 --- a/lesson_4/templates.hpp +++ b/lesson_4/templates.hpp @@ -8,20 +8,15 @@ #pragma once #include -#include #include -#include #include -#include - -using namespace std; template class TContainer, typename TItem, typename TIterator, typename T> void generator(TContainer &c, const T &rangeStart, const T &rangeEnd) { - random_device rd; - mt19937 mersenne(rd()); - uniform_real_distribution urd(rangeStart, rangeEnd); + std::random_device rd; + std::mt19937 mersenne(rd()); + std::uniform_real_distribution urd(rangeStart, rangeEnd); generate(c.begin(), c.end(), [&]() { return urd(mersenne); @@ -31,8 +26,8 @@ void generator(TContainer &c, const T &rangeStart, const T &ra template class TContainer, typename TItem, typename TIterator> void print(const TContainer &c) { - copy(c.begin(), c.end(), ostream_iterator { cout, " " }); - cout << endl; + copy(c.begin(), c.end(), std::ostream_iterator { std::cout, " " }); + std::cout << std::endl; } template class TContainer, typename TItem, typename TIterator>