


Помогите написать код Python! Плизз
Пересечение отрезков ????️????️
На числовой прямой даны два отрезка: [a1; b1] и [a2; b2]
Напишите программу, которая находит их пересечение.
Пересечением двух отрезков может быть:
отрезок;
точка;
пустое множество.
Формат входных данных
На вход программе подаются 4 целых числа a1, b1, a2, ,b2 каждое на отдельной строке. Гарантируется, что a1 < b1 и a2 < b2
Формат выходных данных
Программа должна вывести на экран границы отрезка, являющегося пересечением, либо общую точку, либо текст «пустое множество».
Sample Input 1:
1
3
2
4
Sample Output 1:
2 3
Sample Input 2:
1
2
3
4
Sample Output 2:
пустое множество
Sample Input 3:
5
6
6
8
Sample Output 3:
6
a1 = int(input())
b1 = int(input())
a2 = int(input())
b2 = int(input())
if (b1 == a2):
print(b1)
elif (b2 == a1):
print(b2)
elif (b1 < a2 or b2 < a1):
print("пустое множество")
else:
print(max(a1, a2), min(b1, b2))
a1, b1 = int(input()), int(input())
a2, b2 = int(input()), int(input())
if b1 < a2 or b2 < a1:
print('пустое множество')
elif b1 == a2:
print(a2)
elif b2 == a1:
print(a1)
elif a2 > a1 and b1<b2:
print(a2, b1)
elif a2 < a1 and b1>b2:
print(a1, b2)
elif a1 >= a2 and b2>=b1:
print(a1, b1)
elif a1 <=a2 and b2<=b1:
print(a2,b2)
Тебе на фриланс бро.
a1, b1, a2, b2 = int(input()), int(input()), int(input()), int(input())
if b1 < a2 or b2 < a1:
print('пустое множество')
else:
if a1 > a2:
a2 = a1
if b1 > b2:
b1 = b2
if a2 == b1:
print(a2)
else:
print(a2, b1)
Задачи выше не работают, прилагаю решение преподавателя!
Коды выше вместо пересечений выдают "пустое множество".
Вот корректный :
a1 = int(input())
a2 = int(input())
b1 = int(input())
b2 = int(input())
if a2 < b1 or a1 > b2:
print('пустое множество')
elif a1 == b2:
print(a1)
elif a2 == b1:
print(a2)
else:
start = a1
end = a2
if start < b1:
start = b1
if end > b2:
end = b2
print(start, end)