Рассказываю про решения и показываю ответы на модуль и по совместительству урок 13.5 из «Поколение Python: курс для начинающих» на языке программирования питоне.
Is Valid Triangle? Напишите функцию is_valid_triangle(side1, side2, side3), которая принимает в качестве аргументов три натуральных числа, и возвращает значение True если существует невырожденный треугольник со сторонами side1, side2, side3 и False в противном случае.
# Объявление функции is_valid_triangle(), которая проверяет, являются ли заданные стороны сторонами треугольника
def is_valid_triangle(side1, side2, side3):
# Создаём отсортированный список из сторон
s_list = sorted([side1, side2, side3])
# Проверяем, является ли сумма минимальной и средней сторон больше максимальной
return s_list[0] + s_list[1] > s_list[2]
# Считываем длины сторон треугольника
a, b, c = int(input()), int(input()), int(input())
# Вызываем функцию и выводим результат
print(is_valid_triangle(a, b, c))
Is a Number Prime? 🌶️ Напишите функцию is_prime(num), которая принимает в качестве аргумента натуральное число и возвращает значение True если число является простым и False в противном случае.
# Объявление функции is_prime(), которая проверяет, является ли число простым
def is_prime(num):
# Если число равно 1, то оно не является простым
if num == 1:
return False
for j in range(2, num):
if num % j == 0: # Если число делится нацело на какое-то другое число, оно не простое
return False
return True # В противном случае число является простым
# Считываем число для проверки
n = int(input())
# Вызываем функцию и выводим результат
print(is_prime(n))
Next Prime 🌶️🌶️ Напишите функцию get_next_prime(num), которая принимает в качестве аргумента натуральное число num и возвращает первое простое число большее числа num.
def is_prime(num):
# Если число равно 1, то оно не является простым
if num == 1:
return False
for j in range(2, num):
if num % j == 0: # Если число делится нацело на какое-то другое число, оно не простое
return False
return True # В противном случае число является простым
# Объявление функции get_next_prime(), которая находит следующее простое число после заданного числа
def get_next_prime(num):
# Начинаем искать следующее простое число, увеличивая текущее число на 1
n = num + 1
# Если следующее число непростое, увеличиваем его на 1 и проверяем снова
while not is_prime(n):
n += 1
return n
# Считываем данные (число, для которого нужно найти следующее простое число)
n = int(input())
# Вызываем функцию и выводим результат
print(get_next_prime(n))
Good password 🌶️ Напишите функцию is_password_good(password), которая принимает в качестве аргумента строковое значение пароля password и возвращает значение True если пароль является надежным и False в противном случае.
Пароль является надежным если:
# Объявление функции is_password_good(), которая проверяет, является ли пароль надежным
def is_password_good(password):
if len(password) < 8: # Если длина пароля меньше 8 символов, то пароль недостаточно надежный
return False
flagD = False # Флаг для наличия цифры в пароле
flagL = False # Флаг для наличия строчной буквы в пароле
flagU = False # Флаг для наличия заглавной буквы в пароле
for c in password:
if c.isdigit(): # Если символ - цифра, устанавливаем флаг для цифры
flagD = True
elif c.islower(): # Если символ - строчная буква, устанавливаем флаг для строчной буквы
flagL = True
elif c.isupper(): # Если символ - заглавная буква, устанавливаем флаг для заглавной буквы
flagU = True
return flagD and flagL and flagU # Пароль считается надежным, если все три флага установлены
# Считываем данные (пароль для проверки)
txt = input()
# Вызываем функцию и выводим результат
print(is_password_good(txt))
Ровно в одном Напишите функцию is_one_away(word1, word2), которая принимает в качестве аргументов два слова word1 и word2 и возвращает значение True если слова имеют одинаковую длину и отличаются ровно в 1 символе и False в противном случае.
# Объявление функции is_one_away(), которая проверяет, являются ли две строки "одной поправкой"
def is_one_away(word1, word2):
if len(word1) != len(word2): # Если длины строк не совпадают, то они не могут быть "одной поправкой"
return False
count = 0 # Счетчик различных символов между строками
for i in range(len(word1)):
if word1[i] != word2[i]: # Если символы в соответствующих позициях не совпадают
count += 1 # Увеличиваем счетчик
if count == 1: # Если счетчик равен 1, то строки отличаются только одним символом
return True
else:
return False # В противном случае строки не являются "одной поправкой"
# Считываем данные (две строки для проверки)
txt1 = input()
txt2 = input()
# Вызываем функцию и выводим результат
print(is_one_away(txt1, txt2))
Палиндром 🌶️ Напишите функцию is_palindrome(text), которая принимает в качестве аргумента строку text и возвращает значение True если указанный текст является палиндромом и False в противном случае.
# Объявление функции is_palindrome(), которая проверяет, является ли текст палиндромом
def is_palindrome(text):
# Удаляем знаки препинания и пробелы из текста
for c in (',.!?- '):
text = text.replace(c, '')
text = text.lower() # Приводим текст к нижнему регистру
return text == text[::-1] # Сравниваем текст с его обратным представлением
# Считываем данные (текст для проверки)
txt = input()
# Вызываем функцию и выводим результат
print(is_palindrome(txt))
BEEGEEK BEEGEEK наконец открыл свой банк в котором используются специальные банкоматы с необычным паролем.
Действительный пароль BEEGEEK банка имеет вид a:b:c, где a, b и c – натуральные числа. Поскольку основатель BEEGEEK фанатеет от математики, то он решил:
число a – должно быть палиндромом; число b – должно быть простым; число c – должно быть четным. Напишите функцию is_valid_password(password), которая принимает в качестве аргумента строковое значение пароля password и возвращает значение True если пароль является действительным паролем BEEGEEK банка и False в противном случае.
# Функция, которая проверяет, является ли число палиндромом
def is_palindrome(num):
return str(num) == str(num)[::-1]
# Функция, которая проверяет, является ли число простым
def is_prime(num):
if num == 1:
return False
for i in range(2, int(num ** 0.5) + 1):
if num % i == 0:
return False
return True
# Функция, которая проверяет, является ли число четным
def is_even(num):
return num % 2 == 0
# Функция, которая проверяет валидность пароля
def is_valid_password(password):
l = password.split(":") # Разбиваем пароль на части, используя двоеточие как разделитель
# Проверяем, что пароль содержит три части
if len(l) == 3:
l = [int(el) for el in l] # Преобразуем каждую часть в целое число
a, b, c = l[0], l[1], l[2] # Присваиваем переменным значения из списка
# Проверяем, что первая часть (a) является палиндромом, вторая часть (b) - простым числом,
# а третья часть (c) - четным числом
return is_palindrome(a) and is_prime(b) and is_even(c)
return False # Возвращаем False, если пароль не соответствует заданному формату
# Считываем данные (пароль)
psw = input()
# Вызываем функцию и выводим результат
print(is_valid_password(psw))
Правильная скобочная последовательность 🌶️ Напишите функцию is_correct_bracket(text), которая принимает в качестве аргумента непустую строку text, состоящую из символов ( и ) и возвращает значение True если поступившая на вход строка является правильной скобочной последовательностью и False в противном случае.
# Функция, которая проверяет правильность скобочной последовательности
def is_correct_bracket(text):
# Пока в строке есть подстрока '()', заменяем её на пустую строку
while '()' in text:
text = text.replace('()', '')
return not text # Возвращаем True, если вся строка опустела, что означает правильную последовательность
# Считываем данные (строку со скобками)
txt = input()
# Вызываем функцию и выводим результат
print(is_correct_bracket(txt))
Змеиный регистр Напишите функцию convert_to_python_case(text), которая принимает в качестве аргумента строку в «верблюжьем регистре» и преобразует его в «змеиный регистр».
# Функция для преобразования текста в "змеиную" нотацию
def convert_to_python_case(text):
s = '' # Инициализируем пустую строку для результата
for i in text:
if i.isupper(): # Если текущий символ - заглавная буква
s += '_' # Добавляем символ подчеркивания перед ней
s += i.lower() # Преобразуем текущий символ в нижний регистр и добавляем к результату
return s[1:] # Возвращаем строку, начиная с первого символа (без лишнего подчеркивания)
# Считываем данные (текст для преобразования)
input_text = input()
# Вызываем функцию и выводим результат
print(convert_to_python_case(input_text))
Если у вас не отображается решение последних задач, значит у вас включен блокировщик рекламы который вырезает эти ответы
Понравилась статья? Поделиться с друзьями:
Подписаться
3 комментариев
Новые
СтарыеПопулярные
Межтекстовые Отзывы
Посмотреть все комментарии
Александр
2 месяцев назад
Правильная скобочная последовательность:
# объявление функции def is_correct_bracket(text): flag = True while «()» in text: text = text.replace(‘()’, ») if len(text) != 0: return False return True # считываем данные txt = input()
# вызываем функцию print(is_correct_bracket(txt))
Roman
1 год назад
Правильная скобочная последовательность
# объявление функции def is_correct_bracket(text): while ‘()’ in text: text = text.replace(‘()’, ») return not text
while ‘()’ in text: text = text.replace(‘()’, ») return len(text) == 0 pass
последняя задача в блоке про конвертацию регистров def convert_to_python_case(text): s = text[0].lower() #строку for i in text[1:]: if i.isupper(): s = s + ‘_’ + i.lower() else: s += i return s
wpDiscuz
3
0
Оставьте комментарий! Напишите, что думаете по поводу статьи.x
Правильная скобочная последовательность:
# объявление функции
def is_correct_bracket(text):
flag = True
while «()» in text:
text = text.replace(‘()’, »)
if len(text) != 0:
return False
return True
# считываем данные
txt = input()
# вызываем функцию
print(is_correct_bracket(txt))
Правильная скобочная последовательность
# объявление функции
def is_correct_bracket(text):
while ‘()’ in text:
text = text.replace(‘()’, »)
return not text
# считываем данные
txt = input()
# вызываем функцию
print(is_correct_bracket(txt))
while ‘()’ in text:
text = text.replace(‘()’, »)
return len(text) == 0
pass
последняя задача в блоке про конвертацию регистров
def convert_to_python_case(text):
s = text[0].lower() #строку
for i in text[1:]:
if i.isupper():
s = s + ‘_’ + i.lower()
else:
s += i
return s