Summary Files Commits Branches @commit @diff @stats
diff options
context:
space:
mode:
Commit0f58f9055d7df0ca82e49d990fca5990a2bba3b4 (patch)
Author
 Syndamia <kamen@syndamia.com>
2023-09-15 16:03:41 +0300
Committer
 Syndamia <kamen@syndamia.com>
2023-10-01 21:26:55 +0300
Filesa12b48eefa504d9818e461e41aa984e793926a26
syndamia.com-0f58f9055d7df0ca82e49d990fca5990a2bba3b4.tar
syndamia.com-0f58f9055d7df0ca82e49d990fca5990a2bba3b4.tar.gz
syndamia.com-0f58f9055d7df0ca82e49d990fca5990a2bba3b4.zip
Parentc41f32857d4c99e246e00af6c1639b426479fc36 (diff)
(te/upp-2023/w1) Moved index to welcome and index will now contain exercises
3 files changed, 297 insertions, 284 deletions
-rw-r--r--src/teaching/upp-2023/index.md2
-rw-r--r--src/teaching/upp-2023/week1/index.md285
-rw-r--r--src/teaching/upp-2023/week1/welcome.md294
diff --git a/src/teaching/upp-2023/index.md b/src/teaching/upp-2023/index.md
index 5b20a01..df36ce9 100644
--- a/src/teaching/upp-2023/index.md
+++ b/src/teaching/upp-2023/index.md
@@ -10,4 +10,4 @@
|&#8470;|Дата|Упражнение|
|-------|----|----------|
-|1 |?.10.2023|[Добре дошли](/teaching/upp-2023/week1)|
+|1 |?.10.2023|[Добре дошли](/teaching/upp-2023/week1/welcome.html) \|\| [Задачи; Visual Studio и първата програма](/teaching/upp-2023/week1?a)|
diff --git a/src/teaching/upp-2023/week1/index.md b/src/teaching/upp-2023/week1/index.md
index d4db42b..9ca9317 100644
--- a/src/teaching/upp-2023/week1/index.md
+++ b/src/teaching/upp-2023/week1/index.md
@@ -1,289 +1,8 @@
-# Добре дошли - УПП, Седмица 1, ?.10.2023
+# Visual Studio и първата програма - УПП, Седмица 1, ?.10.2023
&&presentation
-
-&&slide &&centered &&font35
-
-# Добре дошли
-
-&&width65
-[![](https://upload.wikimedia.org/wikipedia/commons/3/3c/Chimpanzee_seated_at_typewriter.jpg)](https://en.wikipedia.org/wiki/Infinite_monkey_theorem)
-&&/width
-
-&&/font &&/centered &&/slide
-
-
-
-&&slide
-
-## Кой съм аз
-
-&&lineb2
-
-&&font35
-
-Казвам се Камен (моля не ми говорете на Вие), в момента съм третокурсник в КН2.
-
-&&lineb1
-
-Ще водя практикуми - давам ви задачи, вие ги решавате и на живо оправяме проблеми.
-
-&&lineb1
-
-Също може би ще проверявам домашни и/или контролни през семестъра (не знам за сега как ще се организира това).
-
-&&/font
-
-&&/slide
-
-
-
-&&slide
-
-## Кои сте вие
-
-Айде сега, ред по ред:
-
-&&lineb2
-
-&&font35
-
-- Име
- - Едва ли ще го запомня сега, не ми се сърдете :)
-- Коя операционна система ползвате
-- Писали ли сте код преди? Aко да:
- - на кои езици?
- - в какво IDE/текстов редактор?
- - как сте се научили (ходили сте на курсове (къде?) или самоуки)?
-
-&&/font
-
-&&/slide
-
-
-
-&&slide
-
-## Как можете да се свържете
-
-- Facebook messenger: <img class="file-type-icon" src="/file/ephemeral/facebook.png">
-
-- Discord: <img class="file-type-icon" src="/file/ephemeral/discord.png">
-
-- Имейл:
- - <a href="&#109;&#97;&#105;&#108;&#116;&#111;&#58;&#107;&#97;&#109;&#101;&#110;&#46;&#100;&#46;&#109;&#108;&#97;&#100;&#101;&#110;&#111;&#118;&#64;&#112;&#114;&#111;&#116;&#111;&#110;&#109;&#97;&#105;&#108;&#46;&#99;&#111;&#109;">&#107;&#97;&#109;&#101;&#110;&#46;&#100;&#46;&#109;&#108;&#97;&#100;&#101;&#110;&#111;&#118;&#64;&#112;&#114;&#111;&#116;&#111;&#110;&#109;&#97;&#105;&#108;&#46;&#99;&#111;&#109;</a> <a class="borderless" href="/files/publickey-&#107;&#97;&#109;&#101;&#110;&#46;&#100;&#46;&#109;&#108;&#97;&#100;&#101;&#110;&#111;&#118;&#64;&#112;&#114;&#111;&#116;&#111;&#110;&#109;&#97;&#105;&#108;&#46;&#99;&#111;&#109;-62ca52e87475c874b9e6ebf3c4c9f716b6ce4c9d.asc"><img class="borderless unzoomable" src="/img/pgpkey.gif" alt="PGP key"></a>
- - <a href="&#109;&#97;&#105;&#108;&#116;&#111;&#58;&#107;&#097;&#109;&#101;&#110;&#064;&#115;&#121;&#110;&#100;&#097;&#109;&#105;&#097;&#046;&#099;&#111;&#109;">&#107;&#097;&#109;&#101;&#110;&#064;&#115;&#121;&#110;&#100;&#097;&#109;&#105;&#097;&#046;&#099;&#111;&#109;</a> <a class="borderless" href="/files/publickey-&#107;&#097;&#109;&#101;&#110;&#064;&#115;&#121;&#110;&#100;&#097;&#109;&#105;&#097;&#046;&#099;&#111;&#109;-0x354C5F95.asc"><img class="borderless unzoomable" src="/img/pgpkey.gif" alt="PGP key"></a> **(гледайте си спама!)**
- - [kdmladenov@uni-sofia.bg](mailto:kdmladenov@uni-sofia.bg)
-
-&&lineb1
-
-Ако не ви отговоря в рамките на ден-два, пишете ми пак.
-
-&&/slide
-
-
-
-&&slide
-
-## Как ще протичат практикумите
-
-Ще се опитам да ги направя малко по-интересни и по-полезни отколкто съм виждал при други асистенти:
-
-- материали от всякакъв вид в:
-
- &&centered &&font35
- [syndamia.com/teaching/upp-2023](/teaching/upp-2023)
- &&/font &&/centered
-
-- ще започнем всяко упражнение с 5 минутки преговор, какво ново трябва да приложим
- и ще го завършим с 15-20 минути (ако има желание/смисъл) обяснение на задача
-- повечето задачи ще имат поне 1-2 външни препратки към неща, свързани с програмиране, компютри и даже математика.
- Не е нужно да ги четете, идеята е да ви покажа какво са правили хората и да ви запозная с неща, които може да са ви интересни.
-
-&&/slide
-
-
-
-&&slide
-
-## Оплаквайте се!
-
-- За първи път водя практикум (и никога не съм преподавал формално)
-- Задачите сам си ги измислям
-
-Ако задачите са трудни, зле направени, ако нещо не обяснявам като хората, изобщо ако нещо не е ок, свържете се с мене, ще го обсъдим.
-
-&&lineb3
-
-## Помагайте си!
-
-- Аз съм един, вие сте >20
-
-<br>
-
-Със сигурност няма да успея да мога да помогна на всеки по всяко време от практикума, не се страхувайте да питате съседите си за помощ.
-
-&&/slide
-
-
-
-&&slide
-
-## Няколко съвета в позицията ми на третокурсник
-
-&&lineb2
-
-&&font35
-
-- **НЕ плагиатствайте!**
- **НЕ си качвайте решения на задачи (особено контролни/домашни) онлайн!**
- Системата е умна, не си мислете, че като промените имена и форматиране на работи няма да ви хване.
- Много хора се прецакаха!
-- **Следвайте материала, който ви се преподава!**
- За хората с опит, ще дойде време когато ще искате да приложите лични знания и практики.
- Ако не е казано някъде, не го правите и не го обмисляте!
-
-&&/font &&/slide
-
-
-
&&clide &&centered
-# ФМИ в контекста на програмирането
-
-Или защо учим толкова много математика
-
-&&lineb2
-
-&&font22
-Ще си позволя едно отклонение, за да
-поясня малко смисъла от ФМИ.
-&&/font
+# Visual Studio и първата програма
&&/centered &&/clide
-
-
-
-&&slide
-
-## В КН2 има много и трудна математика
-
-&&table
-
-&&width35
-![](./img/u4-mat-hard.png)
-&&/width
-
-&&cont
-
-- Жълто - математически предмет
-- Червено - проблемни предмети
-
-<br>
-
-- Всички проблемни предмети също са математики
-- Към половината предмети са математики
-- Почти всички проблемни са наблъскани в 1ви курс
-
-&&/cont
-
-&&/table
-&&/slide
-
-
-
-&&slide
-
-## Защо учим толкова много математика?
-
-Има добра причина, има директни и основни приложения в компютрите, и без тях щяхме още да сме пещерняци.
-Нека обясня защо:
-
-&&lineb2
-
-### Дискретни структури
-
-Смесица на уводите в няколко предмета:
-
-- **Булева алгебра**: как работим и смятаме с истина/лъжа, с 0/1.
- Полезност:
-
- - Доказана е [еквивалентност между ел. вериги и булевата алгебра](https://en.wikipedia.org/wiki/A_Symbolic_Analysis_of_Relay_and_Switching_Circuits).
- - Много типове данни и математически операции могат да се сведат до булева алгебра и работа с памет.
-
-&&/slide
-
-
-
-&&slide
-
-### Дискретни структури (продължение)
-
-- **Теория на множествата**: множество е някаква съвкупност от обекти и дефинираме различни операции с тези съвкупности.
- Полезност:
-
- - Позволява ни да третираме колекция от математически обекти като математически обект[^importance-of-sets].
- Използва се в основата на много математики; колкото са полезни те, толкова са и множествата.
-
-- **Комбинаторика**: като цяло изследва бройки на неща (с/без повторения, в ограничено пространство, ...).
- Полезност[^importance-of-combinatorics]:
-
- - Много често използвана за анализ и дизайн на алгоритми и структори от данни
- - Употребява се при оптимизации и теория на кодирането (компресиране на данни, отстраняване на грешки, криптография)
- - Есенциална в теория на графите
-
-&&/slide
-
-
-
-&&slide
-
-### Дискретни структури (продължение)
-
-&&lineb5
-
-- **Теория на графите**: граф е съвкупност от някакви обекти и връзки между тях.
- Полезност:
-
- - Позволява модерлиране на много естествени структури: интернет мрежите, географски карти (места и пътищата между тях), йерархии, биологически мрежи и так. нат.
- - Използва се във важни структури от данни като [heap](https://en.wikipedia.org/wiki/Heap_%28data_structure%29) (и интересната [fibonacci heap](https://www.youtube.com/watch?v=6JxvKfSV9Ns)) и [trie](https://en.wikipedia.org/wiki/Trie)
-
-&&/slide
-
-
-
-&&slide
-
-### Езици, автомати и изчислимост
-
-Това е част от материала в по-общото "theoretical computer science".
-Можем формално да опишем и докажем теоретични компютри и програми.
-Тези резултати са директно приложими върху ралните компютри.
-
-Дефакто работим с компютрите чисто теоретически, с възможността да правим точни доказателства и да определим всички характеристики на един компютър.
-
-
-### Алгебра 1
-
-Особено полезен клон на алгебрата, може да моделира много неща от физическия свят.
-Повечето компютърна графика се основава на нея и има големи приложения в machine learning, обработка на изображения и алгоритми за препоръки.
-
-TODO
-
-&&/slide
-
-
-
-&&slide
-
-### Диференциално и интегрално смятане
-
-<!-- Математиките извън първи курс също са важни, за вас не са релевантни. -->
-
-&&/slide
-
-
-
-
-[^importance-of-sets]: [https://math.stackexchange.com/a/536172](https://math.stackexchange.com/a/536172)
-[^importance-of-combinatorics]: [https://math.stackexchange.com/questions/2146051/where-do-combinatorics-play-a-role-in-computer-science](https://math.stackexchange.com/questions/2146051/where-do-combinatorics-play-a-role-in-computer-science)
diff --git a/src/teaching/upp-2023/week1/welcome.md b/src/teaching/upp-2023/week1/welcome.md
new file mode 100644
index 0000000..5da6688
--- /dev/null
+++ b/src/teaching/upp-2023/week1/welcome.md
@@ -0,0 +1,294 @@
+# Добре дошли - УПП, Седмица 1, ?.10.2023
+
+&&presentation
+
+&&slide &&centered &&font35
+
+# Добре дошли
+
+&&width65
+[![](https://upload.wikimedia.org/wikipedia/commons/3/3c/Chimpanzee_seated_at_typewriter.jpg)](https://en.wikipedia.org/wiki/Infinite_monkey_theorem)
+&&/width
+
+&&/font &&/centered &&/slide
+
+
+
+&&slide
+
+## Кой съм аз
+
+&&lineb2
+
+&&font35
+
+Казвам се Камен (моля не ми говорете на Вие), в момента съм третокурсник в КН2.
+
+&&lineb1
+
+Ще водя практикуми - давам ви задачи, вие ги решавате и на живо оправяме проблеми.
+
+&&lineb1
+
+Също може би ще проверявам домашни и/или контролни през семестъра (не знам за сега как ще се организира това).
+
+&&/font
+
+&&/slide
+
+
+
+&&slide
+
+## Кои сте вие
+
+Айде сега, ред по ред:
+
+&&lineb2
+
+&&font35
+
+- Име
+ - Едва ли ще го запомня сега, не ми се сърдете :)
+- Коя операционна система ползвате
+- Писали ли сте код преди? Aко да:
+ - на кои езици?
+ - в какво IDE/текстов редактор?
+ - как сте се научили (ходили сте на курсове (къде?) или самоуки)?
+
+&&/font
+
+&&/slide
+
+
+
+&&slide
+
+## Как можете да се свържете
+
+- Facebook messenger: <img class="file-type-icon" src="/file/ephemeral/facebook.png">
+
+- Discord: <img class="file-type-icon" src="/file/ephemeral/discord.png">
+
+- Имейл:
+ - <a href="&#109;&#97;&#105;&#108;&#116;&#111;&#58;&#107;&#97;&#109;&#101;&#110;&#46;&#100;&#46;&#109;&#108;&#97;&#100;&#101;&#110;&#111;&#118;&#64;&#112;&#114;&#111;&#116;&#111;&#110;&#109;&#97;&#105;&#108;&#46;&#99;&#111;&#109;">&#107;&#97;&#109;&#101;&#110;&#46;&#100;&#46;&#109;&#108;&#97;&#100;&#101;&#110;&#111;&#118;&#64;&#112;&#114;&#111;&#116;&#111;&#110;&#109;&#97;&#105;&#108;&#46;&#99;&#111;&#109;</a> <a class="borderless" href="/files/publickey-&#107;&#97;&#109;&#101;&#110;&#46;&#100;&#46;&#109;&#108;&#97;&#100;&#101;&#110;&#111;&#118;&#64;&#112;&#114;&#111;&#116;&#111;&#110;&#109;&#97;&#105;&#108;&#46;&#99;&#111;&#109;-62ca52e87475c874b9e6ebf3c4c9f716b6ce4c9d.asc"><img class="borderless unzoomable" src="/img/pgpkey.gif" alt="PGP key"></a>
+ - <a href="&#109;&#97;&#105;&#108;&#116;&#111;&#58;&#107;&#097;&#109;&#101;&#110;&#064;&#115;&#121;&#110;&#100;&#097;&#109;&#105;&#097;&#046;&#099;&#111;&#109;">&#107;&#097;&#109;&#101;&#110;&#064;&#115;&#121;&#110;&#100;&#097;&#109;&#105;&#097;&#046;&#099;&#111;&#109;</a> <a class="borderless" href="/files/publickey-&#107;&#097;&#109;&#101;&#110;&#064;&#115;&#121;&#110;&#100;&#097;&#109;&#105;&#097;&#046;&#099;&#111;&#109;-0x354C5F95.asc"><img class="borderless unzoomable" src="/img/pgpkey.gif" alt="PGP key"></a> **(гледайте си спама!)**
+ - [kdmladenov@uni-sofia.bg](mailto:kdmladenov@uni-sofia.bg)
+
+&&lineb1
+
+Ако не ви отговоря в рамките на ден-два, пишете ми пак.
+
+&&/slide
+
+
+
+&&slide
+
+## Как ще протичат практикумите
+
+Ще се опитам да ги направя малко по-интересни и по-полезни отколкто съм виждал при други асистенти:
+
+- материали от всякакъв вид в:
+
+ &&centered &&font35
+ [syndamia.com/teaching/upp-2023](/teaching/upp-2023)
+ &&/font &&/centered
+
+- ще започнем всяко упражнение с 5 минутки преговор, какво ново трябва да приложим
+ и ще го завършим с 15-20 минути (ако има желание/смисъл) обяснение на задача
+- повечето задачи ще имат поне 1-2 външни препратки към неща, свързани с програмиране, компютри и даже математика.
+ Не е нужно да ги четете, идеята е да ви покажа какво са правили хората и да ви запозная с неща, които може да са ви интересни.
+
+&&/slide
+
+
+
+&&slide
+
+## Оплаквайте се!
+
+- За първи път водя практикум (и никога не съм преподавал формално)
+- Задачите сам си ги измислям
+
+Ако задачите са трудни, зле направени, ако нещо не обяснявам като хората, изобщо ако нещо не е ок, свържете се с мене, ще го обсъдим.
+
+&&lineb3
+
+## Помагайте си!
+
+- Аз съм един, вие сте >20
+
+<br>
+
+Със сигурност няма да успея да мога да помогна на всеки по всяко време от практикума, не се страхувайте да питате съседите си за помощ.
+
+&&/slide
+
+
+
+&&slide
+
+## Няколко съвета в позицията ми на третокурсник
+
+&&lineb2
+
+&&font35
+
+- **НЕ плагиатствайте!**
+ **НЕ си качвайте решения на задачи (особено контролни/домашни) онлайн!**
+ Системата е умна, не си мислете, че като промените имена и форматиране на работи няма да ви хване.
+ Много хора се прецакаха!
+- **Следвайте материала, който ви се преподава!**
+ За хората с опит, ще дойде време когато ще искате да приложите лични знания и практики.
+ Ако не е казано някъде, не го правите и не го обмисляте!
+
+&&/font &&/slide
+
+
+
+&&clide &&centered
+
+# ФМИ в контекста на програмирането
+
+Или защо учим толкова много математика
+
+&&lineb2
+
+&&font22
+Ще си позволя едно отклонение, за да
+поясня малко смисъла от ФМИ.
+&&/font
+
+&&/centered &&/clide
+
+
+
+&&slide
+
+## В КН2 има много и трудна математика
+
+&&table
+
+&&width35
+![](./img/u4-mat-hard.png)
+&&/width
+
+&&cont
+
+- Жълто - математически предмет
+- Червено - проблемни предмети
+
+<br>
+
+- Всички проблемни предмети също са математики
+- Към половината предмети са математики
+- Почти всички проблемни са наблъскани в 1ви курс
+
+&&/cont
+
+&&/table
+&&/slide
+
+
+
+&&slide
+
+## Защо учим толкова много математика?
+
+Има добра причина, има директни и основни приложения в компютрите, и без тях щяхме още да сме пещерняци.
+Нека обясня защо:
+
+&&lineb2
+
+### Дискретни структури
+
+Смесица на уводите в няколко предмета:
+
+- **Булева алгебра**: как работим и смятаме с истина/лъжа, с 0/1.
+ Полезност:
+
+ - Доказана е [еквивалентност между ел. вериги и булевата алгебра](https://en.wikipedia.org/wiki/A_Symbolic_Analysis_of_Relay_and_Switching_Circuits).
+ - Много типове данни и математически операции могат да се сведат до булева алгебра и работа с памет.
+
+&&/slide
+
+
+
+&&slide
+
+### Дискретни структури (продължение)
+
+- **Теория на множествата**: множество е някаква съвкупност от обекти и дефинираме различни операции с тези съвкупности.
+ Полезност:
+
+ - Позволява ни да третираме колекция от математически обекти като математически обект[^importance-of-sets].
+ Използва се в основата на много математики; колкото са полезни те, толкова са и множествата.
+
+- **Комбинаторика**: като цяло изследва бройки на неща (с/без повторения, в ограничено пространство, ...).
+ Полезност[^importance-of-combinatorics]:
+
+ - Много често използвана за анализ и дизайн на алгоритми и структори от данни
+ - Употребява се при оптимизации и теория на кодирането (компресиране на данни, отстраняване на грешки, криптография)
+ - Есенциална в теория на графите
+
+&&/slide
+
+
+
+&&slide
+
+### Дискретни структури (продължение)
+
+&&lineb5
+
+- **Теория на графите**: граф е съвкупност от някакви обекти и връзки между тях.
+ Полезност:
+
+ - Позволява модерлиране на много естествени структури: интернет мрежите, географски карти (места и пътищата между тях), йерархии, биологически мрежи и так. нат.
+ - Използва се във важни структури от данни като [heap](https://en.wikipedia.org/wiki/Heap_%28data_structure%29) (и интересната [fibonacci heap](https://www.youtube.com/watch?v=6JxvKfSV9Ns)) и [trie](https://en.wikipedia.org/wiki/Trie)
+
+&&/slide
+
+
+
+&&slide
+
+### Езици, автомати и изчислимост
+
+Това е част от материала в по-общото "theoretical computer science".
+Можем формално да опишем и докажем теоретични компютри и програми.
+Тези резултати са директно приложими върху ралните компютри.
+
+Дефакто работим с компютрите чисто теоретически, с възможността да правим точни доказателства и да определим всички характеристики на един компютър.
+
+
+### Алгебра 1
+
+Особено полезен клон на алгебрата, може да моделира много неща от физическия свят.
+Повечето компютърна графика се основава на нея и има големи приложения в machine learning, обработка на изображения и алгоритми за препоръки.
+
+TODO
+
+&&/slide
+
+
+
+&&slide
+
+### Диференциално и интегрално смятане
+
+<!-- Математиките извън първи курс също са важни, за вас не са релевантни. -->
+
+&&/slide
+
+
+&&clide &&font35
+
+# Айде сега сериозно, започваме първото упражнение
+
+&&/font &&/clide
+
+
+[^importance-of-sets]: [https://math.stackexchange.com/a/536172](https://math.stackexchange.com/a/536172)
+[^importance-of-combinatorics]: [https://math.stackexchange.com/questions/2146051/where-do-combinatorics-play-a-role-in-computer-science](https://math.stackexchange.com/questions/2146051/where-do-combinatorics-play-a-role-in-computer-science)