Вложенные циклы можно использовать для решения уравнений с несколькими переменными. Зная, что решения (корни) уравнения являются натуральными (целыми) числами, несложно написать программу, содержащую вложенный цикл и перебирающую все возможные значения переменных.
Решение задач
Задача 1. Найдите все пары натуральных чисел (и их количество), являющихся решением уравнения .
Решение. Поскольку по условию числа и являются натуральными, то (при , , что больше, чем , поэтому , т.к. y не может быть отрицательным по условию; аналогично получается, что ). Напишем программу, которая перебирает всевозможные пары чисел и проверяет для них выполнение условия .
total = 0
for x in range(1, 65):
for y in range(1, 60):
if 12 * x + 13 * y == 777:
total += 1
print('x =', x, 'y =', y)
print('Общее количество натуральных решений =', total)
В результате выполнения такого кода, мы получим:
x = 3 y = 57
x = 16 y = 45
x = 29 y = 33
x = 42 y = 21
x = 55 y = 9
Общее количество натуральных решений = 5
Задача 2. Найдите все тройки натуральных чисел (и их количество), являющихся решением уравнения .
Решение. Поскольку по условию числа и являются натуральными, то . Напишем программу, которая перебирает всевозможные тройки чисел и проверяет для них условие .
total = 0
for x in range(1, 45):
for y in range(1, 45):
for z in range(1, 45):
if x ** 2 + y ** 2 + z ** 2 == 2020:
total += 1
print('x =', x, 'y =', y, 'z =', z)
print('Общее количество натуральных решений =', total)
В результате выполнения такого кода, мы получим:
x = 18 y = 20 z = 36
x = 18 y = 36 z = 20
x = 20 y = 18 z = 36
x = 20 y = 36 z = 18
x = 36 y = 18 z = 20
x = 36 y = 20 z = 18
Общее количество натуральных решений = 6