Как найти все пифагоровы тройки включающие число
Перейти к содержимому

Как найти все пифагоровы тройки включающие число

  • автор:

Как найти все пифагоровы тройки включающие число

Пифагоровы тройки

Пифагоровы числа — это числа x, y, z, которые образуют Пифагорову тройку.

Простейшая Пифагорова тройка – это тройка чисел (x, y, z), которые являются взаимно простыми числами и имеют наибольший общий знаменатель, равный 1.

Из каждой примитивной тройки можно получить другую Пифагорову тройку, умножив x, y, z на одно и то же натуральное число k.

В примитивной тройке (x, y, z) числа x и y разной четности, причем, четное число должно делиться на 4. А число z – всегда – нечётное. Также одно из чисел всегда делится на 3.

Как составить пифагорову тройку указывает формула Евклида.

Пифагорова тройка

Как составить пифагорову тройку. Формула Евклида для пифагоровой тройки

Любая примитивная тройка представляется в виде:

Пифагорова тройка

Другими словами, катеты (x, y) и гипотенузу (z) пифагорова треугольника можно выразить следующими формулами:

Пифагорова тройка

где m, n — целые числа (m>n).

Образованные при помощи формулы Евклида тройки будут примитивными тогда и только тогда, когда m и n взаимно простые и (m-n) — нечетное число.

Числа m и n не могут быть оба четными или оба нечетными, так как в этим случаях гипотенуза z = m 2 + n 2 будет четной, что невозможно.

Если и m, и n одновременно являются нечетными, то x, y и z будут четными, а тройка не будет примитивной. Однако деление x, y и z на 2 даcт примитивную тройку, если m и n взаимно просты.

Доказательство формулы Евклида

Шаг 1

Рассмотрим уравнение Пифагоровой тройки (формулу нахождения Пифагоровых троек):

Доказательство формулы Евклида

x, y и z – взаимно простые числа.

Докажем, что простая Пифагорова тройка, составленная из этих чисел, может быть представлена в виде:

Как составить пифагорову тройку. Формула Евклида

Доказательство формулы Евклида

Воспользуемся формулой квадрата разности:

Доказательство формулы Евклида

Следовательно, x 2 является средним геометрическим чисел (z+y) и (z-y). Значит, можем записать:

Доказательство формулы Евклида

Левую часть равенства представим в виде несократимой дроби m/n:

Доказательство формулы Евклида

Шаг 2

Перепишем левую часть полученного равенства:

Доказательство формулы Евклида

Доказательство формулы Евклида

Приведем правую часть равенства к общему знаменателю:

Доказательство формулы Евклида

Шаг 3

С учетом введенного обозначения, перепишем равенство, полученное на шаге 1:

Доказательство формулы Евклида

Доказательство формулы Евклида

Перепишем левую часть равенства:

Доказательство формулы Евклида

Доказательство формулы Евклида

Приведем к общему знаменателю правую часть равенства:

Доказательство формулы Евклида

Шаг 4

Сложим уравнения, полученные на шагах 2 и 3:

Доказательство формулы Евклида

Доказательство формулы Евклида

Доказательство формулы Евклида

Доказательство формулы Евклида

Так как по условию – x – простое число, то x не равно нулю, следовательно, на него можно сокращать:

Доказательство формулы Евклида

Доказательство формулы Евклида

Шаг 5

Вернемся к обозначению, введенному на шаге 1:

Доказательство формулы Евклида

Представим правую часть как сумму дробей:

Доказательство формулы Евклида

Доказательство формулы Евклида

Воспользуемся уравнением из шага 3:

Доказательство формулы Евклида

Доказательство формулы Евклида

Сложим последнее уравнение с уравнением:

Доказательство формулы Евклида

Доказательство формулы Евклида

Приведем к общему знаменателю:

Доказательство формулы Евклида

Так как по условию – x – простое число, то x не равно нулю, следовательно, на него можно сокращать:

Доказательство формулы Евклида

Доказательство формулы Евклида

Шаг 6

Итак, в процессе рассуждений получили равенства:

Доказательство формулы Евклида

Доказательство формулы Евклида

z/x и y/x – несократимые дроби, так как по условию x, y, z – взаимно простые числа

m\n – также несократимая дробь (см. шаг 1).

Числители и знаменатели равенств являются равными тогда и только тогда, когда правые части каждого равенства – несократимы.

В свою очередь, правые части будут несократимы тогда и только тогда, когда m и n имеют противоположную четность, из чего следует, что числители не делятся на 2.

Итак, можем приравнять числители и знаменатели:

Как составить пифагорову тройку. Формула Евклида

Где m и n – взаимно простые числа и имеют различную четность.

таким образом, мы доказали формулу Евклида, которая показывает как составить пифагорову тройку.

Шаг 7

Доказательство формулы Евклида

Можно еще одним способом.

Воспользуемся уравнением, полученным на шаге 1:

Доказательство формулы Евклида

Пусть x – четное число, которое делится на 4.

Так как x делится на 4 и произведение (z-y)(z+y) – четное (произведение суммы двух нечетных чисел на разность нечетных чисел будет четным), то разделив обе части уравнения на 4, получим:

Доказательство формулы Евклида

Перепишем, воспользовавшись свойством степеней и дробей:

Доказательство формулы Евклида

Воспользовавшись свойством корней, можем правую часть равенства переписать:

Доказательство формулы Евклида

Доказательство формулы Евклида

Доказательство формулы Евклида

Доказательство формулы Евклида

Доказательство формулы Евклида

Доказательство формулы Евклида

