Тема 6. Алгоритмы – определение результата

6.01 Определение результатов работы простейших алгоритмов управления исполнителями

Вспоминай формулы по каждой теме
Решай новые задачи каждый день
Вдумчиво разбирай решения
ШКОЛКОВО.
Готовиться с нами - ЛЕГКО!
Подтемы раздела алгоритмы – определение результата
Решаем задачу:

Ошибка.
Попробуйте повторить позже

Задача 1#59833

Исполнитель Чертёжник перемещается на координатной плоскости, оставляя след в виде линии. Чертёжник может выполнять команду Сместиться на (a,b) (где a, b — целые числа), перемещающую Чертёжника из точки с координатами (x, y) в точку с координатами (x+a, y+b). Если числа a, b положительные, то значение соответствующей координаты увеличивается, если отрицательные — уменьшается. Например, если Чертёжник находится в точке с координатами (4, 2), то команда Сместиться на (2,-3) переместит Чертёжника в точку (6,-1). Запись

Повтори k раз

Команды

конец

означает, что последовательность Команд повторится k раз.

Чертёжнику был дан для исполнения следующий алгоритм:

Повтори 2 раза

Сместиться на (2, 1)

Сместиться на (-2, -1)

Сместиться на (3, 5)

конец

Перед началом алгоритма Чертёжник находился в точке с координатами (0, 0). Определите количество точек с целочисленными координатами, которые принадлежат начерченной линии. Начальную точку (0,0) учитывать не следует.

Показать ответ и решение

Решение с помощью программы:

Напишем программу, используя библиотеку turtle для визуализации движения Черепахи по заданному алгоритму. Основная цель — построить фигуру по алгоритму, а затем проверить, какие точки с целочисленными координатами лежат внутри неё. Для этого сначала выполняется алгоритм Черепахи, который рисует границу области по заданному в условии алгоритму. После этого необходимо отрисовать точки с целочисленными координатами, для того чтобы после завершения алгоритма посчитать их. Для удобства визуализации применяется масштабирование (через переменную k), иначе фигура будет слишком маленькой. Все перемещения умножаются на k.

from turtle import * # Модуль для работы с Черепахой

tracer() # Ускорение анимации
k = 20 # Масштаб для увеличения видимости рисунка
dot(3, ’red’) # Точка (0,0)

# Функция для смещения с логированием координат
# xcor, ycor - Текущие координаты черепахи
def move(a, b):
    x = xcor() + a # Изменение координаты x
    y = ycor() + b # Изменение координаты y
    goto(x, y) # Перемещение к точке (x, y)

# Основной алгоритм Черепахи

for i in range(2): # Повторить два раза
    move(2 * k, 1 * k) # Сместиться на (2, 1)
    move(-2 * k, -1 * k) # Сместиться на (-2, -1)
    move(3 * k, 5 * k) # Сместиться на (3, 5)
pu() # Поднимаем хвост

# Расставляем точки с целыми координатами
for x in range(0, 10): # Перебор абсцисс точек
    for y in range(0, 12): # Перебор ординат точек
        goto(x * k, y * k) # Перемещение к точке (x, y)
        dot(2) # Ставим точку размера 2
done() # Завершение работы (окно остаётся открытым)

PIC

Остается лишь посчитать количество точек у получившейся фигуры. Всего их 4 штуки.

Решение с помощью Кумира:

В результате выполнения алгоритма через программу «Кумир» , получаем следующую картинку:

PIC

Как видно из рисунка, целочисленные координаты имеют точки: (2,1), (3,5), (5,6), (6,10). Всего их 4 штуки.

Ответ: 4

Специальные программы

Все специальные программы

Программа
лояльности v2.0

Приглашай друзей в Школково и получай вознаграждение до 10%!

Крути рулетку
и выигрывай призы!

Крути рулетку и покупай курсы со скидкой, которая привязывается к вашему аккаунту.

Бесплатное онлайн-обучение

Для школьников из приграничных территорий России, проживающих в ДНР, ЛНР, Херсонской, Запорожской, Белгородской, Курской, Брянской областях и Крыму.

Налоговые вычеты

Узнай, как получить налоговый вычет при оплате обучения в «Школково».

Специальное предложение
для учителей

Бесплатный доступ к любому курсу подготовки к ЕГЭ, ОГЭ и олимпиадам от «Школково». Мы с вами делаем общее и важное дело, а потому для нас очень значимо быть чем-то полезными для учителей по всей России!

Вернём деньги за курс
за твою сотку на ЕГЭ

Сдать экзамен на сотку и получить обратно деньги за подготовку теперь вполне реально!

cyberpunkMouse
cyberpunkMouse
Рулетка
Вы можете получить скидку в рулетке!