Website Summary Files Commits Branches @commit @diff @stats
path: root / Week07 / Exercise08.cpp
diff options
context:
space:
mode:
Commit3e8ac7ba4a8f410703aa5a8426f542217adcbf2f (patch)
Author
 Syndamia <kamen@syndamia.com>
2025-11-14 20:55:42 +0200
Committer
 Syndamia <kamen@syndamia.com>
2025-11-14 20:55:42 +0200
Files85d854d449924ef1b88ddb4e5e3f37fb2a68299f /Week07/Exercise08.cpp
upp-2025-solutions-3e8ac7ba4a8f410703aa5a8426f542217adcbf2f.tar
upp-2025-solutions-3e8ac7ba4a8f410703aa5a8426f542217adcbf2f.tar.gz
upp-2025-solutions-3e8ac7ba4a8f410703aa5a8426f542217adcbf2f.zip
Parentec8ecd4dc19854007428761c330303854478201f (diff)
feat(Week07): Add solutions
1 files changed, 32 insertions, 0 deletions
-rw-r--r--Week07/Exercise08.cpp32
diff --git a/Week07/Exercise08.cpp b/Week07/Exercise08.cpp
new file mode 100644
index 0000000..375d1d4
--- /dev/null
+++ b/Week07/Exercise08.cpp
@@ -0,0 +1,32 @@
+#include <iostream>
+
+void rotate(const unsigned int* input, unsigned int size, unsigned int rotation, unsigned int* output) {
+ rotation %= size;
+
+ for (unsigned int i = 0; i < size; i++)
+ output[(i + rotation) % size] = input[i];
+}
+
+// Никой не е забранил да правим допълнителни функции.
+// ВНИМАНИЕ: входния размер ТРЯБВА да бъде константа!
+void rotateUserInput(const unsigned int SIZE) {
+ unsigned int series[SIZE], rotation;
+
+ for (unsigned int i = 0; i < SIZE; i++)
+ std::cin >> series[i];
+ std::cin >> rotation;
+
+ unsigned int result[SIZE];
+ rotate(series, SIZE, rotation, result);
+
+ for (unsigned int i = 0; i < SIZE; i++)
+ std::cout << result[i] << ' ';
+ std::cout << std::endl;
+}
+
+int main() {
+ rotateUserInput(6);
+ rotateUserInput(7);
+
+ return 0;
+}