Track
/
C
C
/
Esercizi
/
Terna pitagorica
Terna pitagorica

Terna pitagorica

Medio

Introduzione

Sei un abile risolutore di problemi, noto per la tua capacità di affrontare i rompicapi matematici più impegnativi. Una sera ricevi una lettera urgente da un inventore chiamato il Triangle Tinkerer, che sta lavorando a un nuovo progetto rivoluzionario. Nella lettera si legge:

Caro matematico,

Ho bisogno del tuo aiuto. Sto progettando un dispositivo che si basa sulle proprietà uniche delle terne pitagoriche, insiemi di tre numeri interi che soddisfano l'equazione a² + b² = c². Questo dispositivo rivoluzionerà la navigazione, ma perché funzioni devo programmarlo con ogni terna possibile in cui la somma di a, b e c sia uguale a un numero specifico, N. Calcolare queste terne a mano mi richiederebbe anni, ma ho sentito dire che tu sei più che all'altezza del compito.

Il tempo stringe. Il futuro della mia invenzione, e forse persino il futuro dell'innovazione matematica, dipende dalla tua capacità di risolvere questo problema.

Spinto dall'importanza del compito, ti metti alla ricerca di tutte le terne pitagoriche che soddisfano la condizione. Il tuo lavoro potrebbe avere conseguenze di vasta portata e aprire nuove possibilità nella scienza e nell'ingegneria. Riuscirai a raccogliere la sfida ed entrare nella storia?

Istruzioni

Una terna pitagorica è un insieme di tre numeri naturali, {a, b, c}, per i quali

a² + b² = c²

e tali che

a < b < c

Per esempio,

3² + 4² = 5².

Dato un numero intero N in input, trova tutte le terne pitagoriche per cui a + b + c = N.

Per esempio, con N = 1000, esiste esattamente una terna pitagorica per cui a + b + c = 1000: {200, 375, 425}.

Modifica tramite GitHub Il link si apre in una nuova finestra o scheda
C Exercism

Vuoi iniziare Terna pitagorica?

Iscriviti a Exercism per imparare e padroneggiare C con 84 esercizi e il mentoring di persone reali, tutto gratis.