From 5294e73a21f3402e14fcf3379c721275e2dd19c2 Mon Sep 17 00:00:00 2001 From: Syndamia Date: Sun, 23 Nov 2025 15:25:29 +0200 Subject: feat(Week08): Add solutions --- Week08/Exercise02.cpp | 28 ++++++++++++++++++++++++++++ 1 file changed, 28 insertions(+) create mode 100644 Week08/Exercise02.cpp (limited to 'Week08/Exercise02.cpp') diff --git a/Week08/Exercise02.cpp b/Week08/Exercise02.cpp new file mode 100644 index 0000000..34752c5 --- /dev/null +++ b/Week08/Exercise02.cpp @@ -0,0 +1,28 @@ +#include + +void rowSum(const unsigned int* matrix, unsigned int rows, unsigned int cols, unsigned int* sum) { + for (unsigned int row = 0; row < rows; row++) + for (unsigned int col = 0; col < cols; col++) + /* За повече информация защо така индексираме в matrix, вижте + * https://syndamia.com/teaching/upp-2025/cpp-pitfalls/#-int73-vs-int3-vs-int + */ + sum[col] += matrix[row * cols + col]; +} + +int main() { + const unsigned int ROWS = 7, COLS = 3; + unsigned int mat[ROWS][COLS]; + + for (unsigned int i = 0; i < ROWS; i++) + for (unsigned int j = 0; j < COLS; j++) + std::cin >> mat[i][j]; + + unsigned int sum[COLS] = { 0 }; + rowSum((const unsigned int*)mat, ROWS, COLS, sum); + + for (unsigned int col = 0; col < COLS; col++) + std::cout << sum[col] << ' '; + std::cout << std::endl; + + return 0; +} -- cgit v1.3.1-23-gd82d