Практические задачи по блоку "Введение" в Python
Простые задачи на Python для начинающих помогают закрепить первые темы: вывод через print(), ввод через input(), переменные, арифметику и импорт модулей. На странице собраны программы от Hello world до решения квадратного уравнения и перевода единиц измерения, к каждой дан код и пояснение. Сначала попробуйте написать решение сами, затем сравните его с готовым.
Практические задачи по блоку "Введение": разбор темы с примерами кода на Python 3 из раздела "Задачи на Python с решениями". Сначала попробуйте решить задачу самостоятельно, а затем сверьтесь с решением и пояснениями.

Содержание статьи
- Hello World
- Сложить два числа
- Решение квадратного уравнения
- Площадь треугольника
- Генерация числа
- Километры в мили
- Цельсий в фаренгейт
Hello world на Python
Программа на Python для печати Hello world! Простенькая программа, которую пишут наверное все начинающие программисты. Данная программа в самом начале изучения поможет вам для более менее приблизительной иллюстрации синтаксиса языка.
Что бы понять как работает этот пример, вам необходимо знать следующие темы:
# Программа Hello World!
print('Hello, world!')
# Результат: Hello, world!
Как видите всего одна строчка кода, и вы уже написали свою первую программу, поздравляю! В этой программе, вы так же использовали свою первую функцию print(), которая и выводит на ваш экран строку Hello, world.
Внесу сразу небольшое уточнение, строка - это последовательность символов. В Python строки можно заключать в одинарные, двойные и даже тройные кавычки. В будущих практических задачах, это нам понадобиться.
Сложить два числа на Python
Программа для складывания двух чисел. Создание этой программы научит вас складывать два числа, и отображать результат с помощью функции print().
Что бы хорошо понять этот пример, вы должны знать следующие темы:
Ниже приведена простая программа, в которой мы используем оператор +, для сложения двух чисел.
Пример 1. Складываем два числа
# Программа для сложения двух чисел
num1 = 2
num2 = 3
# Складываем числа
sum = num1 + num2
# Выводим на экран
print('Сумма двух чисел равна :', sum )
Пример 2. Складываем числа введенные пользователем
Немного усложним нашу программу, и сделаем ее чуть функциональнее. В первом примере, мы сложили два числа, присвоенные переменным, а сейчас сложим два числа введенные пользователем.
# Используем функцию input и просим ввести числа
num1 = input('Введи первое число: ')
num2 = input('Введи второе число: ')
# Складываем два числа
sum = float(num1) + float(num2)
# Выводим на экран
print('Результат сложения двух чисел равен:', sum)
Теперь пользователь сам решает какие числа ему сложить. В этом примере мы указали тип данных float при сложении, так как мы заранее не знаем какие числа введет пользователь. Конечно вариантов сложения двух чисел в Python много, и можно даже немного поизвращаться, но мы сейчас только учимся.
Квадратное уравнение на Python
В этой практической статье мы с вами напишем простенькую программу, которая будет уметь решать квадратные уравнения. Что бы понять логику работы этой программы, вам необходимо знать следующие темы:
Напомню, что квадратное уравнение имеет следующий вид:
a*x**2 + b*x + c = 0
Решение квадратного уравнения на Python, осуществляется следующим образом:
import cmath
a = 2
b = 4
c = 6
# Вычисляем дискриминант
d = (b**2) - (4*a*c)
# Ищем корни
sol1 = (-b-cmath.sqrt(d))/(2*a)
sol2 = (-b+cmath.sqrt(d))/(2*a)
print('Корень 1 равен:', sol1,'Корень 2 равен: ',sol2)
Результат:
Корень 1 равен: (-1-1.4142135623730951j) Корень 2 равен: (-1+1.4142135623730951j)
Мы импортировали модуль cmath для вычисления квадратного корня. По логике решения квадратных уравнений, нам сначала необходимо найти дискриминант, а затем находим два решения квадратного уравнения.
В этой программе, значения a,b,c, задаются вручную в коде, в качестве небольшой практики, переделайте эту программу так, чтобы после запуска, пользователь имел возможность вводить нужные ему данные прям в терминале.
Подсказка, пользовательский ввод осуществляется с помощью функции input().
Найти площадь треугольника на Python
Создавая эту программу вы научитесь находить площадь треугольника с помощью Python. Для того, что бы хорошо понять логику создаваемой программы, вам необходимо знать следующие темы:
В этой программе мы воспользуемся формулой Херона, в случае если нам необходимо сделать вычисления на основе данных пользователей, незабываем использовать функцию input().
# Программа для вычисления площади треугольника
a = 5
b = 6
c = 7
# Раскомментируйте, если нужен пользовательский ввод
# a = float(input('1 сторона: '))
# b = float(input('2 сторона: '))
# c = float(input('3 сторона: '))
s = (a + b + c) / 2
area = (s*(s-a)*(s-b)*(s-c)) ** 0.5
print('Площадь треугольника: ',area)
Python генерация чисел
В этом примере практического задания, мы научимся генерировать случайное число. Что бы хорошо понять этот пример, вам необходимо знать следующие темы:
- Ввод, вывод и импорт
- Модуль Random
Для того, что бы сгенерировать случайное число, мы используем функцию randint(), которая определена в модуле random.
import random
print(random.randint(0,9))
Результат:
3
Обращаю ваше внимание, что у нас могут различаться результаты выполнения, так как данная программа генерирует случайное число в указанном диапазоне.
Километры в мили на Python
В этом практическом примере, мы с вами научимся преобразовывать километры в мили. Для того, что бы хорошо понять логику данного примера, вам необходимо знать следующие темы:
# Просим пользователя ввести километры
kilometers = float(input("Enter value in kilometers: "))
# в одном километре 0.621371 мили
conv_fac = 0.621371
# Делаем расчет
miles = kilometers * conv_fac
print(kilometers,'Километров в милях равна: ',miles)
Разберем код:
В самом начале мы просим пользователя ввести значение километров, которые сохраняются в переменной kilometers. Так как один километр равен 0.621371 мили, то мы просто перемножаем количество километров на данное значение, и в итоге получаем мили.
В качестве небольшого задания, попробуйте сделать обратную версию этой программы. Переведите мили в километры.
Градус Цельсия преобразовываем в градус по Фаренгейту
Данная программа имеет примерно такую же логику как и предыдущая. Для того, что бы полностью понять как эта программа работает, вам необходимо понимать следующие темы:
И так, в приведенной ниже программе, мы берем градус по Цельсию и преобразовываем его в градус по Фаренгейту. Делается это следующей формулой.
fahrenheit = celsius * 1.8 + 32
Исходный код программы:
# Указываем градус по цельсию
celsius = 37.5
# Проводим вычисление
fahrenheit = (celsius * 1.8) + 32
print(celsius,'По цельсию равен:',fahrenheit,'по Фаренгейту' )
Дополнительные задачи для самопроверки
Эти упражнения используют те же приемы, что и задачи выше: ввод, преобразование типов, арифметику и вывод результата. Решения приведены после условий.
Обмен значений двух переменных
Пользователь вводит два значения. Поменяйте их местами и выведите результат. Сделайте это без третьей переменной.
Решение:
a = input('a = ')
b = input('b = ')
a, b = b, a
print('После обмена: a =', a, 'b =', b)Запись a, b = b, a сначала собирает кортеж из правой части, затем распаковывает его в переменные слева, поэтому временная переменная не нужна.
Четное или нечетное число
Введите целое число и выведите, четное оно или нечетное. Подсказка: остаток от деления на 2 дает оператор %.
Решение:
n = int(input('Введите целое число: '))
if n % 2 == 0:
print(n, '- четное')
else:
print(n, '- нечетное')Мили в километры
Обратная задача к переводу километров: пользователь вводит расстояние в милях, программа выводит его в километрах с округлением до двух знаков.
Решение:
miles = float(input('Расстояние в милях: '))
kilometers = miles * 1.609344
print(f'{miles} mi = {kilometers:.2f} км')Одна международная миля равна ровно 1,609344 км. Форматирование :.2f в f-строке оставляет два знака после запятой, подробнее о нем в статье про f-строки.
Площадь и длина окружности
По введенному радиусу вычислите площадь круга и длину окружности. Число пи возьмите из модуля math, а не задавайте вручную.
Решение:
import math
r = float(input('Радиус: '))
area = math.pi * r ** 2
length = 2 * math.pi * r
print(f'Площадь: {area:.3f}, длина окружности: {length:.3f}')Другие константы и функции модуля описаны в материале про модуль math.
Частые вопросы
Ниже ответы на вопросы, которые обычно появляются при решении первых задач.
Почему input() возвращает строку, а не число?
input() всегда возвращает str. Если сложить две строки '2' и '3', получится '23'. Поэтому ввод перед вычислениями переводят в число через int() или float().
Чем int() отличается от float() при вводе?
int('2.5') вызовет ValueError, потому что строка не является записью целого числа. float() принимает и целые, и дробные значения, но десятичным разделителем должна быть точка, а не запятая.
Зачем в квадратном уравнении модуль cmath, а не math?
math.sqrt() выдает ошибку для отрицательного числа. cmath.sqrt() возвращает комплексный корень, поэтому программа работает и при отрицательном дискриминанте. Если нужны только действительные корни, проверяйте знак дискриминанта и используйте math.
Можно ли называть переменную sum?
Технически можно, но тогда встроенная функция sum() станет недоступна до конца программы. Лучше выбирать имена вроде total или result. Правила именования описаны в статье о переменных и константах.
Где взять еще задачи после этого блока?
Следующий шаг - задачи на условия и циклы. Подборка таких упражнений есть на странице практических задач по циклам.