Website Summary Files Commits Branches @commit @diff @stats
path: root / Sem. 03 / README.md
diff options
context:
space:
mode:
Commitd7c6ef7130288c7a842184e9e280c8a07abfbc9c (patch)
Author
 angeld55 <angel_dimitriev@abv.bg>
2021-10-21 21:12:50 +0300
Committer
 angeld55 <angel_dimitriev@abv.bg>
2021-10-21 21:12:50 +0300
Files17f5ed73cc77d86e3c6d469887ff89ff87e61a2e /Sem. 03/README.md
Introduction_to_programming_FMI-d7c6ef7130288c7a842184e9e280c8a07abfbc9c.tar
Introduction_to_programming_FMI-d7c6ef7130288c7a842184e9e280c8a07abfbc9c.tar.gz
Introduction_to_programming_FMI-d7c6ef7130288c7a842184e9e280c8a07abfbc9c.zip
Parent99d2566b60caa52133d431869e57cdb7a7279b6d (diff)
sem 3
1 files changed, 110 insertions, 0 deletions
-rw-r--r--Sem. 03/README.md110
diff --git a/Sem. 03/README.md b/Sem. 03/README.md
new file mode 100644
index 0000000..92d836a
--- /dev/null
+++ b/Sem. 03/README.md
@@ -0,0 +1,110 @@
+# Оператори за цикъл
+
+
+### Цикъл while
+
+
+![enter image description here](https://i.ibb.co/7GgKR7k/Untitled-Diagram-1.png)
+```c++
+while(<condition>)
+{
+ body...
+}
+```
+
+Пример с на **Алгоритъмът на Евклид**:
+```c++
+ n = 16, k = 24
+ <24, 16> 24 % 16 = 8
+ <16, 8> 16 % 8 = 0
+ <8, 0>
+ => gcd(16,24) = 8
+```
+
+
+### Цикъл for
+```c++
+for(int i = 0; i <= 300; i+=2)
+{
+ //body
+}
+```
+
+Структурата на for-циклите включва:
+1. инициализационен блок
+2. условие на цикъла
+3. команди за обновяване на водещите променливи
+4. Тяло на цикъла
+
+
+### Цикъл do-while
+
+_Do-while_ конструкцията е подобна _while_ цикъла, но с тази разлика, че условието е зададено в края т.е. проверката се прави след като се изпълни тялото на цикъла.
+```c++
+do
+{
+ //body
+} while(<condition>);
+```
+**Важно**: При do-while тялото се изпълнява поне веднъж!
+
+**Задача 1:** Да се напише програма, която приема поток от числа. Числата се събират, докато не срещне числото 0. Тогава трябва да се отпечата акумулираният резултат и да програмта да приключи.
+
+*Вход: 1 2 3 4 5 6 0, Изход: 21*
+
+*Вход: 9 9 1 0, Изход: 19*
+
+*Вход: 5 4 3 0 Изход: 12*
+
+**Задача 2:** Да се напише програма, която приема 2 числа. Да се отпечатат всички общи делители сортиран наобратно.
+
+*Вход: 28 21, Изход: 7 3 1*
+
+*Вход: 60 30 Изход: 30 15 10 5 3 1*
+
+*Вход: 5 4 3 0 Изход: 12*
+
+**Задача 3:** Да се напише програма, която приема число и премахва среднaта цифра , ако числото има нечетен брой цифри или премахва средните две цифри, ако числото има четен брой цифри. След това да се отпечата числото увеличено с 1-ца.
+
+
+*Вход: 1234, Изход: 14, 15*
+
+*Вход: 123 Изход: 13, 14*
+
+*Вход: 51234 Изход: 5134, 5135*
+
+*Вход: 5 Изход: 0, 1*
+
+**Задача 4:** Да се напише програма, която приема 2 числa - a и b и отпечатва всички прости числа в интервала [a, b].
+
+
+*Вход: 10 20, Изход: 11, 13, 17, 19*
+
+*Вход: 20 1 Изход: *
+
+*Вход: 1 20 Изход: 2 3 5 7 11 13 17 19*
+
+**Задача 5:** Да се напише програма, която приема цяло число и отпечатва дали е степен на 2-ката.
+
+*Вход: 1 , Изход: true*
+
+*Вход: 20 Изход: false*
+
+*Вход: 1024 Изход: true*
+**Задача 6:** Да се напише програма, която приема цяло число и го отпечатва като сума на степени 2-ката, без повторение. (всяко число има единствено такова представяне)
+
+*Вход: 5 , Изход: 2^2 + 2^0*
+
+*Вход: 20 Изход: 2^4 + 2^2*
+
+*Вход: 15 Изход: 2^3 + 2^2 + 2^1 +2^0*
+
+**Задача 7:** Въвеждат се 5 цели числа - a,b,c,d, e.
+Разглеждаме полинома f(x) = a * x^4 + b * x^3 + c* x^2 + d * x + e.
+Отпечатайте всички цели решения на f(x) >= 0 където x e в интервала [-100, 100]
+
+
+*Вход: -1 4 0 8 1 , Изход: -1 0 2 3*
+
+*Вход: 0 0 -1 5 -6 Изход: 2 3*
+