[C] Esercizio di base: classificazione triangoli

di il
8 risposte

[C] Esercizio di base: classificazione triangoli

Buona sera. Chiedo un'informazione riguardo ad un programma realizzato in c che, inserite le misure di 3 lati, calcola se i tre lati compongono un triangolo isoscele, scaleno o equilatero!
Dopo averlo scritto tutto in un unico file sorgente ed essermi accorto che per la compilazione veniva impiegato più tempo del solito ho deciso di suddividere il programma in più file:

- Il principale
- La funzione per calcolare se il triangolo è scaleno
- La funzione per calcolare se il triangolo è isoscele
- La funzione per calcolare se il triangolo è equilatero

Ma , nonostante io inserisca la stessa misura per tutti i lati, il programma mi dice che si tratta di un triangolo scaleno ! Lascio il codice di tutti i file e attendo una risposta, grazie in anticipo !

Principale

//Programma in linguaggio C che legga da tastiera i valori delle lunghezze dei
//tre lati di un triangolo (detti A,B e C), e determini:
//1)se il triangolo è equilatero
//2)se il triangolo è isoscele
//3)se il triangolo è scaleno
//4)se il triangolo è rettangolo.

#include <stdio.h>
#include <stdlib.h>

void Equilatero();
void Isoscele();
void Scaleno();

int main(){
    float l1,l2,l3;
    float quad1,quad2,quad3;
    
    //Inserisco i lati
    printf("Inserisci il primo lato: ");
    scanf("%f",&l1);
    printf("Inserisci il secondo lato: ");
    scanf("%f",&l2);
    printf("Inserisci il terzo lato: ");
    scanf("%f",&l3);
    
    //Verifico se si tratta di un triangolo equilatero
Equilatero ();
    
    //Verifico se si tratta di un triangolo isoscele
Isoscele ();
    
    //Verifico se si tratta di un triangolo scaleno
Scaleno ();

    
    system("PAUSE");
    return 0;
}
Funzione triangolo equilatero

//Funzione triangolo equilatero
#include <stdio.h>

void Equilatero(float l1, float l2, float l3){
if(l1==l2 && l2==l3 && l3==l1){
    printf("Il triangolo e' equilatero!\n");
}
else {
    printf("Il triangolo non e' equilatero!\n");
}
}
Funzione triangolo scaleno

//Funzione triangolo scaleno
#include <stdio.h>

void Scaleno(float l1, float l2, float l3){
if(l1!=l2 && l2!=l3 && l3!=l1){
    printf("Il triangolo e' scaleno!\n");
}
else {
    printf("Il triangolo non e' scaleno!\n");
}
}
Funzione triangolo isoscele

//Funzione triangolo isoscele
#include <stdio.h>

void Isoscele(float l1, float l2, float l3){
if ((l1==l2 && l2==l3 && l3!=l1)||(l1==l2 && l2!=l3 && l3==l1)||(l1!=l2 && l2==l3 && l3!=l1)){
    printf("Il triangolo e' isoscele!\n");
}
else {
    printf("Il triangolo non e' isoscele!\n");
}
}
P.S. Ho compilato il tutto usando gcc con gcc Triangoli.c Scaleno.c Equilatero.c Isoscele.c -o Triangoli

8 Risposte

Devi accedere o registrarti per scrivere nel forum
8 risposte