Summary Files Commits Branches @commit @diff @stats
path: root / src / teaching / upp-2023 / week13 / index.du
diff options
context:
space:
mode:
1 files changed, 27 insertions, 17 deletions
-rw-r--r--src/teaching/upp-2023/week13/index.du44
diff --git a/src/teaching/upp-2023/week13/index.du b/src/teaching/upp-2023/week13/index.du
index c12c546..8c077db 100644
--- a/src/teaching/upp-2023/week13/index.du
+++ b/src/teaching/upp-2023/week13/index.du
@@ -1,12 +1,15 @@
-# Задачи - УПП, Седмица 13, 12.01.2024
+'def title Задачи - УПП, Седмица 13, 12.01.2024
+'def desc Условия на задачите за упражнение
+
+# {title}
\n
-GitHub classroom: [url https://classroom.github.com/a/bgiFD6SB classroom.github.com/a/bgiFD6SB]
+GitHub classroom: {url classroom.github.com/a/bgiFD6SB;https://classroom.github.com/a/bgiFD6SB}
## Алтернативни задачи
-Считайте [url https://github.com/ivanahristova/introduction-to-programming-2023-2024/tree/main/sem13 задачите от семинара] и [url ../week12/ тези от миналия път] като част от днешните задачи.
+Считайте {url задачите от семинара;https://github.com/ivanahristova/introduction-to-programming-2023-2024/tree/main/sem13} и {url тези от миналия път;../week12/} като част от днешните задачи.
Тоест, за хората които се затрудняват повечко, решете ги и след това се върнете тук.
Разбира се, ще помагам и с тях.
@@ -20,9 +23,10 @@ GitHub classroom: [url https://classroom.github.com/a/bgiFD6SB classroom.github.
Всяка дума е на нов ред и е съставена от малки латински букви.
Ако има няколко думи с еднаква "близкост", изкарайте последната от тях.
-[=Примери:=]
+{b Примери:}
-:table_2
+:table
+:2
|= Вход
|= Изход
@@ -50,6 +54,7 @@ mask
|: task
+
## 2 задача
В началото получавате неотрицателно цяло число N.
@@ -59,14 +64,15 @@ mask
Редовете са разбъркани, изкарайте първо име и фамилия на хората с най-много продадени продукти.
Ако има няколко хора, които са продали най-много продукти, изкарайте имената им в азбучен ред, първо по фамилия, после по име.
-Използвайте [=само една функция за сортиране!=]
+Използвайте {b само една функция за сортиране!}
Като подсказка, използвайте указатели към функции за да променяте как тя работи.
.question Какво свойство трябва да е изпълнено за сортиращата функция?
-[=Примери:=]
+{b Примери:}
-:table_2
+:table
+:2
|= Вход
|= Изход
@@ -86,6 +92,7 @@ Joseph Carmichael
Antony Garcia
+
## 3 задача
Ще дефинираме обвито изречение, като редица от букви, за които са изпълнени следните правила:
@@ -121,9 +128,10 @@ A .
Изкарайте на конзолата всички обвити изречения в матрицата (редът им няма значение).
-[=Примери:=]
+{b Примери:}
-:table_2
+:table
+:2
|= Вход
|= Изход
@@ -196,9 +204,10 @@ jumper
Big jumper.
+
## 4 задача
-В префиксния (или полския) запис слагаме оператора за смятане пред (в ляво от) елементите върху които работи (нормален запис - [`1 + 2`], полски запис - [`+ 1 2`]).
+В префиксния (или полския) запис слагаме оператора за смятане пред (в ляво от) елементите върху които работи (нормален запис - {` 1 + 2}, полски запис - {` + 1 2}).
Ще разглеждаме "многоредови" изрази в полски запис, тоест изрази в които има няколко реда от целочислени стойности, така че трябва да се изчислят няколко израза с еднаква "форма", но различни стойности.
Един такъв израз изглежда така:
@@ -209,7 +218,7 @@ Big jumper.
5 6 .
Точката на края на последния ред задава край на израза.
-В този пример ще изчислим [`1 + 2`], [`3 + 4`] и [`5 + 6`], тоест ще "върне" три стойности: 3, 7 и 11.
+В този пример ще изчислим {` 1 + 2}, {` 3 + 4} и {` 5 + 6}, тоест ще "върне" три стойности: 3, 7 и 11.
Всяка колона в израза е от един и същи "тип", тоест в една колона винаги ще има числова стойност или някакъв знак.
С изключение на точката, всеки знак може да се постави на произволен ред (обаче в една колона не може да има повече от един знак).
@@ -220,10 +229,10 @@ Big jumper.
+ 3 4 7 7
5 6 * 8 9 .
-Това ще изчисли [`1 + (2 - 2 * 63)`], [`3 + (4 - 7* 7)`] и [`5 + (6 - 8 * 9)`].
+Това ще изчисли {` 1 + (2 - 2 * 63)}, {` 3 + (4 - 7* 7)} и {` 5 + (6 - 8 * 9)}.
Израза би направил същото нещо ако примерно всички знаци бяха на първия ред или на последния.
-От входа получавате няколко такива израза, докато не получите знака [`$`].
+От входа получавате няколко такива израза, докато не получите знака {` $}.
Може да достъпвате стойност от предходни изрази чрез синтаксиса "ИНДЕКС.ИНДЕКС", където индексите са от 0, първия определя номера на израза, докато втория определя коя стойност искаме.
Примерно:
@@ -238,11 +247,12 @@ Big jumper.
Накрая трябва да изкарате всички стойности от последния израз.
-.warn Погледнете пояснението за вход/изход от [url ../week12/#4 последната задача от миналия път].
+.warn Погледнете пояснението за вход/изход от {url последната задача от миналия път;../week12/#4}.
-[=Пример:=]
+{b Пример:}
-:table_2
+:table
+:2
|= Вход
|= Изход