Найти тему

Решение задач informatics на Python по теме "Ввод-вывод". Часть 2. H, I, J, K, L, M, N

Оглавление
№2943
№2943

Задача. Число десятков

Дано неотрицательное целое число. Найдите число десятков в его десятичной записи (то есть вторую справа цифру его десятичной записи).

Входные данные
Вводится неотрицательное целое число.

Выходные данные
Выведите ответ на задачу.

Решение на языке Python
n = int(input()) # считываем входное число
tens = (n // 10) % 10
# находим число десятков
print(tens)
# выводим результат

Пояснение
Первая строка считывает входное число с помощью функции input() и преобразует его в целое число с помощью функции int().
Вторая строка использует арифметические операции для нахождения числа десятков в записи числа. Для этого мы делим исходное число на 10, чтобы убрать последнюю цифру, а затем берем остаток от деления на 10, чтобы получить вторую цифру справа.
Третья строка выводит результат с помощью функции print().

№2944
№2944

Задача. Сумма цифр

Дано трехзначное число. Найдите сумму его цифр.

Входные данные
Вводится трехзначное число.

Выходные данные
Выведите ответ на задачу.

Решение на языке Python
n = int(input())
# считываем входное число
sum = (n // 100) + ((n // 10) % 10) + (n % 10)
# находим сумму цифр
print(sum)
# выводим результат

Пояснение
Первая строка считывает входное число с помощью функции input() и преобразует его в целое число с помощью функции int().
Вторая строка использует арифметические операции для нахождения суммы цифр в числе. Для этого мы используем оператор целочисленного деления //, чтобы получить первую цифру числа (деление на 100), затем берем остаток от деления на 10 с помощью оператора %, чтобы получить последнюю цифру числа, и используем снова оператор целочисленного деления, чтобы получить среднюю цифру числа.
Третья строка выводит результат с помощью функции print().

№2945
№2945

Задача. Следующее четное

Дано целое число n. Выведите следующее за ним четное число. При решении этой задачи нельзя использовать условную инструкцию if и циклы.

Входные данные
Вводится натуральное число.

Выходные данные
Выведите ответ на задачу.

Решение на языке Python
n = int(input())
# считываем входное число
print(n + 2 - n % 2)
# находим следующее четное число

Пояснение
Первая строка считывает входное число с помощью функции input() и преобразует его в целое число с помощью функции int().
Вторая строка использует арифметические операции для нахождения следующего четного числа после входного числа. Для этого мы используем оператор остатка от деления % для определения четности входного числа. Если входное число четное, то остаток от деления на 2 будет равен 0, и мы просто прибавляем 2 к входному числу, чтобы получить следующее четное число. Если же входное число нечетное, то остаток от деления будет равен 1, и мы прибавляем 1 к входному числу, чтобы получить следующее нечетное число, а затем прибавляем еще 1, чтобы получить следующее четное число.
Выводим результат с помощью функции print().

№2947
№2947

Задача. Электронные часы - 1

Дано число n. С начала суток прошло n минут. Определите, сколько часов и минут будут показывать электронные часы в этот момент. Программа должна вывести два числа: количество часов (от 0 до 23) и количество минут (от 0 до 59). Учтите, что число n может быть больше, чем количество минут в сутках.

Входные данные
Вводится целое число
n.

Выходные данные
Выведите ответ на задачу.

Решение на языке Python
n = int(input())
# считываем входное число
hours = (n // 60) % 24
# находим количество часов
minutes = n % 60
# находим количество минут
print(hours, minutes)
# выводим результат

Пояснение
Первая строка считывает входное число с помощью функции input() и преобразует его в целое число с помощью функции int().
Вторая строка использует арифметические операции для нахождения количества часов, прошедших с начала суток. Для этого мы делим входное число на 60, чтобы получить количество часов, прошедших с начала суток, а затем берем остаток от деления на 24, чтобы получить количество часов в формате от 0 до 23.
Третья строка использует оператор остатка от деления % для нахождения количества минут, прошедших с момента начала последнего часа.
Четвертая строка выводит результат с помощью функции print() в формате "часы минуты".

№2948
№2948

Задача. Электронные часы - 2

Электронные часы показывают время в формате h:mm:ss, то есть сначала записывается количество часов, потом обязательно двузначное количество минут, затем обязательно двузначное количество секунд. Количество минут и секунд при необходимости дополняются до двузначного числа нулями.
С начала суток прошло
n секунд. Выведите, что покажут часы.

Входные данные
Вводится целое число
n.

Выходные данные
Выведите ответ на задачу, соблюдая требуемый формат.

Решение на языке Python
n = int(input())
# считываем входное число
hours = (n // 3600) % 24
# находим количество часов
minutes = (n // 60) % 60
# находим количество минут
seconds = n % 60
# находим количество секунд
print('{:d}:{:02d}:{:02d}'.format(hours, minutes, seconds))
# выводим результат

Пояснение
Первая строка считывает входное число с помощью функции input() и преобразует его в целое число с помощью функции int().
Вторая строка использует арифметические операции для нахождения количества часов, прошедших с начала суток. Для этого мы делим входное число на 3600 (количество секунд в часе), чтобы получить количество часов, прошедших с начала суток, а затем берем остаток от деления на 24, чтобы получить количество часов в формате от 0 до 23.
Третья строка использует оператор целочисленного деления // и оператор остатка от деления % для нахождения количества минут, прошедших с момента начала последнего часа, и количества секунд, прошедших с момента начала последней минуты.
Четвертая строка выводит результат с помощью функции print() в формате "часы:минуты:секунды". Для вывода минут и секунд мы используем метод format(), чтобы добавить ведущий ноль, если количество минут или секунд меньше 10.

№2949
№2949

Задача. Обмен значений

Напишите программу, которая считывает значения двух целочисленных переменных a и b, затем меняет их значения местами (то есть в переменной a должно быть записано то, что раньше хранилось в b, а в переменной b записано то, что раньше хранилось в a). Затем выведите значения переменных.

Входные данные
Вводятся целые числа
a и b.

Выходные данные
Выведите ответ на задачу.

Решение на языке Python
# считываем входные данные
a = int(input())
b = int(input())
a, b = b, a
# меняем значения переменных местами
print(a, b)
# выводим результат

Пояснение
Первые две строки считывают входные данные с помощью функции input() и преобразуют их в целочисленные значения с помощью функции int().
Третья строка использует кортежное присваивание для обмена значениями двух переменных местами. Вместо того, чтобы создавать временную переменную для хранения значения одной из переменных, мы можем просто указать обе переменные через запятую слева от знака присваивания = и значения автоматически поменяются местами.
Четвертая строка выводит результат с помощью функции print().

№2950
№2950

Задача. Конец уроков

В некоторой школе занятия начинаются в 9:00. Продолжительность урока — 45 минут, после 1-го, 3-го, 5-го и т.д. уроков перемена 5 минут, а после 2-го, 4-го, 6-го и т.д. — 15 минут. Определите, когда заканчивается указанный урок.

Входные данные
Дан номер урока (число от 1 до 10).

Выходные данные
Выведите два целых числа: время окончания урока в часах и минутах. При решении этой задачи нельзя пользоваться циклами и условными инструкциями.

Решение на языке Python
n = int(input())
# считываем номер урока
# находим количество минут, прошедших с начала занятий
minutes = 9 * 60 + (n - 1) * 45 + (n // 2) * 5 + ((n - 1) // 2) * 15 + 45
# находим количество часов и минут, прошедших с начала занятий
hours = minutes // 60
minutes = minutes % 60
print(hours, minutes)
# выводим результат

Пояснение
Первая строка считывает номер урока с помощью функции input() и преобразует его в целое число с помощью функции int().
Вторая строка использует арифметические операции для нахождения количества минут, прошедших с начала занятий. Мы начинаем со времени начала занятий (9:00) в минутах (9 * 60), затем добавляем 45 минут за каждый урок (умножаем номер урока на 45 и вычитаем 1, чтобы учесть, что первый урок начинается в 9:00), затем добавляем 5 минут за каждую перемену после нечетного урока (добавляем половину номера урока, округленную вниз, чтобы учесть каждую вторую перемену), и добавляем 15 минут за каждую перемену после четного урока (добавляем половину номера урока минус 1, округленную вниз, чтобы учесть каждую вторую перемену, начиная со второй). Далее добавляем 45 минут, чтобы найти время окончания урока.
Третья строка использует оператор целочисленного деления // и оператор остатка от деления % для нахождения количества часов и оставшихся минут.
Четвертая строка выводит результат с помощью функции print() в формате "часы минуты".