From 7cbae327d140f9c03e42fbcd79c346af334bc855 Mon Sep 17 00:00:00 2001 From: Santo Cariotti Date: Fri, 8 Nov 2019 10:04:32 +0100 Subject: Ex 1 Scrivere un metodo che prenda in input un parametro formale array A di interi di dimensione k × n × n ed un double w, e restituisca il valore di verit`a true se esiste un valore dell’indice relativo alla prima dimensione (k) tale che, nella corrispondente matrice quadrata di dimensioni n × n, la media tra il valore minimo ed il valore massimo della diagonale principale sia minore o uguale a w. MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- I_anno/Programmazione_1/ex01.cc | 41 +++++++++++++++++++++++++++++++++++++++++ 1 file changed, 41 insertions(+) create mode 100644 I_anno/Programmazione_1/ex01.cc (limited to 'I_anno/Programmazione_1') diff --git a/I_anno/Programmazione_1/ex01.cc b/I_anno/Programmazione_1/ex01.cc new file mode 100644 index 0000000..ef91698 --- /dev/null +++ b/I_anno/Programmazione_1/ex01.cc @@ -0,0 +1,41 @@ +#include +#include +#include +#define K 2 +#define N 3 + +using namespace std; + +bool func(int a[K][N][N], int w) { + vector list; + for(int i = 0; i < K; ++i) { + list.clear(); + for(int j = 0; j < N; ++j) + list.push_back(a[i][j][j]); + + auto mm = minmax_element(begin(list), end(list)); + float media = (static_cast(*mm.first)+static_cast(*mm.second))/2; + if(media <= w) + return true; + } + + return false; +} + +int main() { + int a[K][N][N] = { + { + {1, 2, 30}, + {1, 80, 3}, + {1, 2, 3}, + }, + { + {1, 2, 30}, + {1, 20, 3}, + {1, 2, 3}, + }}; + + cout << func(a, 5); + + return 0; +} -- cgit v1.2.3-18-g5258