CodeLab
145 subscribers
538 photos
20 videos
159 links
Говорим просто о сложном

Обсуждение, новости, материал и сплетни — все здесь https://t.me/CodeLabMLChat
Download Telegram
Сегодня говорим про условный оператор и по логике можно догадаться, что это как-то связано с условием.

Как раз, проверка условий в Python осуществляется с помощью if . (Также эта хуня называется оператором ветвления ) #Условный_оператор
Отличный код для примера.

0️⃣ В первую строку вводим целочисленный x (integer, кто забыл).

1️⃣ Дальше, с помощью if elif else идет поверка.

⭕️ if
это тоже самое что и 'ЕСЛИ'.

⭕️elif
это тоже самое что и else if . Чтобы было понятнее, скажем, что elif - это альтернативный вариант, который проверяется в том случае, если первое условие if не было истинным.

⭕️И последний, это else, по-другому - 'ИНАЧЕ'.

🔗Теперь поговорим про пример;

2️⃣ Сначала. идет проверка, что x<0.

3️⃣❗️ Если мы ввели число больше нуля, то, соответственно, проверка пойдет дальше, через elif .

4️⃣ Если ввели, допустим, -5, то программа остановится и скажет что результат отрицательный.

5️⃣ Если все три условия ( if, elif, elif ) не будут истинными, то в делу вступает else, который выведет 'Что-то другое'.

🔗Код:

x = int(input("Введите число: "))

if x < 0:
print('Отрицательный результат')
elif x == 0:
print('Ноль')
elif x == 1:
print('Единица')
else:
print('Что-то другое (Число положительное)')
❗️Касаемо оформления.

🔗 Допустим, есть у нас такая программка. Обязательное ставим двоеточие. Следующую строку пишем, соблюдая табуляцию.

num = int(input())
if num % 10 == 0:
print('Число num кратно 10')
Пароль 4.1

Посмотрим вот такую легкую задачку.

🔗На вход подаются две строки, значит, два раза пишем input() и присваиваем переменным.

❗️ В первую и вторую строки будут вводиться те же пароли, а затем сравниваться между собой, и если строки одинаковы, то 'Пароль принят' #Пароль
🔗Так будет выглядеть код:

a, b = input(), input()
if a == b:
print('Пароль принят')
else:
print('Пароль не принят')


Все довольно понятно, и, единственноеm стоит обратить внимания на знак равенства, про это мы вроде не говорили.

‼️Двойное равно ( == ) означает знак сравнения, как раз в этом примере. Обычное равно ( = ) - просто знак присваивания, как в начале кода, где мы присваиваем к переменным input()‼️
🧑‍💻 На ночь глядя разбираем пару задачек и спать.

Четное или нечетное 4.1⁉️

Решаем через условный оператор if.

⭕️0️⃣ Для начала, подается строка, значит присваиваем какой-нибудь переменной input(), как это было в прошлой задачке. #Четное_или_нечетное?
1️⃣ Затем, условный оператор if, и, дальше, мы должны проверить, четное число или нет⁉️

А делается эта поеень с помощью проверки. Мы уже говорили с вами про % (Это остаток от деления, для тех, кто забыл).

2️⃣ Как раз с помощью него и проверяется четность числа. То есть, если мы поделим 18 % 2, то получим 0, логично, ведь остатка не будет. Как раз это нам и нужно записать.

🔗 Код:

n = int(input())

if n % 2 == 0:
print("Четное")
else:
print("Нечетное")
3️⃣ нет никаких elif, потому что, как мы уже говорили, elif нужен в случае альтернативного варианта (мб if не сработает).

4️⃣ Поэтому, если, скажем, 15 % 2, то остаток будет 1, а это ниуя не равно нашей единичке, поэтому срабатывает else, значит число нечетное.
Все, я немного заеан, увидимся с утра. С кем я вообще разговариваю ? 👀
Админ был в аху‼️незе эти дни, начинаем писать и разбираем прекрасную задачу «соотношение 4.1».

0️⃣ Подается четырехзначное положительное число значит.

