Предмет: Информатика,
автор: uchenik17033
Натуральные числа а, b, с называются числами Пифагора, если выполняется
условие а^2+b^2=c^2 Напечатать все числа Пифагора, меньшие N. (python)
Ответы
Автор ответа:
2
Ответ:
N = int(input())
for u in range(1, N):
for k in range(1, N):
for b in range(1, N):
if u**2 + k**2 == b**2:
print(u, k, b)
Объяснение:
- Сначала инициализируем переменную, в которую запишется введенное N с клавы.
- Далее перебираем все числа от 1 до N, и так три раза. Каждый перебор имеет свое значение: for u - это заготовка для операций с "a"; for k - заготовка для операций с "b"; ну и for b - для "с".
- В самом конце мы сравниваем их квадраты с значением из for b.
- Немного сложно понять, но вот на примере: ввели 15, перебираем каждое число из промежутка от 1 до 15, сначала взяв 1 (u), потом снова берем 1 (k), потом снова берем 1 (b), сумма 1**2 + 1**2 не равно 1**2, идем дальше значит. Берем из этого промежутка 1 (u), потом опять 1 (k), а вот сейчас взяли 2 (b), сумма 1**2 + 1**2 не равна 2**2, опять не подошло. Этим я хотел показать, что значения постепенно меняются с конца, с последнего for. Последний for дошел до числа 15? теперь начнет меняться for, который выше. Так раз за разом переберутся все возможные значения.
Надеюсь, более-менее понятно :c
Лучше порешай подобные задания на вложенные циклы на других ресурсах, понимание с практикой придет
Похожие вопросы
Предмет: Английский язык,
автор: angelinkalukin
Предмет: Русский язык,
автор: askanio
Предмет: Русский язык,
автор: Красотка3641
Предмет: Геометрия,
автор: AshPrime