Контрольные задания > Реши задачу:
Два солдата подошли к реке и увидели двух мальчиков, которые катались на лодке и причалили к тому же берегу. Как солдатам переправиться на другой берег, если лодка вмещает либо только одного солдата, либо двух мальчиков, а солдата и мальчика уже не вмещает?
Сможет ли справиться с этой задачей исполнитель Перевозчик?
Если да, запиши программу для исполнителя Перевозчик для решения этой задачи. Если нет, то придумай такой исполнитель Другой Перевозчик, который сможет справиться с этой задачей. Выпиши систему команд этого исполнителя, напиши программу для решения задачи.
Вопрос:
Реши задачу:
Два солдата подошли к реке и увидели двух мальчиков, которые катались на лодке и причалили к тому же берегу. Как солдатам переправиться на другой берег, если лодка вмещает либо только одного солдата, либо двух мальчиков, а солдата и мальчика уже не вмещает?
Сможет ли справиться с этой задачей исполнитель Перевозчик?
Если да, запиши программу для исполнителя Перевозчик для решения этой задачи. Если нет, то придумай такой исполнитель Другой Перевозчик, который сможет справиться с этой задачей. Выпиши систему команд этого исполнителя, напиши программу для решения задачи.
Ответ:
Привет, ребята! Давайте решим эту интересную задачу вместе.
**Задача:** Два солдата и два мальчика должны переправиться через реку на лодке, которая вмещает либо одного солдата, либо двух мальчиков.
**Решение:**
Давайте рассмотрим, как это можно сделать по шагам. Нам нужен исполнитель "Другой Перевозчик", так как "Перевозчик" из учебника, скорее всего, не справится с такой задачей.
**Система команд исполнителя "Другой Перевозчик":**
1. Перевезти двух мальчиков на другой берег.
2. Вернуть одного мальчика обратно.
3. Перевезти одного солдата на другой берег.
4. Вернуть второго мальчика обратно.
5. Перевезти двух мальчиков на другой берег.
6. Вернуть одного мальчика обратно.
7. Перевезти второго солдата на другой берег.
8. Вернуть одного мальчика обратно.
9. Перевезти двух мальчиков на другой берег.
**Программа для исполнителя "Другой Перевозчик":**
1. Перевезти двух мальчиков на правый берег.
2. Вернуть одного мальчика на левый берег.
3. Перевезти одного солдата на правый берег.
4. Вернуть мальчика на левый берег.
5. Перевезти двух мальчиков на правый берег.
6. Вернуть одного мальчика на левый берег.
7. Перевезти одного солдата на правый берег.
8. Вернуть мальчика на левый берег.
9. Перевезти двух мальчиков на правый берег.
**Объяснение:**
1. Сначала два мальчика переправляются на другой берег.
2. Один из мальчиков возвращается обратно.
3. Затем один солдат переправляется на другой берег.
4. Мальчик возвращается обратно.
5. Два мальчика переправляются на другой берег.
6. Один из мальчиков возвращается обратно.
7. Затем второй солдат переправляется на другой берег.
8. Мальчик возвращается обратно.
9. И два мальчика переправляются на другой берег.
Теперь все солдаты и мальчики находятся на другом берегу.
Надеюсь, это понятно! Если есть вопросы, спрашивайте. Удачи вам в учебе!