кроссворды, задачки, головоломки

Сборник задач разного уровня сложности по математике, информатике, физике, химии, программированию, экономике etc. Логические задачи, SQL задачи, решение задач. Задачи с ответами, а также нерешённые задачи.

Petruchek.Info

Задача #9 из проекта "Эйлер"

Добавлено: 23.03.08 в 09:41
Метки: проект Эйлер

Пифагоровой тройкой называют набор из трёх натуральных чисел a<b<c, для которых
a2 + b2 = c2

например, 32 + 42 = 9 + 16 = 25 = 52

Существует единственная пифагорова тройка, такая что a + b + c = 1000.

Найти произведение abc для этой тройки.

СПРЯТАТЬ РЕШЕНИЕ/ОТВЕТ

Задача решается перебором, но его желательно оптимизировать.

Во-первых, условие a + b + c = 1000 сводит перебор к двум циклам for вместо трёх.

Во-вторых, условие a2 + b2 = c2 позволяет узнает кое-что о произведении ab и отбросить большую часть вариантов перебора.
источник

Комментарии
Google says:
Пётр (27.03.14):
Нашёл. Без программирования. С помощью Excel. Минут 10 ушло.
Пётр (27.03.14):
Но можно и программно (Pascal).
var
a,b,c: integer;
begin
for a:=100 to 250 do
for b:=a+100 to a+200 do
begin
c:=1000-a-b;
if sqr(a)+sqr(b)=sqr(c) then
begin
writeln(a,'+',b,'+',c,'=',a+b+c);
writeln(a,'^2+',b,'^2=',c,'^2=',sqr(c));
writeln(a,'*',b,'*',c,'=',a*b*c);
exit;
end;
end;
end.
VZ (20.07.15):
Приняв сумму сторон за N=1000, решив систему двух уравнений получим:
b = N - N*N / ( 2 ( N - a ))
В цикле по a от 1 до 292 находим целое значение дроби 500000/(1000 - a)
a = 200, b = 375, c = 425
Комментарий от новенького:
Новенький является
Новенький не робот
Знаки на картинке: латинские буквы, арабские цифры


Есть на сайте: Онлайн кроссворды Задачи Онлайн игры Блог
Все работы, опубликованные на сайте — авторские, если не указано иное. Перепечатка возможна только с письменного разрешения владельцев ресурса, с обязательной ссылкой на сайт petruchek.info. Пишите нам: . Сайт должен работать в IE, FF, Opera, Safari.

Реклама:

Разработано в студии "Webous"о проектесайта карта

Реклама: