Изучение программирования — это не только чтение учебников, но и практика. В этом посте мы рассмотрим 20 простых упражнений, которые идеально подойдут для начинающих. Каждое из них сопровождается примерами и решениями на Python, чтобы вы могли попробовать их сразу.

1. Вывести “Hello, World!”

Что нужно сделать: Напишите максимально простой код, который выводит сообщение на экран. Это покажет, как запускать код и получать видимые результаты.

Что вам понадобится: функция print() — без ввода, только вывод.

Пример вывода

Hello, World!

Решение на Python

print("Hello, World!")

2. Простой Калькулятор

Что нужно сделать: Возьмите два числа от пользователя и вычислите их сумму, разность, произведение и частное. Это научит вас обрабатывать ввод и выполнять базовые арифметические операции.

Что вам понадобится: input() для получения чисел, float() для их преобразования, арифметические операторы (+ - * /) и print() для вывода результатов.

Пример ввода

8
2

Пример вывода

Сумма: 10.0
Разность: 6.0
Произведение: 16.0
Частное: 4.0

Решение на Python

a = float(input("Введите первое число: ").strip())
b = float(input("Введите второе число: ").strip())

print("Сумма:", a + b)
print("Разность:", a - b)
print("Произведение:", a * b)
print("Частное:", a / b if b != 0 else "Бесконечность")

3. Проверка на Четность или Нечетность

Что нужно сделать: Определите, является ли целое число четным или нечетным.

Что вам понадобится: оператор остатка %, условное выражение

Пример ввода

7 is odd

Пример вывода

7 is odd

Python

n = int(input().strip())
print(f"{n} is {'even' if n % 2 == 0 else 'odd'}")

4. Игра в Угадай Число

Что нужно сделать: Компьютер выбирает случайное число; пользователь продолжает угадывать, пока не угадает, с подсказками "слишком низко" или "слишком высоко".

Что вам понадобится: random.randint(), цикл while, if/elif/else.

Пример работы

Угадайте (1-10): 5
Слишком низко
Угадайте (1-10): 8
Правильно!

Решение на Python

import random
secret = random.randint(1, 10)
while True:
    g = int(input("Угадайте (1-10): ") or 0)
    if g < secret:
        print("Слишком низко")
    elif g > secret:
        print("Слишком высоко")
    else:
        print("Правильно!")
        break

5. Таблица Умножения

Что нужно сделать: Вывести таблицу умножения от 1 до 10 для заданного числа.

Что вам понадобится: цикл for, f-строки.

Пример ввода

3

Пример вывода

3 x 1 = 3
...
3 x 10 = 30

Решение на Python

n = int(input().strip())
for i in range(1, 11):
    print(f"{n} x {i} = {n*i}")

6. Проверка Палиндрома

Что нужно сделать: Проверьте, читается ли текст одинаково вперед и назад (игнорируя регистр и пробелы/знаки препинания).

Что вам понадобится: очистка строки, .lower(), срез [::-1].

Пример ввода

RaceCar

Пример вывода

RaceCar is a palindrome

Решение на Python

s = input().strip()
clean = ''.join(ch.lower() for ch in s if ch.isalnum())
print(f"{s} is {'a palindrome' if clean == clean[::-1] else 'not a palindrome'}")

7. Последовательность Фибоначчи

Что нужно сделать: Вывести первые n чисел Фибоначчи.

Что вам понадобится: переменные для отслеживания последних двух значений, цикл for, объединение списка.

Пример ввода

6

Пример вывода

0 1 1 2 3 5

Решение на Python

n = int(input().strip())
a, b = 0, 1
seq = []
for _ in range(n):
    seq.append(str(a))
    a, b = b, a + b
print(' '.join(seq))

8. Калькулятор Факториала

Что нужно сделать: Вычислить n! (произведение от 1 до n).

Что вам понадобится: умножение в цикле for (или рекурсия).

Пример ввода

5

Пример вывода

120

Решение на Python

n = int(input().strip())
f = 1
for i in range(2, n+1):
    f *= i
print(f)

9. Счетчик Слов

Что нужно сделать: Подсчитать, сколько слов в предложении.

Что вам понадобится: str.split(), len().

Пример ввода

Я люблю программирование

Пример вывода

3

Решение на Python

s = input().strip()
print(len(s.split()))

10. Список Дел (Мини CLI)

Что нужно сделать: Добавить, просмотреть и удалить задачи в простом меню с циклом.

Что вам понадобится: списки, цикл while, if/elif/else.

Пример работы

1
Закончить домашнее задание
2
1 Закончить домашнее задание

Решение на Python