Таким образом, мы рассмотрели все варианты доказательств формул, показывающих как составить пифагорову тройку.

Найдите все пифагоровы тройки, в которых все числа находятся в диапазоне [1; 5000] [закрыт]

Учебные задания допустимы в качестве вопросов только при условии, что вы пытались решить их самостоятельно перед тем, как задать вопрос. Пожалуйста, отредактируйте вопрос и укажите, что именно вызвало у вас трудности при решении задачи. Например, приведите код, который вы написали, пытаясь решить задачу

Закрыт 1 год назад .

Это сообщение было исправлено и отправлено на проверку 1 год назад , но повторное открытие сообщения провалилось:

Пифагоровой тройка назовём тройку чисел (a, b, c), такую что a ≤ b ≤ с и a 2 +b 2 =c 2 . Найдите все пифагоровы тройки, в которых все числа находятся в диапазоне [1; 5000]. Запишите в ответе количество подходящих троек, а затем – значение c для тройки, в которой сумма a+b+c максимальна.

Помогите пожалуйста, код нужен на python, в ответе к заданию (5681 4988)

Ну, я написал код, но пока вам его не покажу — это всё-таки учебное задание. Но дам подсказки:

  • перебирайте в цикле a в указанном вам диапазоне [1,5000]
  • перебирайте в цикле b , учитывая, что оно тоже должно быть в диапазоне [1,5000] и кроме того, что a <= b
  • c перебирать не нужно, его можно вычислить зная a и b из уравнения, которое вам дано
  • вычисленное c нужно проверить на попадание в диапазон и на то, что получилось вообще целое число
  • если c получилось подходящее — увеличивайте счётчик, кроме того, сравните получающееся a+b+c с ранее запомненным значением (сначала запомните 0, как и в счётчик), если оно больше — запомните его и запомните c
  • после окончания циклов выведите значение счётчика и запомненного c

Вышеуказанные два вложенных цикла + логика внутри них работают 8 секунд в Google Colab, этого вполне достаточно, чтобы дальше код можно было особо не оптимизировать.

Вот если бы было три вложенных цикла по 5000 значений, то это бы работало конкретно долго.

Найдите все пифагоровы тройки, в которых все числа находятся в диапазоне [1; 5000]?

Vindicar

Не пойму почему делаете так. Можно куда проще.
Можно сгенерировать список квадратов чисел:
squares = [i*i for i in range(1, 5001)]
При этом индекс элемента в списке i всегда будет на один меньше, чем число, чей квадрат находится по индексу i.
Теперь задача переформулируется таким образом: найти все пары чисел из этого списка, сумма которых тоже в этом списке.

Работает не очень быстро, но работает.

EDIT: можно резко ускорить код, если учесть следующее: нам не обязательно искать сумму во всем списке. Мы знаем, что сумма будет больше чем b^2, т.е. будет иметь индекс больше чем b. Также мы знаем, что a^2 + b^2 < (a+b)^2, т.е. сумма будет иметь индекс меньше чем a+b. Отсюда:

Пифагоровы тройки

(x,\;y,\;z),

В математике пифагоровыми числами (пифагоровой тройкой) называется кортеж из трёх целых чисел удовлетворяющих соотношению Пифагора:

Содержание

Свойства

x,\;y,\;z

Поскольку уравнение x 2 + y 2 = z 2 однородно, при домножении x , y и z на одно и то же число получится другая пифагорова тройка. Пифагорова тройка называется примитивной, если она не может быть получена таким способом, то есть — взаимно простые числа.

Треугольник, стороны которого равны пифагоровым числам, является прямоугольным. Кроме того, любой такой треугольник является героновым, то есть таким, у которого все стороны и площадь являются целочисленными. Простейший из них — египетский треугольник со сторонами 3, 4 и 5 ( 3 2 + 4 2 = 5 2 ).

Пифагорова тройка (a,\;b,\;c)задаёт точку с рациональными координатами \left( \frac a c,\;\frac b c \right)на единичной окружности x 2 + y 2 = 1 .

Нетрудно видеть, что в примитивной тройке (x,y,z) числа x и y имеют разную чётность. Любая примитивная пифагорова тройка (x,y,z) , где x — нечётно, а y — чётно, однозначно представляется в виде (m^2-n^2,\;2mn,\;m^2+n^2)для некоторых натуральных взаимно простых чисел m > n разной чётности. Наоборот, любая такая пара (m,\;n)задаёт примитивную пифагорову тройку (m^2-n^2,\;2mn,\;m^2+n^2). [1]

Примеры

Некоторые пифагоровы тройки (отсортированы по возрастанию максимального числа, выделены примитивные):

(3, 4, 5), (6, 8, 10), (5, 12, 13), (9, 12, 15), (8, 15, 17), (12, 16, 20), (15, 20, 25), (7, 24, 25), (10, 24, 26), (20, 21, 29), (18, 24, 30), (16, 30, 34), (21, 28, 35), (12, 35, 37), (15, 36, 39), (24, 32, 40), (9, 40, 41), (14, 48, 50), (30, 40, 50)…

История

Пифагоровы тройки известны очень давно. В архитектуре древнемесопотамских надгробий встречается равнобедренный треугольник, составленный из двух прямоугольных со сторонами 9, 12 и 15 локтей. Пирамиды фараона Снофру (XXVII век до н. э.) построены с использованием треугольников со сторонами 20, 21 и 29, а также 18, 24 и 30 десятков египетских локтей.

X Всероссийский симпозиум по прикладной и промышленной математике. Санкт — Петербург, 19 мая 2009г.

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *