From d2edbc38cac8da52f58c5cd3da6c0c625fa05736 Mon Sep 17 00:00:00 2001 From: Santo Cariotti Date: Sat, 6 Feb 2021 19:56:36 +0100 Subject: conf: rename --- Year_1/Programming_1/ex1_25_06_19.cc | 45 ++++++++++++++++++++++++++++++++++++ 1 file changed, 45 insertions(+) create mode 100644 Year_1/Programming_1/ex1_25_06_19.cc (limited to 'Year_1/Programming_1/ex1_25_06_19.cc') diff --git a/Year_1/Programming_1/ex1_25_06_19.cc b/Year_1/Programming_1/ex1_25_06_19.cc new file mode 100644 index 0000000..f28a09b --- /dev/null +++ b/Year_1/Programming_1/ex1_25_06_19.cc @@ -0,0 +1,45 @@ +#include +#include +#include + +using namespace std; + +template +bool func(int (&A)[N][M], short k, double x) { + for(int i = 0; i < M; ++i) { + vector > v; + + for(int j = 0; j < N-1; ++j) { + v.push_back({A[j][i], A[j+1][i]}); + } + + int check_num = 0; + + for(auto const& i : v) { + if(i.second == 0) continue; + double elem = static_cast(i.first) / static_cast(i.second); + + if(elem < x) + check_num++; + } + + if(check_num == k) + return true; + } + + + return false; +} + +int main() { + int A[4][3] = { + {2, 3, 5}, + {10, 20, 10}, + {90, 19, 69}, + {10, 0, 0}, + }; + + cout << func(A, 2, 0.005) << endl; // 0 + cout << func(A, 2, 1.0) << endl; // 1 + return 0; +} -- cgit v1.2.3-18-g5258