Step 2 (S-12075)

From Stepik Wiki
Jump to: navigation, search

Step on Stepik: https://stepik.org/lesson/2414/step/2

В общем случае условная конструкция может выглядеть следующим образом. S-12075-1.png

Сначала идет слово if, затем некое условие, назовем его условие-1. Дальше идет блок действий (набор команд, набор инструкций, которые должны быть выполнены в том случае, если условие-1 оказалось верным. Дальше мы можем написать еще одно условие , которое мы будем обозначать следующим образом - пишем ключевое слово elif это сокращение от else if и указываем следующее условие(условие-2). Смысл этого в следующем, в том случае если условие-1 оказалось неверно, мы будем проверять условие-2. Если условие-2 верно, а условие-1 нет, то будут выполняться те команды, которые мы указали в блоке после условия-2.

Далее, в принципе, может быть сколько угодно таких конструкций elif с очередными условиями. Важно - как только одно из условий выполнилось, дальнейшие условия выполняться не будут. Наконец, в конце мы можем указать else, и разместить после него блок кода, который будет выполняться если ни одно из предыдущих условий не выполнилось. При этом каждая из конструкций может присутствовать, так и нет. Например, у нас может быть условная конструкция в которой нет блока else. Или конструкция с отсутствующем блоком elif.

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


S-12075-2.png

Запишем первое число в переменную а, а второе в переменную b. Для простоты, будем считать, что числа нам известны. В реальной жизни нам придется их считать с клавиатуры. Если число а больше числа b, напечатаем число а , в противном случае, выводим b. Таким несложным образом можно находить большее из двух чисел.

Можно подойти к этой задаче по другому. Заведем специальную переменную m, в которую мы будем записывать наибольшее из чисел. Для начала запишем в нее значение переменной а. Далее проверим, если значение b больше, чем текущее значение в переменной m - обновим ее значение на b. При таком подходе, в m у нас окажется либо значение а, либо значение b, если оно больше. А значит мы можем вывести значение m, это будет наибольшее из двух чисел. Второй подход хорош тем, что об может быть легко обобщен для случая трех, четырех ... произвольного числа переменных.