Пифагорейский триплет это набор трех чисел, a < b < c, для которых,
a2 + b2 = c2
Например, 32 + 42 = 9 + 16 = 25 = 52.Есть только один Пифагорейский триплет для которого a + b + c = 1000.
Найти произведение abc
Решение по C++
#include <iostream>
#include <math.h>
bool is_triplet(int a, int b, int c);
int main()
{
for (int i=1; i<=998; i++)
{
for (int j=i+1; j<=999; j++)
{
for (int k=j+1; k<=1000; k++)
{
if (is_triplet(i,j,k))
if (i+j+k == 1000)
std::cout << i*j*k << std::endl;
}
}
}
return 0;
}
bool is_triplet(int a, int b, int c)
{
if ((pow(a,2) + pow(b,2)) == pow(c,2))
return true;
return false;
}
Результат
31875000
Комментариев нет:
Отправить комментарий