1. Теоретический материал
| В Python имеются следующие операции сравнения: Операция
| Описание операции
| ==
| Проверка на равенство двух объектов
| !=
| Проверка на неравенство двух объектов
| >
| Левый объект больше правого?
| <
| Левый объект меньше правого?
| >=
| Левый объект больше или равен правому?
| <=
| Левый объект меньше или равен правому?
|
Примеры операций сравнения:
a = 4
b = 7
result = a == 8 # сохраняем результат операции в переменную
print(result) # False
print(a != b) # True
print(a > b) # False
print(a < b) # True
bool_1 = True
bool_2 = False
print(bool_1 == bool_2) # False
Операции сравнения могут работать с объектами разного типа - строки, числа, логические значения, однако оба операнда должны быть «родственного» типа (например, можно сравнивать целое число с вещественным).
Логические операторы позволяют объединять несколько логических высказываний (условий) в одно. В Python имеются следующие логические операторы: Оператор
| Описание оператора
| and
| Логическое «И»
| or
| Логическое «ИЛИ»
| not
| Отрицание
|
|
2. Пример
| Задача:
|
| Написать программу, которая определяет, лежит ли введённая точка на одном из отрезков и .
| Решение (код программы):
|
| x = float(input())
if (x >=-3 and x <=5) or (x >=9 and x <=15):
print('yes')
else:
print('no')
# Альтернативное решение
x = float(input())
if -3 <= x <= 5 or 9 <= x <= 15:
print('yes')
else:
print('no')
| Задача:
|
| По введённым координатам точки определить, попала ли она в заштрихованную на рисунке область.
| Решение (код программы):
|
| x = float(input())
y = float(input())
if x <= 2 and y <= x and x*x + y*y >= 4 and x >=0:
print('yes')
else:
print('no')
|
3. Задания
| 1.
| Задача:
|
| Дано целое число. Требуется определить, является ли данное число трехзначным положительным числом, кратным пяти.
| Решение (код программы):
|
| a = int(input())
if 100 <= a < 1000 and a % 5 == 0:
print('является')
else:
print('не является')
| 2.
| Задача:
|
| Даны 3 целых числа. Требуется определить, есть ли среди этих чисел хотя бы два четных.
| Решение (код программы):
|
| a = int(input())
b = int(input())
c = int(input())
n = (a % 2) + (b % 2) + (c % 2)
if n <= 1:
print('есть 2 и более четных')
else:
print('меньше 2 чётных')
|
3.
| Задача:
|
| По введённым координатам точки определить, попала ли она в заштрихованную на рисунке область.
| Решение (код программы):
|
| x, y = float(input()), float(input())
if x >= 0 and x**2 + y**2 <= 1:
print('yes')
elif y <= 1 and x >= 0 and y >= x - 1:
print('yes')
else:
print('no')
| 4.
| Задача:
|
| По введённым координатам точки определить, попала ли она в заштрихованную на рисунке область.
| Решение (код программы):
|
| import math as m
x, y = float(input()), float(input())
if (y <= m.sin(x) and 0 <= y <= 0.5 and 0 <= x <= m.pi):
print('yes')
else:
print('no')
| 5.
| Задача:
|
| По введённым координатам точки определить, попала ли она в заштрихованную на рисунке область.
| Решение (код программы):
|
| x, y = float(input()), float(input())
if x <= 0 and x**2 + y**2 <= 1:
print('yes')
elif x**2 + y**2 <= 1 and y >= x:
print('yes')
else:
print('no')
|
1. Теоретический материал
| В Python существуют тернарный условный оператор. Этот оператор имеет следующий синтаксис:
condition_if_true if condition else condition_if_false
В зависимости от условия condition оператор возвращает либо значение выражения condition_if_true, либо значение выражения condition_if_false. Пример:
is_nice = True
state = "nice" if is_nice else "not nice"
Зачастую это очень удобно, поскольку позволяет писать более компактный код, сохраняя его читабельность.
|
3. Задания
| 1.
| Задача*:
|
| Решите задачи 3-5 используя тернарный оператор.
| Решение (код программы):
|
| #3
x, y = float(input()), float(input())
state = 'yes' if (x >= 0 and x**2 + y**2 <= 1) or (y <= 1 and x >= 0 and y >= x - 1) else 'no'
print(state) #4
import math as m
x, y = float(input()), float(input())
state = 'yes' if (y <= m.sin(x) and 0 <= y <= 0.5 and 0 <= x <= m.pi) else 'no'
print(state)
#5
x, y = float(input()), float(input())
state = 'yes' if (x <= 0 and x**2 + y**2 <= 1) or (x**2 + y**2 <= 1 and y >= x) else 'no'
print(state)
| |