Здесь показаны различия между двумя версиями данной страницы.
| Предыдущая версия справа и слева Предыдущая версия Следующая версия | Предыдущая версия | ||
|
8it_pr_2026 [2026/02/05 16:19] super_admin [НТО] |
8it_pr_2026 [2026/03/26 13:41] (текущий) super_admin [Российское сообщество разработчиков программного кода] |
||
|---|---|---|---|
| Строка 5: | Строка 5: | ||
| * У03300338 - код школы | * У03300338 - код школы | ||
| + | ===== Российское сообщество разработчиков программного кода ===== | ||
| + | |||
| + | Ссылки на ресурсы: | ||
| + | * [[https://hub.mos.ru]] Вход и регистрация | ||
| + | * [[https://hub.mos.ru/mcpro87/addinformatik]] Обучение по информатике. ID проекта: 56627 | ||
| + | * [[https://hub.mos.ru/yarburart/webscraping-learn]] Наброски парсеров на python | ||
| ==== ОГЭ программирование ==== | ==== ОГЭ программирование ==== | ||
| Строка 168: | Строка 174: | ||
| {{::sqr_8_4.gif?nolink|}} | {{::sqr_8_4.gif?nolink|}} | ||
| - | ==== Задачи из ЕГЭ ==== | ||
| - | |||
| - | * [[https://kpolyakov.spb.ru/school/ege/gen.php?action=viewTopic&topicId=5559]] | ||
| - | * [[https://kpolyakov.spb.ru/school/ege/gen.php?action=viewTopic&topicId=5555]] | ||
| - | * [[https://kpolyakov.spb.ru/school/ege/gen.php?action=viewTopic&topicId=5554]] | ||
| - | |||
| - | <code Python> | ||
| - | from turtle import * | ||
| - | #speed(0) | ||
| - | tracer(0) | ||
| - | m = 30 | ||
| - | lt(90) | ||
| - | for i in range(7): | ||
| - | fd(10 * m) | ||
| - | rt(120) | ||
| - | |||
| - | penup() | ||
| - | for y in range(-3 * m, 11 * m, m): | ||
| - | for x in range(-3 * m, 11 * m, m): | ||
| - | goto(x, y) | ||
| - | dot(size = 4) | ||
| - | |||
| - | done() | ||
| - | </code> | ||
| ==== Задача 5: ==== | ==== Задача 5: ==== | ||
| Строка 222: | Строка 204: | ||
| done() # в конце программы | done() # в конце программы | ||
| + | </code> | ||
| + | |||
| + | ==== Задачи из ЕГЭ ==== | ||
| + | |||
| + | |||
| + | * [[https://kpolyakov.spb.ru/school/ege/gen.php?action=viewTopic&topicId=5559]] | ||
| + | * [[https://kpolyakov.spb.ru/school/ege/gen.php?action=viewTopic&topicId=5555]] | ||
| + | * [[https://kpolyakov.spb.ru/school/ege/gen.php?action=viewTopic&topicId=5554]] | ||
| + | |||
| + | **Условие задачи:** | ||
| + | |||
| + | Исполнитель Черепаха действует на плоскости с декартовой (прямоугольной) системой координат. В начальный момент Черепаха находится в начале координат, её голова направлена вдоль положительного направления оси ординат (ось y), хвост опущен. При опущенном хвосте Черепаха оставляет на поле след в виде линии. В каждый конкретный момент известно положение исполнителя и направление его движения. У исполнителя существует две команды: **Вперёд n** (где n – целое число), вызывающая передвижение Черепахи на n единиц в том направлении, куда указывает её голова, и **Направо m** (где m – целое число), вызывающая изменение направления движения на m градусов по часовой стрелке. Запись | ||
| + | |||
| + | Повтори k [Команда1 Команда2 … КомандаS] | ||
| + | |||
| + | означает, что последовательность из S команд повторится k раз. | ||
| + | |||
| + | Черепахе был дан для исполнения следующий алгоритм: | ||
| + | |||
| + | Повтори 7 [Вперёд 10 Направо 120] | ||
| + | |||
| + | Определите, сколько точек с целочисленными координатами будут находиться внутри области, ограниченной линией, заданной данным алгоритмом. Точки на линии учитывать не следует. | ||
| + | |||
| + | <code Python> | ||
| + | from turtle import * | ||
| + | #speed(0) | ||
| + | tracer(0) | ||
| + | m = 30 | ||
| + | lt(90) | ||
| + | for i in range(7): | ||
| + | fd(10 * m) | ||
| + | rt(120) | ||
| + | |||
| + | penup() | ||
| + | for y in range(-3, 11): | ||
| + | for x in range(-3, 11): | ||
| + | goto(x * m, y * m) | ||
| + | dot(size = 4) | ||
| + | |||
| + | done() | ||
| </code> | </code> | ||
| Строка 396: | Строка 418: | ||
| delay(5); | delay(5); | ||
| } | } | ||
| + | </code> | ||
| + | |||
| + | |||
| + | <code C++> | ||
| + | |||
| + | #include <IRremote.h> // подключаем библиотеку для работы с ИК-приёмником | ||
| + | const byte IR_RECEIVE_PIN = 8; // указываем пин, к которому подключен ИК-приёмник | ||
| + | const int LM_s1 = 10; // левый мотор вход 1 | ||
| + | const int LM_s2 = 9; // левый мотор вход 2 | ||
| + | const int RM_s1 = 5; // правый мотор вход 1 | ||
| + | const int RM_s2 = 6; // правый мотор вход 2 | ||
| + | |||
| + | void setup(){ | ||
| + | Serial.begin(9600); | ||
| + | IrReceiver.begin(IR_RECEIVE_PIN, ENABLE_LED_FEEDBACK); | ||
| + | |||
| + | //правый | ||
| + | pinMode(RM_s1, OUTPUT); | ||
| + | pinMode(RM_s2, OUTPUT); | ||
| + | //левый | ||
| + | pinMode(LM_s1, OUTPUT); | ||
| + | pinMode(LM_s2, OUTPUT); | ||
| + | } | ||
| + | |||
| + | void loop() { | ||
| + | if (IrReceiver.decode()) { | ||
| + | Serial.println(IrReceiver.decodedIRData.decodedRawData); // выводим код нажатой кнопки в десятичном формате | ||
| + | |||
| + | switch (IrReceiver.decodedIRData.decodedRawData) { | ||
| + | case 785449215: // Код кнопки "вперед" | ||
| + | //Serial.println("up"); | ||
| + | moveForward(); | ||
| + | break; | ||
| + | case 768737535: // Код кнопки "назад" | ||
| + | moveBackward(); | ||
| + | break; | ||
| + | case 752025855: // Код кнопки "влево" | ||
| + | turnLeft(); | ||
| + | break; | ||
| + | case 735314175: // Код кнопки "вправо" | ||
| + | turnRight(); | ||
| + | break; | ||
| + | case 1387069695: // Код кнопки "остановка" (обычно это код повторного нажатия) | ||
| + | default: | ||
| + | stopMotors(); | ||
| + | break; | ||
| + | } | ||
| + | |||
| + | IrReceiver.resume(); // готовимся к следующему сигналу | ||
| + | } | ||
| + | } | ||
| + | |||
| + | void moveForward() { | ||
| + | Serial.println("up"); | ||
| + | digitalWrite(LM_s1, 1); | ||
| + | digitalWrite(LM_s2, 0); | ||
| + | digitalWrite(RM_s1, 1); | ||
| + | digitalWrite(RM_s2, 0); | ||
| + | delay(60); | ||
| + | } | ||
| + | |||
| + | void moveBackward() { | ||
| + | Serial.println("down"); | ||
| + | |||
| + | digitalWrite(LM_s1, 0); | ||
| + | digitalWrite(LM_s2, 1); | ||
| + | digitalWrite(RM_s1, 0); | ||
| + | digitalWrite(RM_s2, 1); | ||
| + | delay(60); | ||
| + | } | ||
| + | |||
| + | void turnLeft() { | ||
| + | digitalWrite(LM_s1, LOW); | ||
| + | digitalWrite(LM_s2, HIGH); | ||
| + | digitalWrite(RM_s1, HIGH); | ||
| + | digitalWrite(RM_s2, LOW); | ||
| + | delay(60); | ||
| + | } | ||
| + | |||
| + | void turnRight() { | ||
| + | digitalWrite(LM_s1, HIGH); | ||
| + | digitalWrite(LM_s2, LOW); | ||
| + | digitalWrite(RM_s1, LOW); | ||
| + | digitalWrite(RM_s2, HIGH); | ||
| + | delay(60); | ||
| + | } | ||
| + | |||
| + | void stopMotors() { | ||
| + | digitalWrite(LM_s1, LOW); | ||
| + | digitalWrite(LM_s2, LOW); | ||
| + | digitalWrite(RM_s1, LOW); | ||
| + | digitalWrite(RM_s2, LOW); | ||
| + | delay(60); | ||
| + | } | ||
| + | |||
| </code> | </code> | ||