Напишите программу, которая просит пользователя ввести положительное число, и если пользователь вводит положительное число, выводит на экран сообщение "Молодец!", если нет – "Это не положительное число.".
Считайте, что пользователь в любом случае вводит числа, а не какой-то текст.
# решение базовое – по условию
q = float(input())
if q > 0:
print("Молодец!")
else:
print("Это не положительное число.")
4 Молодец!
# решение продвинутое – допускаем, что
# с клавиатуры может быть введён текст,
# который невозможно превратить в число
# используем только if-else, исключения с try-except
# пока не трогаем
# допускаю, что код можно сделать более компактным
# и эффективным, но в данной версии проще проследить
# пошаговую логику решения
x = input()
if x.startswith("-"):
z = x[1:]
if z.isdigit():
print("Это не положительное число.")
else:
if z.count(".") == 1:
y = z.replace(".", "")
if y.isdigit():
print("Это не положительное число.")
else:
print("X не является числом!")
else:
print("X не является числом!")
else:
if x.isdigit():
t = int(x)
if t > 0:
print("Молодец!")
else:
print("Это не положительное число.")
else:
if x.count(".") == 1:
y = x.replace(".", "")
if y.isdigit():
t = float(x)
if t > 0:
print("Молодец!")
else:
print("Это не положительное число.")
else:
print("X не является числом!")
else:
print("X не является числом!")
-abc X не является числом!
Пользователь вводит с клавиатуры два числа через пробел. Напишите код, который возвращает максимальное из двух введенных значений.
Пример
Ввод:
Введите два числа: 5.7 8
Вывод:
8.0
# решение 1 – с if-else
inp = input("Введите два числа: ")
L = inp.split()
a, b = L # a = L[0] b = L[1]
x1 = float(a)
x2 = float(b)
if x1 > x2:
print(x1)
else:
print(x2)
Введите два числа: 4 6.7 6.7
# решение 2 – без if-else
inp = input("Введите два числа: ")
L = inp.split()
numbers = [float(i) for i in L]
print(max(numbers))
Введите два числа: 6.5 7 7.0
Дан список N
из целых чисел. Напишите код, который делает следующее: выводит каждый элемент списка на экран и для каждого элемента либо выводит комментарий "Это чётное число", либо комментарии "Это нечётное число".
Подсказка: оператор для нахождения остатка от деления – это %
.
N = [2, 4, 7, 1, 4, 5, 11, 10]
for i in N:
if i % 2 == 0:
print(i, "Это чётное число")
else:
print(i, "Это нечётное число")
2 Это чётное число 4 Это чётное число 7 Это нечётное число 1 Это нечётное число 4 Это чётное число 5 Это нечётное число 11 Это нечётное число 10 Это чётное число
У питона есть набор любимых чисел.
favorites = [3, 7, 11, 23, 18, 48, 81]
Напишите программу, которая просит пользователя ввести целое число, и если оно нравится питону, на экран будет выводиться сообщение: "Мое любимое число!", если нет ‒ "Эх, ну почему?".
favorites = [3, 7, 11, 23, 18, 48, 81]
n = int(input())
if n in favorites:
print("Мое любимое число!")
else:
print("Эх, ну почему?")
11 Мое любимое число!
Напишите программу, которая запрашивает у пользователя пароль, и далее:
# вариант 1 – классический while
password = "hsepassword"
attempt = input("Enter your password: ")
while attempt != password:
print("Incorrect password, try again!")
attempt = input("Enter your password: ")
print("Login success")
Enter your password: hsepa Incorrect password, try again! Enter your password: hse Incorrect password, try again! Enter your password: hsepassowrd Incorrect password, try again! Enter your password: hsepassword Login success
# вариант 2 – while True
password = "hsepassword"
attempt = input("Enter your password: ")
while True:
if password == attempt:
break
else:
print("Incorrect password, try again!")
attempt = input("Enter your password: ")
print("Login success")
Enter your password: hs Incorrect password, try again! Enter your password: hsepassword Login success