Числа и ввод · 23 из 37
Мяч, который не хочет лежать
Кружок роняет мячи с балкона Дома творчества, а Аркадий Семёнович хочет повторить опыт на проекторе — без балкона и без жалоб от соседей снизу. Мяч считается шагами: раз в dt секунд пересчитываются его скорость и высота. Пол мячу не рад: при каждом ударе он теряет пятую часть скорости.
Что сделать
Сделайте один шаг полёта мяча — с притяжением и потерей скорости при ударе о пол.
Что приходит
y— высота мяча в метрахv— скорость: плюс — летит вверх, минус — внизdt— шаг времени в секундах
Что вернуть
Пару (y, v) через dt секунд; мяч ушёл ниже пола — высота 0, а скорость меняет знак и умножается на 0.8.
Допишите функцию shag_myacha в редакторе справа.
Результат верните через return — то, что
напечатано, на проверку не влияет.
с графикой когда тесты пройдут, ответ вашей функции нарисуется · все задачи с графикой
Мяч висит на высоте 10 метров, скорость 0, шаг 0,1 секунды. Сначала скорость: 0 − 9,8 · 0,1 = −0,98. Потом высота — уже новой скоростью: 10 − 0,98 · 0,1 = 9,902. Ответ — (9.902, -0.98).
shag_myacha(10.0, 0.0, 0.1)
(9.902, -0.9800000000000001)
Функция принимает высоту мяча y в метрах, его скорость v в метрах в секунду (вверх — плюс, вниз — минус) и шаг времени dt в секундах. Возвращает кортеж (новая высота, новая скорость) через dt секунд:
- сначала скорость: из неё вычитается 9.8 · dt;
- потом высота: к ней прибавляется НОВАЯ скорость · dt;
- если высота стала меньше нуля, мяч ударился о пол: высота становится 0, а скорость меняет знак и умножается на 0.8.
Обсуждение
Вопросов пока нет.
Войдите, чтобы спросить.