В
Все
М
Математика
О
ОБЖ
У
Українська мова
Д
Другие предметы
Х
Химия
М
Музыка
Н
Немецкий язык
Б
Беларуская мова
Э
Экономика
Ф
Физика
Б
Биология
О
Окружающий мир
Р
Русский язык
У
Українська література
Ф
Французский язык
П
Психология
А
Алгебра
О
Обществознание
М
МХК
В
Видео-ответы
Г
География
П
Право
Г
Геометрия
А
Английский язык
И
Информатика
Қ
Қазақ тiлi
Л
Литература
И
История
mazeke78
mazeke78
27.01.2022 09:32 •  Информатика

1. Вычислить выражение.
2. Построить таблицу истинности логической функции, а затем у

Показать ответ
Ответ:
kendebaeva06
kendebaeva06
11.03.2020 19:26

Закраски клеток (команда 5) здесь нет, значит надо просто обеспечить более короткое перемещение в ту же конечную точку.

Для этого посмотрим, что за движения там записаны.

Если во всём алгоритме три раза вверх и три раза вниз- то робот вернётся в ту же точку (по вертикали), и значит все эти команды можно просто удалить.

То же самое- для движений влево и вправо. Они тоже взаимно противоположные.

Другими словами- надо просто сократить все пары движений влево-вправо и вверх-вниз. Всё что останется- это и есть короткий вариант алгоритма, который даст перемещение ту же самую конечную точку.

Запишу подробнее, как сократить алгоритм движения (только для случая без закраски):

а) берём наш алгоритм: 131413324223

б) во всём алгоритме считаем количество команд перемещения для каждого из направлений движения:

1 (вверх)-    3 штуки

2 (вниз)-     3 штуки

3 (влево)-   4 штуки

4 (вправо)- 2 штуки

в) считаем разность количества команд влево и вправо (из большего числа вычитаем меньшее):  4 - 2 = 2

Осталось две команды - влево (т.к. их было больше). Остальные команды влево-вправо сократились (мы их удалили из алгоритма).

г) считаем разность количества команд вверх и вниз (из большего числа вычитаем меньшее, но тут числа равны):  3 - 3 = 0

Не осталось ни одной команды вверх или вниз. Все эти команды сократились (мы их удалили из алгоритма).

д) получаем, что в коротком варианте алгоритма останутся только две команды влево (3).

Запишем весь алгоритм:   33

0,0(0 оценок)
Ответ:
Deykun904
Deykun904
17.11.2020 19:38

Вы извините, что здесь пишу, в графе для ответов. Хочу Вам просто и код, и скриншот прикрепить. Попробуйте этот код (комментарии условны, только для понимания). Три числа введите через пробел, в соответствии с логикой конечно же (смотрите комментарии для лучшего понимания):

# k - максимальное количество котлет на сковороде

# m - прожарка котлеты с одной стороны

# n - входное количество котлет

k,m,n = map(int, input().split())

time_am = 0

if (n <= k):

   time_am += 2*m

elif (n > k):

   while (n > k):

       time_am += 2*m

       n -= k

       if (n <= k):

           time_am += 2*m

           break

print(time_am)


Пайтон Я хотел выполнить задание на курсерах Тренировочное задание по программированию: Котлеты*
0,0(0 оценок)
Популярные вопросы: Информатика
Полный доступ
Позволит учиться лучше и быстрее. Неограниченный доступ к базе и ответам от экспертов и ai-bota Оформи подписку
logo
Начни делиться знаниями
Вход Регистрация
Что ты хочешь узнать?
Спроси ai-бота