Робот задаёт вопрос и по-разному отвечает на «да» и «нет»
Робот задаёт вопрос и по-разному отвечает на «да» и «нет»
Сделай, чтобы робот спросил «Поедем?» и повёл себя по-разному: на «да» — поехал, на «нет» — загрустил.
Робот произносит вопрос.
Жди, пока услышанное не станет не пустым, но не бесконечно.
На «да» — движение, на «нет» — грустное лицо.
Если за отведённое время ничего не сказали — робот переспрашивает.
Базовая платформа: левое колесо в D, правое в C.
robot.configure_drive(wheel_diameter_mm=43.2, track_width_mm=120, left_motor=1, right_motor=2)
robot.say("Поедем?")
ответ = None
for попытка in range(50): # примерно десять секунд ожидания
ответ = robot.heard()
if ответ is not None:
break
robot.wait(0.2)
if ответ is None:
robot.say("Я не расслышал")
else:
слова = ответ.lower().split() # по словам, а не по буквам: в «до свидания» тоже есть «да»
# «нет» важнее: «нет, не надо» робот слышит как «нет нет да» — и не должен поехать
if "да" in слова and "нет" not in слова:
robot.face("happy")
robot.forward_cm(20)
robot.stop()
else:
robot.face("sad")
robot.say("Ну ладно")