Devo scrivere una applicazione che, inseriti da tastiera i tre lati di un triangolo, mi restituisca il tipo di triangolo(scaleno-equilatero-isoscele), inoltre se i tre lati non possono formare un triangolo deve comparire un messaggio apposito;
Sapendo che tre numeri rappresentano i lati di un triangolo se e soltatno se sono tutti positivi e se ciascuno è minore della somma degli altri due, ho scritto questo:
L'applicazione restituisce correttamente il tipo di triangolo mostrato, però non funziona correttamente nel caso in cui le tre lunghezze non siano i tre lati di un triangolo, ho provato ad inserirecodice:import fiji.io.*; class Triangolo{ public static void main(String[] args){ int a,b,c; System.out.println("inserisci il lato A: "); a=Lettore.in.leggiInt(); System.out.println("Inserisci il lato B: "); b=Lettore.in.leggiInt(); System.out.println("Inserisci il lato C:"); c=Lettore.in.leggiInt(); if(a!=b && a!=c && b!=c) System.out.println("Il triangolo è SCALENO"); else if(a==b && a==c && b==c) System.out.println("Il triangolo è EQUILATERO"); else if(a==b || a==c || b==c) System.out.println("Il triangolo è ISOSCELE"); else if(a>b+c && b>a+c && c>a+b) System.out.println("Non è un triangolo"); } }
a=10
b=14
c=1000
e il messaggio dice che il triangolo è scaleno;
Credo che l'errore sia in questo frammento di codice
else if(a>b+c && b>a+c && c>a+b)
ma non riesco a capire cosa c'è di sbagliato...
![]()
![]()

Rispondi quotando