‼️И, если сумма первой и последней цифр равна разности второй и третьей цифр, то мы молодцы #Соотношение
Условие, надеюсь, вам понятно: допустим, подается 1614, как в примере и по условию 1+4 == 6-1.

1️⃣ Итак, начнем с того, как узнать каждую из цифр⁉️

Мы недавно изучили всякие разные деления:

⭕️ // - целочисленное деление, в результате которого получается результат без остатка.

⭕️ % — для получения остатка от деления (Деление по модулю).

2️⃣ Так воот, находим последнюю цифру:
3️⃣‼️ Разделив 1614 на 10 (1614 # 10 делим таким образом если че), то получим 4, это же остаток от деления. Таким образом получаем последнюю цифру
4️⃣‼️ Чтобы найти первую цифру, делим (1614 // 1000 таким образом) и получаем 1, то есть первую цифру, так как это деление от остатка.
5️⃣🧑‍💻 Чтобы найти вторую и третью цифры, надо объединить эти две хуни.

Ищем мы вторую цифру, давайте мыслить логически.

‼️Поделить на 10 (вот так: 1614 // 10) нам смысла нет, (хотя это можно сделать, просто будет другое более длинное решение. вот, к примеру print(1614 // 10 % 100 // 10));

6️⃣ Значит, берем больше и делим на 100 (вот так: 1614//100).

7️⃣ Получим 16 (14 остаток, поэтому отбросили его). Но, науя нам 16⁉️

8️⃣Поэтому, делим и 16, только уже вот так (16 % 10).

9️⃣На этом этапе советую подумать, зачем и как это сделали.

🔟Ответ будет 6, а значит вторую цифру мы нашл
и!
1️⃣1️⃣ Чтобы найти третью цифру, делаем практически тоже самое:

1️⃣2️⃣ Берем 'наше' 1614 и делим на 10 вот так (1614 // 10), как раз тут получаем 161, которое нам и нужно, ведь от него проще искать единичку посередине (нашу 3 цифру);

1️⃣3️⃣ Значит, получили 161, а дальше делим на 10 вот так (161 % 10), ну, и получаем заветную единицу, то есть третью цифру!

UPD: Это можно было сделать еще вот так:

print(1614 % 100 // 10)
🔗Кароч такая вот =ебатория= получается, сидите и думайте🧑‍💻
🔗Вот так будет выглядеть код:

simple_num = int(input())
first = simple_num // 1000
fourth = simple_num % 10
second = (simple_num // 100) % 10
third = (simple_num // 10) % 10
if first + fourth == second - third:
print('ДА')
else:
print('НЕТ')
‼️Как раз недавно разобрали в чем отличие (=) от (==). В данном случае стоит знак сравнения (==).
Воссап, перед снов разберем💤 быстренько задачку, стоит на ней перец🌶, но, давайте разберемся #Наименьшее_из_4_чисел (4,1)
Задача стоит в том, чтобы из 4 чисел найти самое маленькое (логично).

Кароч, я не стал меньшинством и решил эту задачку по разбитию на пары. О чем же я говорю, собственно⁉️

У нас 4 числа, пусть будет (a, b, c, d).

Чтобы понять какое меньше, его нужно сравнивать, а вот с чем сравнивать то⁉️

‼️Так вот, тут мы и можем разбить на пары.

⭕️0️⃣ Будем сравнивать (a и b) и отдельно (c и d). Порядок по сути не важен. Мы можем сравнивать не по порядку.

1️⃣ Итак, сравниваем каждую пару и затем сравниваем результаты.

🔗Вот код, чтобы не терялись в решении🔗:

a, b, c, d = int(input()), int(input()), int(input()), int(input())
if a > b:
a = b
if c > d:
c = d
if a > c:
a = c
print(a)
2️⃣ Допустим, подаются четыре цифры '1 2 3 4'.

⭕️ В таком случае, все максимально просто, просто сравнятся пары чисел а затем их результаты (Условный оператор будет выполняться, но в ходе всех проверок, переменная a своего значения не поменяет)