tasks = []
while True:
    print("1) Добавить  2) Просмотреть  3) Удалить  4) Выход")
    c = input("> ").strip()
    if c == "1":
        tasks.append(input("Задача: ").strip()); print("Добавлено.")
    elif c == "2":
        if tasks:
            for i, t in enumerate(tasks, 1):
                print(i, t)
        else:
            print("Нет задач.")
    elif c == "3":
        i = int(input("Индекс: ") or 0)
        if 1 <= i <= len(tasks):
            tasks.pop(i-1); print("Удалено.")
        else:
            print("Неверный индекс.")
    elif c == "4":
        break
    else:
        print("Попробуйте 1-4.")

11. Перевернуть Строку

Что нужно сделать: Вывести перевернутую версию введенного текста.

Что вам понадобится: срез [::-1].

Пример ввода

hello

Пример вывода

olleh

Решение на Python

print(input().strip()[::-1])

12. Наибольшее из Трех Чисел

Что нужно сделать: Прочитать три числа и вывести наибольшее.

Что вам понадобится: input().split(), map(), max().

Пример ввода

4 9 2

Пример вывода

9

Решение на Python

a, b, c = map(float, input().split())
print(max(a, b, c))

13. Конвертер Температуры (C ↔ F)

Что нужно сделать: Преобразовать Цельсий в Фаренгейт или наоборот в зависимости от префикса шкалы.

Что вам понадобится: условные операторы, арифметика.

Пример ввода

C 25

Пример вывода

77.0

Решение на Python

scale, val = input().split()
x = float(val)
print(x * 9/5 + 32 if scale.upper() == 'C' else (x - 32) * 5/9)

14. Простые Проценты

Что нужно сделать: Вычислить простые проценты, используя P, R, T.

Что вам понадобится: map(float, ...), арифметическая формула P*R*T/100.

Пример ввода

1000 5 2

Пример вывода

100.0

Решение на Python

P, R, T = map(float, input().split())
print(P * R * T / 100)

15. Проверка Простого Числа

Что нужно сделать: Определите, является ли n простым.

Что вам понадобится: цикл до √n, ранний выход при нахождении делителя.

Пример ввода

13

Пример вывода

prime

Решение на Python

n = int(input().strip())
if n < 2:
    print("not prime")
else:
    i, ok = 2, True
    while i*i <= n:
        if n % i == 0:
            ok = False; break
        i += 1
    print("prime" if ok else "not prime")

16. Сумма Цифр

Что нужно сделать: Сложите все цифровые символы во вводе.

Что вам понадобится: генераторное выражение по строке, sum().

Пример ввода

1234

Пример вывода

10

Решение на Python

s = input().strip()
print(sum(int(ch) for ch in s if ch.isdigit()))

17. Подсчет Гласных

Что нужно сделать: Подсчитать, сколько гласных в введенном тексте.

Что вам понадобится: .lower(), проверки на вхождение с помощью множества.

Пример ввода

programming

Пример вывода

3

Решение на Python

s = input().lower()
vowels = set('aeiou')
print(sum(ch in vowels for ch in s))

18. Камень–Ножницы–Бумага

Что нужно сделать: Сыграть один раунд против компьютера и сообщить о победе/поражении/ничьей.

Что вам понадобится: random.choice(), правила победы на основе кортежей, if/elif.

Пример работы

камень
Компьютер выбрал: ножницы
Вы выиграли!

Решение на Python

import random
user = input("камень/бумага/ножницы: ").strip().lower()
cpu = random.choice(["камень", "бумага", "ножницы"])
print("Компьютер выбрал:", cpu)
if user == cpu:
    print("Ничья!")
elif (user, cpu) in {("камень","ножницы"), ("бумага","камень"), ("ножницы","бумага")}:
    print("Вы выиграли!")
else:
    print("Вы проиграли!")

19. Мин & Макс в Списке

Что нужно сделать: Прочитать числа в одной строке и вывести минимум и максимум.

Что вам понадобится: split(), map(float), min(), max().

Пример ввода

5 9 1 7 3

Пример вывода

1 9

Решение на Python

nums = list(map(float, input().split()))
print(min(nums), max(nums))

20. Базовая Проверка Пароля

Что нужно сделать: Проверить пароль: длина ≥ 8, наличие хотя бы одной буквы и одной цифры.

Что вам понадобится: len(), any(), .isalpha(), .isdigit(), логика булевых выражений.

Пример ввода

Hello123

Пример вывода

valid

Решение на Python

pw = input().strip()
ok = (len(pw) >= 8 and any(ch.isalpha() for ch in pw) and any(ch.isdigit() for ch in pw))
print("valid" if ok else "invalid")