Здесь показаны различия между двумя версиями данной страницы.
| Предыдущая версия справа и слева Предыдущая версия Следующая версия | Предыдущая версия | ||
|
5i_2024 [2024/03/13 11:37] super_admin [Введение в программирование] |
5i_2024 [2024/05/20 12:29] (текущий) super_admin [Программирование] |
||
|---|---|---|---|
| Строка 1: | Строка 1: | ||
| ====== 5И класс ====== | ====== 5И класс ====== | ||
| + | |||
| + | ===== Программирование ==== | ||
| + | |||
| + | ===== Водолей ===== | ||
| + | |||
| + | * [[https://kpolyakov.spb.ru/school/blockly/vodoley_linear.html?level=1 | Водолей]] | ||
| + | ===== Введение в программирование ===== | ||
| + | |||
| + | [[ https://blockly-games.appspot.com/?lang=ru|{{:screens:blockly_games.png?nolink&400|}}]] | ||
| + | * [[ https://blockly-games.appspot.com/?lang=ru]] - простейшие игры для изучения программирования | ||
| + | * [[http://blockly.ru/index.html]] - **Blocly** | ||
| + | * [[http://blockly.ru/manual/beginning.html]] - **учебник Blocly** | ||
| + | * [[http://blockly.ru/games/about-games.html]] - **игры Blocly** | ||
| + | * [[https://lightbot.com/flash.html]] - алгоритмические головоломки. | ||
| + | ==== Алгоритмы для исполнителя Робот на языке Python ==== | ||
| + | |||
| + | |||
| + | **Подготовительный уровень:** | ||
| + | * [[http://reeborg.ca/reeborg.html?lang=en&mode=python&menu=worlds%2Fmenus%2Fsk_menu.json&name=Step%202&url=worlds%2Fsk%2Fstep2.json | Элементарная задача. Путь к дому, собрать предметы ]] | ||
| + | * [[http://reeborg.ca/reeborg.html?lang=en&mode=python&menu=worlds%2Fmenus%2Fsk_menu.json&name=Step%203&url=worlds%2Fsk%2Fstep3.json | Элементарная задача. Путь по кругу. Подготовка ]] | ||
| + | |||
| + | **Первый уровень:** | ||
| + | * [[http://reeborg.ca/reeborg.html?lang=en&mode=python&menu=worlds%2Fmenus%2Freeborg_intro_en.json&name=Around%201%20-%20variable&url=worlds%2Ftutorial_en%2Faround1b.json | Прогулка по кругу 1 (вариативный вариант) ]] | ||
| + | * [[http://reeborg.ca/reeborg.html?lang=en&mode=python&menu=worlds%2Fmenus%2Freeborg_intro_en.json&name=Around%201%20-%20apple&url=worlds%2Ftutorial_en%2Faround1c.json | Собери яблоки (вариативный вариант)]] | ||
| + | * [[http://reeborg.ca/reeborg.html?lang=en&mode=python&menu=worlds%2Fmenus%2Freeborg_intro_en.json&name=Around%202&url=worlds%2Ftutorial_en%2Faround2.json | Прогулка по кругу 2 ]] | ||
| + | * [[http://reeborg.ca/reeborg.html?lang=en&mode=python&menu=worlds%2Fmenus%2Freeborg_intro_en.json&name=Around%202&url=worlds%2Ftutorial_en%2Faround2.json | Прогулка по кругу 3 ]] | ||
| + | * [[http://reeborg.ca/reeborg.html?lang=en&mode=python&menu=worlds%2Fmenus%2Freeborg_intro_en.json&name=Around%203&url=worlds%2Ftutorial_en%2Faround3.json | Прогулка по кругу 4 ]] | ||
| + | * [[http://reeborg.ca/reeborg.html?lang=en&mode=python&menu=worlds%2Fmenus%2Fsk_menu.json&name=Step%2017&url=worlds%2Fsk%2Fstep17.json | Лабиринт. Вариативная задача ]] | ||
| + | |||
| + | ===== Контрольная работа ===== | ||
| + | * https://kpolyakov.spb.ru/school/blockly/drawer_loop.html | ||
| + | |||
| + | ===== Учебный курс ===== | ||
| + | |||
| + | |||
| https://stepik.org/lesson/651556/step/9?unit=648260 | https://stepik.org/lesson/651556/step/9?unit=648260 | ||
| + | |||
| + | ===== Робот «Кумир» ===== | ||
| + | **Вариант 1** | ||
| + | |||
| + | |||
| + | * [[https://stepik.org/lesson/809513/step/3?unit=812763]] | ||
| + | * [[https://stepik.org/lesson/809513/step/10?unit=812763]] | ||
| + | |||
| + | ==== Задача 1.1 ==== | ||
| + | |||
| + | На бесконечном поле имеются 4 стены ы форме прямоугольника. Длины стен неизвестны и длины проёмов в стенах неизвестны. Робот находится на нижней стене (ближе к середине). | ||
| + | |||
| + | {{::ku3_.png|}} | ||
| + | {{::ku4.png|}} | ||
| + | |||
| + | ==== Задача 1.2 ==== | ||
| + | |||
| + | На бесконечном поле имеются 4 стены ы форме прямоугольника. Длины стен неизвестны и длины проёмов в стенах неизвестны. Робот находится на левой стене (ближе к середине). | ||
| + | |||
| + | {{::ku3_2.png|}} | ||
| + | {{::ku4_2.png|}} | ||
| + | |||
| + | ==== Задача 2.1 ==== | ||
| + | |||
| + | На бесконечном поле имеется лестница. Сначала лестница слева направо спускается вниз, затем поднимается вверх. Высота каждой ступени – одна клетка, ширина – две клетки. Робот находится на первой ступеньке лестницы, | ||
| + | в левой клетке. Количество ступеней, ведущих вниз, и количество ступеней, ведущих вверх, неизвестно. | ||
| + | |||
| + | {{::1019.gif?nolink |}} | ||
| ===== Яндекс учебник ===== | ===== Яндекс учебник ===== | ||
| * https://education.yandex.ru/kids/ Вход для ученика | * https://education.yandex.ru/kids/ Вход для ученика | ||
| * У03300338 - код школы | * У03300338 - код школы | ||
| + | |||
| + | |||
| + | ==== Алгоритмы для исполнителя Робот на языке Python ==== | ||
| + | |||
| + | |||
| + | **Подготовительный уровень:** | ||
| + | * [[http://reeborg.ca/reeborg.html?lang=en&mode=python&menu=worlds%2Fmenus%2Fsk_menu.json&name=Step%201&url=worlds%2Fsk%2Fstep1.json | Элементарная задача. Путь к дому]] | ||
| + | * [[http://reeborg.ca/reeborg.html?lang=en&mode=python&menu=worlds%2Fmenus%2Fsk_menu.json&name=Step%202&url=worlds%2Fsk%2Fstep2.json | Элементарная задача. Путь к дому, собрать предметы ]] | ||
| + | * [[http://reeborg.ca/reeborg.html?lang=en&mode=python&menu=worlds%2Fmenus%2Fsk_menu.json&name=Step%203&url=worlds%2Fsk%2Fstep3.json | Элементарная задача. Путь по кругу. Подготовка ]] | ||
| + | |||
| + | **Первый уровень:** | ||
| + | * [[http://reeborg.ca/reeborg.html?lang=en&mode=python&menu=worlds%2Fmenus%2Freeborg_intro_en.json&name=Around%201%20-%20variable&url=worlds%2Ftutorial_en%2Faround1b.json | Прогулка по кругу 1 (вариативный вариант) ]] | ||
| + | * [[http://reeborg.ca/reeborg.html?lang=en&mode=python&menu=worlds%2Fmenus%2Freeborg_intro_en.json&name=Around%201%20-%20apple&url=worlds%2Ftutorial_en%2Faround1c.json | Собери яблоки (вариативный вариант)]] | ||
| + | * [[http://reeborg.ca/reeborg.html?lang=en&mode=python&menu=worlds%2Fmenus%2Freeborg_intro_en.json&name=Around%202&url=worlds%2Ftutorial_en%2Faround2.json | Прогулка по кругу 2 ]] | ||
| + | * [[http://reeborg.ca/reeborg.html?lang=en&mode=python&menu=worlds%2Fmenus%2Freeborg_intro_en.json&name=Around%202&url=worlds%2Ftutorial_en%2Faround2.json | Прогулка по кругу 3 ]] | ||
| + | * [[http://reeborg.ca/reeborg.html?lang=en&mode=python&menu=worlds%2Fmenus%2Freeborg_intro_en.json&name=Around%203&url=worlds%2Ftutorial_en%2Faround3.json | Прогулка по кругу 4 ]] | ||
| + | * [[http://reeborg.ca/reeborg.html?lang=en&mode=python&menu=worlds%2Fmenus%2Fsk_menu.json&name=Step%2017&url=worlds%2Fsk%2Fstep17.json | Лабиринт. Вариативная задача ]] | ||
| + | |||
| + | === РОБОТ МФТИ === | ||
| + | |||
| + | * http://judge.mipt.ru/mipt_cs_on_python3/labs/lab2.html РОБОТ | ||
| + | * {{ :robot-tasks-master_.zip |}} - Архив с файлами робота (модификация: в файле pyrob/api.py добавлен, приведенный ниже код, упрощающий написание команд (инструкций) управления роботом) | ||
| + | |||
| + | <code python> | ||
| + | ml = move_left #Пройти n клеток влево (по умолчанию n = 1) | ||
| + | mr = move_right #Пройти n клеток вправо (по умолчанию n = 1) | ||
| + | mu = move_up #Пройти n клеток вверх (по умолчанию n = 1) | ||
| + | md = move_down #Пройти n клеток вниз (по умолчанию n = 1) | ||
| + | wu = wall_is_above #если сверху стена, возвращает True, иначе — False | ||
| + | wd = wall_is_beneath #если снизу стена, возвращает True, иначе — False | ||
| + | wl = wall_is_on_the_left #если слева стена, возвращает True, иначе — False | ||
| + | wr = wall_is_on_the_right #если справа стена, возвращает True, иначе — False | ||
| + | fill = fill_cell #Закрасить текущую клетку | ||
| + | #cell_is_filled #Возвращает True, если текущая клетка закрашена | ||
| + | #mov #Поместить значение v в регистр r | ||
| + | |||
| + | </code> | ||
| + | |||
| + | **Пример решения первой задачи** | ||
| + | |||
| + | {{:2023-10-15_22_50_21-window.png?nolink|}} | ||
| + | |||
| + | <code python> | ||
| + | #!/usr/bin/python3 | ||
| + | |||
| + | from pyrob.api import * | ||
| + | |||
| + | |||
| + | @task | ||
| + | def task_1_1(): | ||
| + | #pass | ||
| + | mr(2) # Пройти 2 клетки вправо или: move_right(2) | ||
| + | md(1) # Пройти 1 клетку вниз или: move_down(2) | ||
| + | |||
| + | |||
| + | if __name__ == '__main__': | ||
| + | run_tasks() | ||
| + | </code> | ||
| + | |||
| Строка 65: | Строка 187: | ||
| {{::trt2_0_1.png?nolink|}} | {{::trt2_0_1.png?nolink|}} | ||
| - | ==== Пример ==== | ||
| - | |||
| - | {{::n10_.gif?nolink|}} | ||
| - | |||
| - | <code Python> | ||
| - | |||
| - | from turtle import * # подключение всех методов (инструкций) библиотеки Turtle | ||
| - | shape("turtle") | ||
| - | pencolor("green") | ||
| - | #pencolor("#00FF00") | ||
| - | speed(3) | ||
| - | pensize(2) | ||
| - | lt(90) | ||
| - | for step in range(10): | ||
| - | for step in range(10): | ||
| - | fd(40) | ||
| - | lt(360/10) | ||
| - | lt(360/10) | ||
| - | | ||
| - | done() | ||
| - | |||
| - | </code> | ||
| - | |||
| - | ==== Черепашка - чертежник ==== | ||
| - | |||
| - | {{::kumir.png?400|}} | ||
| - | <code> | ||