Título: [C]Terna pitagorica(Fuerza bruta) Publicado por: HRSLASH en 12 Agosto 2010, 17:12 pm Hola, dejo un programa q saca ternas pitagoricas(a˛+b˛=c˛) mediante fuerza bruta.. El problema q tengo es q no puedo hacer q descarte las ternas q son iguales(ej: 3˛+4˛ = 5˛ -- 4˛+3˛ = 5˛).
En el codigo hay varias sentencias q estan de mas pq las hice para armar la funcion q tendria q descartar los repetidos, las dejo para q vean lo q trataba de hacer, pero si se le sacan el codigo anda igual.. Código
Bueno espero sugerencias!! :D Título: Re: [C]Terna pitagorica(Fuerza bruta) Publicado por: leogtz en 12 Agosto 2010, 18:44 pm Código
Declaralos directamente como: Código: double algo = 1.0; Le ahorras al compilador tener que convertir el entero a real. Citar Conversion of a signed integer to a float or double takes 4 - 16 clock cycles, depending on the processor and the type of registers used. Título: Re: [C]Terna pitagorica(Fuerza bruta) Publicado por: HRSLASH en 12 Agosto 2010, 19:02 pm ok grax!! ya lo modifique!! :D El programa tarda varios segundos en terminar por la cantidad de calculos q tiene q hacer. Hay alguna otra modif q se le pueda hacer para q realize los calculos mas rapido??
Título: Re: [C]Terna pitagorica(Fuerza bruta) Publicado por: do-while en 12 Agosto 2010, 20:46 pm Tambien puedes ahorrarte el trabajo de llamar a funciones y comprobar directamente lo que dice el teorema:
hipotenusa * hipotenusa == cateto1 * cateto1 + cateto2 * cateto2: Código
ˇSaludos! Título: Re: [C]Terna pitagorica(Fuerza bruta) Publicado por: HRSLASH en 12 Agosto 2010, 21:04 pm Gracias x la sugerencia do-while! :D no habia pensado en hacerlo asi q resultara mas rapido ya q como dices, el programa no tendra q llamar funciones.. voy a modificarlo!
Saludos! |