Website Summary Files Commits Branches @commit @diff @stats
path: root / Week07 / Exercise02.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/Exercise02.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, 29 insertions, 0 deletions
-rw-r--r--Week07/Exercise02.cpp29
diff --git a/Week07/Exercise02.cpp b/Week07/Exercise02.cpp
new file mode 100644
index 0000000..7074353
--- /dev/null
+++ b/Week07/Exercise02.cpp
@@ -0,0 +1,29 @@
+#include <iostream>
+
+// Това е пример за декларация на функция: просто описваме функцията
+// как ще изглежда. Това ни позволява да сложим самата имплементация
+// някъде другаде.
+// Има специални механизми, чрез които самата дефиниция/имплементация
+// се "свързва" навсякъде където я използваме. За това в бъдеще.
+unsigned int fib(unsigned int n);
+
+int main() {
+ unsigned int num;
+ std::cin >> num;
+ std::cout << fib(num) << std::endl;
+
+ return 0;
+}
+
+// Това е дефиницията/имплементацията на функцията.
+unsigned int fib(unsigned int n) {
+ unsigned int f0 = 0, f1 = 1;
+ while (n > 0) {
+ unsigned int temp = f0;
+ f0 = f1;
+ f1 += temp;
+
+ n--;
+ }
+ return f0;
+}