Натуральные числа а, b, с называются числами Пифагора, если выполняется
условие а^2+b^2=c^2 Напечатать все числа Пифагора, меньшие N. (python) ​

Ответы

Ответ дал: Tony2014
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

Лучше порешай подобные задания на вложенные циклы на других ресурсах, понимание с практикой придет

Вас заинтересует