diff --git a/lab18/t1.cpp b/lab18/t1.cpp new file mode 100644 index 0000000..a467f39 --- /dev/null +++ b/lab18/t1.cpp @@ -0,0 +1,20 @@ +#include + +int main() { + unsigned n; + std::cin >> n; + unsigned i = 0, i_min = 0; + double t0 = 0., t_min = 1e9; + for (unsigned i = 0; i < n; i++) { + double t; + std::cin >> t; + t0 += t; + if (t_min > t0) { + t_min = 0; + i_min = i; + } + std::cout << t0 << ' '; + t0 -= 1.; + } + std::cout << std::endl << i_min + 1; +} \ No newline at end of file diff --git a/lab18/t15.cpp b/lab18/t15.cpp new file mode 100644 index 0000000..38cb55e --- /dev/null +++ b/lab18/t15.cpp @@ -0,0 +1,35 @@ +#include +#include +#include + +int main() { + std::cout << "Введіть масив цілих чисел через пробіл: "; + std::vector numbers; + int num; + while (std::cin >> num) { + numbers.push_back(num); + } + + std::vector L = numbers; + std::cout << "Елементи списку L у вихідному порядку: "; + for (int element : L) { + std::cout << element << " "; + } + std::cout << std::endl; + + std::cout << "Елементи списку L у оберненому порядку: "; + for (auto it = L.rbegin(); it != L.rend(); ++it) { + std::cout << *it << " "; + } + std::cout << std::endl; + + std::sort(L.begin(), L.end()); + std::reverse(L.begin(), L.end()); + std::cout << "Елементи списку L відсортовані за зростанням, але виведені у порядку спадання: "; + for (int element : L) { + std::cout << element << " "; + } + std::cout << std::endl; + + return 0; +} diff --git a/lab18/t2.cpp b/lab18/t2.cpp new file mode 100644 index 0000000..41b003e --- /dev/null +++ b/lab18/t2.cpp @@ -0,0 +1,27 @@ +#include +#include +#include + +int main() { + unsigned n, d; + std::cin >> n >> d; + //std::vector v(d); + for (unsigned i = 0; i < n; i++) { + double l = 0, q; + //for (auto& q : v) { + // std::cin >> q; + // l += q * q; + //} + for (unsigned j = 0; j < d; j++) { + std::cin >> q; + l += q*q; + } + double norm = std::sqrt(l); + std::cout << norm << std::endl; + // normalize + //for (auto q : v) { + // std::cout << q / len << ' '; + //} + //std::cout << std::endl; + } +} \ No newline at end of file diff --git a/lab18/t3.cpp b/lab18/t3.cpp new file mode 100644 index 0000000..248bb7a --- /dev/null +++ b/lab18/t3.cpp @@ -0,0 +1,20 @@ +#include + +template +class Poly { +public: + Poly() noexcept = default; + Poly(Poly&&) noexcept = default; + Poly(const Poly&) = default; + Poly& operator=(Poly&&) noexcept = default; + Poly& operator=(const Poly&) = default; + ~Poly() = default; + + // TODO input, constructor +private: + std::list> powers; +}; + +int main() { + // TODO +} \ No newline at end of file diff --git a/lab18/t4.cpp b/lab18/t4.cpp new file mode 100644 index 0000000..e343cad --- /dev/null +++ b/lab18/t4.cpp @@ -0,0 +1,27 @@ +#include +#include +#include + +int main() { + unsigned n, m; + std::vector> mat; + + for (size_t i = 0; i < n; i++) { + std::vector row(m); + for (auto& v : row) { + std::cin >> v; + } + row.emplace_back(std::move(row)); + } + + std::sort(mat.begin(), mat.end(), [](const auto& a, const auto& b){ + return std::max_element(a.begin(), a.end()) > std::max_element(b.begin(), b.end()); + }); + + for (const auto& row : mat) { + for (const auto& v : row) { + std::cout << v << ' '; + } + std::cout << std::endl; + } +} \ No newline at end of file