Это про тако!

Допустим, вас попросили написать функцию на Python, которая реализует этот сценарий:

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

Наконец, она натыкается на огромное блюдо с тако за пределами другой конференции. Дженис не мелкая воровка, но она очень голодна. Она решает съесть несколько тако, прежде чем ее поймают. Насколько она насытится, зависит от количества времени, которое она должна есть. Если у нее будет меньше пяти минут, она все равно будет очень голодна. Если у нее есть от пяти до десяти минут, она будет немного голодна, а если у нее больше десяти минут, она будет сыта.

Напишите функцию, которая распечатывает состояние голода Дженис.

Итак, это явно практическая проблема, но им часто дают информацию на основе сценария, чтобы программист мог начать развивать свои навыки в области извлечения. Чтобы быть более конкретным, нам нужно различать, что здесь шумит, и какие факты нам нужно понять, чтобы написать нашу функцию.

Здесь, если вы не знаете сразу, как приступить к программированию этой функции, запись того, что ваша функция должна выполнять, является хорошей отправной точкой.

Нам известно, что состояние голода Дженис зависит от того, сколько времени ей приходилось есть. Учитывая эту информацию, мы можем написать:

Если у Дженис останется меньше 5 минут, она будет очень голодна.

Если у нее больше или равно 5, но меньше или равно 10 минут, она будет немного голодна.

Если у нее больше 10 минут, она будет сыта.

Это первый прогон. Чтобы сделать это еще более программируемым, мы можем сделать его более логичным.

Во-первых, важно понимать, что эта функция потребует ввода времени, которое есть у Дженис. Когда мы вводим это в функцию, она должна вернуть нам состояние ее голода. Мы назовем количество минут, которые мы будем вводить, «минутами».

Если минут

Если 5≤minutes≤10, выведите «Дженис немного голодна».

Если минут> 10, выведите «Дженис заполнена».

Одно замечание: обратите особое внимание на края ваших условий. Например, обратите внимание, что произойдет, если введенные минуты равны 5 или 10 минутам. В каких конкретных случаях проблема говорит о том, что должен быть результат? Протестируйте свою функцию для этих случаев, чтобы убедиться, что ее вывод соответствует заданной задаче.

Теперь мы готовы написать наш код на Python. Jupyter Notebook - это используемое веб-приложение. Эта функция будет называться hunger_state:

Ниже приведены выходные данные, возвращаемые при вводе различных значений «минут».

В общем, вот шаги, которые помогут вам написать простую функцию Python:

  1. Извлеките актуальную программируемую информацию из проблемы.
  2. Напишите простым языком, что должна делать функция. Обратите внимание на то, какими должны быть входы и выходы, и обратите особое внимание на граничные условия.
  3. Напишите свой код и протестируйте его.