Целью этой программы является поиск всех пифагорейских троек для каждого значения (a, b, c) менее 500 с использованием формулы Евклида (a = m^2 -n^2, b = 2mn, c = m^2 + n^2.) Итак, вот мой код.Поиск всех пифагорейских троек с использованием формулы Евклида
int main()
{
clock_t start = clock()/ (CLOCKS_PER_SEC/1000);
for (int m = 1; m <= 500; m++)
{
for (int n = 1; n <= 500; n++)
{
int a = (m*m)-(n*n);
int b = 2*m*n;
int c = (m*m)+(n*n);
if (m > n && a + b == c)
{
cout << a << " + " << b << " = " << c << endl;
}
}
}
clock_t finish = clock()/ (CLOCKS_PER_SEC/1000);
cout << "completed in " <<clock() << " ms";
return 0;
}
Я пробовал это, и мой вывод ничего. То, как я думал, что это сработает, будет: для каждого целого числа m, меньшего или равного 500, и начиная с 1, каждый раз добавляйте один к m. Такая же сделка для n. Затем вставьте эти значения в формулу, и если a + b == c, он печатает эти значения, таким образом, найдя мои тройки. Но я не получаю никаких результатов.
Сохраните дополнительные вычисления 'a, b, c', установив соответствующий цикл' for': 'for (m = 2; m <= 500; m ++)' и 'for (n = 1; n
kbshimmyo