/*
Programma per trovare le terne pitagoriche composte da interi inferiori o uguali
a un certo valore. Le terne pitagoriche sono terne di interi per le quali risulta
a^2 = b^2 + c^2
Il programma richiede la libreria matematica, che di default non viene linkata.
Quindi, la riga di comando per il compilatore deve essere del tipo
gcc terne.c -o terne -lm
con l'opzione -lm in fondo, che segue tutte le altre.
*/
#include "stdio.h"
#include "math.h"
main () {
int x,y,max;
double z,y_max;
int contatore=0;
printf ("Inserire il limite : ");
scanf ("%d",&max);
for (x=1; x<=max; x++) {
/* è leggermente più efficiente calcolare la sqrt solo una volta per ogni x */
y_max=sqrt(max*max - x*x);
for (y=x; y<=y_max; y++) {
z = sqrt(x*x + y*y);
if (!(floor(z)<z))
printf ("terna pitagorica %d : %d %d %d \n", ++contatore, x, y, (int)z);
}
}
printf("numero terne : %d\n", contatore);
}
-- ArcangeloTripi - 18 Nov 2002
![]() |
Questo sito usa cookies, usandolo ne accettate la presenza. (CookiePolicy)
Torna al Dipartimento di Informatica |
|