Determinare il tipo di triangolo in C
In questo esercizio svilupperemo una programma che ci permette di verificare se i valori dati in input definiscono un triangolo e in particolare se si tratta di un triangolo isoscele, scaleno o equilatero.
Per verificare che i valori in input definiscono effettivamente un triangolo, dobbiamo applicare una delle proprietà fondamentali dei triangoli, la disuguaglianza triangolare. Questa proprietà afferma che in un triangolo la somma di due lati è maggiore della lunghezza del terzo lato, quindi dati tre punti A, B, C deve essere che AB < BC + AC e allo stesso tempo AC < AB + BC e BC < AB + AC. Verificata tale condizione dobbiamo determinare il tipo di triangolo.
Basandosi sui lati i triangoli si possono classificare in triangoli equilateri, isosceli e scaleni. Iniziamo verificando se si tratta di un triangolo equilatero guardando se i tre lati hanno la stessa lunghezza. Se così non fosse, controlliamo se almeno due lati del triangolo possiedono la stessa lunghezza, determinando così un triangolo isoscele. Se anche questo non è il caso, allora siamo certi che si tratta di un triangolo scaleno.
#include <stdio.h>
int main() {
float a, b, c;
printf("Inserisci i lati del triangolo: \n");
scanf("%f %f %f", &a, &b, &c);
while(!((a < b + c) && (b < a + c) && (c < a + b))){
printf("I valori che hai inserito non definiscono un triangolo!\n");
printf("Inserisci i lati del triangolo: \n");
scanf("%f %f %f", &a, &b, &c);
}
printf("Il triangolo che hai inserito è: ");
if(a == b && b == c){
printf("equilatero!");
} else if(a == b || b == c || c == a){
printf("isoscele!");
} else {
printf("scaleno!");
}
return 0;
}
Indice pagine di c
Indice cPagine aggiunte di recente
Indice pagine del linguaggio C: Funzioni, Stringhe, ArrayCome effettuare la radice quadrata con la funzione sqrt in CCome ottenere il valore assoluto con la funzione abs in CCome generare numeri casuali con la funzione rand in CCome generare numeri casuali tra due numeri in C