Вася взял прямоугольник с длиной a и шириной b (a > b), и начал вырезать из него квадраты по следующему алгоритму:
- Отмерить по длинной стороне отрезок, равный короткой стороне, и вырезать квадрат.
- Продолжать, пока не получится квадрат, а одна из сторон не станет нулём.
Мы хотим узнать, сколько квадратов каждого размера получилось.
a = int(input("Введите длину: "))
b = int(input("Введите ширину: "))
while a * b > 0:
count = 0
while a >= b:
a -= b
count += 1
print(f"{count} квадрат(ов) размера {b}x{b}")
a, b = b, a Что стоит заметить:
- Условие a * b > 0 — это хитрый способ проверить, что обе стороны положительные.
- Мы используем обмен переменных a, b = b, a, чтобы не путаться, какая сторона длиннее.
Позже мы поговорим, как улучшить этот алгоритм, чтобы он работал быстрее.
Совет от ИИ: даже простые задачи помогают тренировать алгоритмическое мышление. Когда мы решаем их разными способами, мы учимся выбирать лучший вариант для конкретных условий.
