Dúvida teorema de pítagoras

Estou fazendo um exercício do livro Java como programar. Ele pede:
Escreva um aplicativo que localize todos os lados de Pitágoras, para lado1, lado2 e a hipotenusa, todos não maiores que 500.
Utilize um for triplamente aninhado que tenta todas as possibilidades, ou força bruta.

Não estou conseguindo fazer, segue o código até onde consegui:

[code]/*Exercício5.21 Escreva um aplicativo que localize todos os lados de Pitágoras, para lado1, lado2 e a hipotenusa, todos não maiores que 500.
Utilize um for triplamente aninhado que tenta todas as possibilidades */

public class TeoremaPitagora {
public static void main (String [ ] args) {

int lado1, lado2, hipotenusa;



for (lado1=1; lado1<=500; lado1++) {
  for(lado2=1; lado2<=500; lado2++) {
    for(hipotenusa=1; hipotenusa<=500; hipotenusa++) {
    
    if(lado1+lado2==hipotenusa) {
    System.out.printf("\n%s %s %s", " lado 1"," lado 2"," hipotenusa");
    System.out.printf("\n%d\t %d\t %d\t ",lado1,lado2,hipotenusa);
    
 	   }
 	   }
 	   } 
	   }
	   } 
	   }// fim da classe[/code]

Fica dando um loop super rápido não consigo ver nada, será que tem alguma opção de ir parando aos poucos.
Está certo essa lógica?

Tente colocar dentro do seu loop o seguinte trecho de código.

try{
    Thread.sleep(1000);// um segundo
} catch(Exception e){}

Acho que deve resolver o seu problema.

Ah, Com relação a lógica, acho que está errado!
a fórmula do teorema de pitágoras é:[quote]O quadrado da hipotenusa é igual a soma dos quadrados dos catetos.[/quote]

Então o seu if deveria ser algo mais ou menos assim:

if(hipotenusa*hipotenusa == (lado1*lado1) + (lado2*lado2)){
//imprimeTrianguloRetangulo()
}

Além disso, lembre-se que a soma dos lados tem que ser maior ou igual ao da hipotenusa!
Se voce utilizar isso, dá para otimizar o seu código.

Espero ter ajudado!

Valeu Madureira essa do try fazer o loop esperar 1 segundo muito legal, e quanto ao código da soma do quadrado dos catetos igual ao quadrado da hipotenusa foi falta de atenção.
Agora vou tirar o main e transformá-lo em POO orientado a objeto.
Muito obrigado!!
Segue o código correto.

[code]/*Exercício5.21 Escreva um aplicativo que localize todos os lados de Pitágoras, para lado1, lado2 e a hipotenusa, todos não maiores que 500.
Utilize um for triplamente aninhado que tenta todas as possibilidades */

public class TeoremaPitagoras {
public static void main (String [ ] args) {

     int lado1, lado2, hipotenusa;
	
for (lado1=1; lado1<=500; lado1++) {
  for(lado2=1; lado2<=500; lado2++) {
    for(hipotenusa=1; hipotenusa<=500; hipotenusa++) {
    
   	    	
    if(lado1*lado1+lado2*lado2==hipotenusa*hipotenusa) {//fórmula dos catetos = hipotenusa
    System.out.printf("\n%s %s %s", " lado 1","  lado 2"," hipotenusa");
    System.out.printf("\n%7d %7d\t %8d ",lado1,lado2,hipotenusa);
    try{
	 Thread.sleep(1000);//executa em tempo de um segundo
		} catch(Exception e){}
	   }
 	   }
 	   } 
	   }
	   } 
	   }// fim da classe

[/code]