Подборка задач с решениями - 32
- Категория: Python
- Дата публикации: 2022-01-26
- Опубликовано на сайте: Stepik
Задача 1:
Напишите функцию с названием detect_lucky, которая принимает в качестве аргумента шестизначное число и возвращает True, если оно является счастливым, и False в противном случае. Счастливым называется шестизначное число, сумма первых трех цифр которого равна сумме последних трех цифр.
Например, число 237831 является счастливым: 2+3+7 = 12 и 8+3+1 = 12. А 12 =12, поэтому функция вернет True.
Вызов функции уже прописан. Вам остается написать только саму функцию.
Решение:
Все решения теперь можно найти в сообществе Как войти в IT
Задача 2:
Паша очень любит кататься на общественном транспорте, а получая билет, сразу проверяет, счастливый ли ему попался. Билет считается счастливым, если сумма первых трех цифр совпадает с суммой последних трех цифр номера билета.
Однако Паша очень плохо считает в уме, поэтому попросил вас написать программу, которая проверит равенство сумм и выведет "Счастливый", если суммы совпадают, и "Обычный", если суммы различны.
На вход программе подаётся строка из шести цифр.
Выводить нужно только слово "Счастливый" или "Обычный", с большой буквы.
Решение 1:
Решение 2:
Задача 3: Объединение словарей
В Python (начиная с версии 3.5) есть простой способ объединения двух словарей. Но он подходит только для тех случаев, когда значения одинаковых ключей (если такие есть) не нужно складывать, поскольку про наличии в словарях одних и тех же ключей Python по умолчанию просваивает ключу в результирующем словаре второе значение. На практике это выглядит так:
Результат:
Если же значения по одинаковым ключам необходимо суммировать, операцию объединения лучше проводить таким образом:
В результате значения одинаковых ключей будут просуммированы:
Задача 4:
Вашей программе на вход подаются три строки s, a, b, состоящие из строчных латинских букв. За одну операцию вы можете заменить все вхождения строки a в строку s на строку b.
Например, s = "abab", a = "ab", b = "ba", тогда после выполнения одной операции строка s перейдет в строку "baba", после выполнения двух и операций – в строку "bbaa", и дальнейшие операции не будут изменять строку s.
Необходимо узнать, после какого минимального количества операций в строке s не останется вхождений строки a. Если операций потребуется более 1000, выведите Impossible.
Выведите одно число – минимальное число операций, после применения которых в строке s не останется вхождений строки a, или Impossible, если операций потребуется более 1000.
Решение 1:
Решение 2:
Задача 5:
Вводится порядковый номер месяца (1, 2, ..., 12). Вывести на экран количество дней в этом месяце. Принять, что год не является високосным. Реализовать через условный оператор, в котором следует использовать не более трех ветвей (блоков).
Решение:
Все решения теперь можно найти в сообществе Как войти в IT
Задача 6:
Дата некоторого дня характеризуется двумя натуральными числами: m (порядковый номер месяца) и n (число). По введенным n и m (в одну строку через пробел) определить:
а) дату предыдущего дня (принять, что n и m не характеризуют 1 января); б) дату следующего дня (принять, что n и m не характеризуют 31 декабря).
В задаче принять, что год не является високосным. Вывести предыдущую дату и следующую дату (в формате: mm.dd, где m - число месяца; d - номер дня) в одну строчку через пробел.
Решение:
Все решения теперь можно найти в сообществе Как войти в IT
Задача 7:
Вводится целое число k (1 <= k <= 365). Определить, каким днем недели (понедельник, вторник, среда, четверг, пятница, суббота или воскресенье) является k-й день не високосного года, в котором 1 января является понедельником.
Решение:
Все решения теперь можно найти в сообществе Как войти в IT
Задача 8:
Вводится строка. Необходимо найти все индексы фрагмента "ра" во введенной строке. Вывести в строку через пробелы найденные индексы. Если этот фрагмент ни разу не будет найден, то вывести значение -1.
Решение:
Все решения теперь можно найти в сообществе Как войти в IT
Задача 9:
Вводится строка с номером телефона. Ожидается формат ввода:
+7(xxx)xxx-xx-xx
где x - это цифра. Размер введенных символов считается верным (то есть, не может быть, чтобы отсутствовала какая-либо цифра или была лишняя). Необходимо проверить, что введенная строка соответствует этому формату. Вывести ДА, если соответствует и НЕТ - в противном случае.
Решение 1:
Решение 1:
Задача 10:
В виде строки записано арифметическое выражение:
10 + 25 - 12
Необходимо выполнить его вычисление и результат отобразить на экране. Полагается, что в качестве арифметических операций здесь используется только сложение (+) и вычитание (-), а в качестве операндов - целые числа. Следует учесть, что эти операторы могут быть записаны как с пробелами, так и без них.
Решение:
Все решения теперь можно найти в сообществе Как войти в IT
Задача 11:
Вводится список в виде целых чисел в одну строку через пробел. Необходимо сначала сформировать список на основе введенной строки, а затем, каждое значение этого списка изменить, возведя в квадрат. Отобразить результат на экране в виде строки полученных чисел, записанных через пробел.
Решение:
Все решения теперь можно найти в сообществе Как войти в IT
Задача 12:
Вводится список в виде целых чисел в одну строку через пробел. Сначала нужно сформировать список из введенной строки. Затем, каждый элемент этого списка продублировать один раз. Результат отобразить на экране в виде строки полученных чисел, записанных через пробел.
Решение:
Все решения теперь можно найти в сообществе Как войти в IT
Задача 13:
Вводится список в виде вещественных чисел в одну строку через пробел. С помощью цикла for необходимо найти наименьшее значение в этом списке. Полученный результат вывести на экран. Реализовать программу без использования функции min, max и сортировки.
Решение:
Все решения теперь можно найти в сообществе Как войти в IT
Задача 14:
Вводится список в виде вещественных чисел в одну строку через пробел. Сначала нужно сформировать список из введенной строки. Затем, все отрицательные значения в этом списке заменить на -1.0. Результат вывести на экран в виде строки чисел через пробел. Программу следует реализовать с использованием функции enumerate.
Решение:
Все решения теперь можно найти в сообществе Как войти в IT