Esercizio

Scrivere una funzione unsigned int rettangolo(unsigned int a, unsigned int b, unsigned int c) che riceve in ingresso tre numeri naturali a, b e c e ritorna 1 se i 3 numeri possono essere i lati di un triangolo rettangolo o 0 altrimenti.

Si ricorda che 3 numeri possono essere i lati di un triangolo rettangolo se rispettano il teorema di Pitagora (la somma delle aree dei quadrati costruiti sui cateti e' uguale all'area del quadrato costruito sull'ipotenusa).

La funzione rettangolo() deve essere definita in un file .c separato dal resto del programma ed e' dichiarata nel file rettangolo.h.

Nota 1: nel verificare se il teorema di Pitagora e' rispettato, e' importante identificare quale dei tre numeri (a, b o c) rappresenta l'ipotenusa del triangolo e quali rappresentano i due cateti. Si ricordi che l'ipotenusa e' il lato piu' grande. Quindi, per prima cosa rettangolo() deve identificare il maggiore fra i 3 numeri, stabilendo che quello e' l'ipotenusa; poi, puo' verificare se il teorema di Pitagora e' rispettato.

Nota 2: se un programma e' scomposto in due unita' di compilazione main.c e rettangolo.c, puo' essere compilato con gcc -Wall main.c rettangolo.c.

Prova Teorica

Testo della prova teorica.