emanuele.g
21-11-2009, 16:03
Ciao a tutti, stavo facendo qualche esercizio che ci aveva dato il prof e ho incontrato subito i primi problemi..premetto che sono ancora all'inizio quindi niente di complicato :D
Il primo programma deve prendere in ingresso 3 numeri e dire se possono formare un triangolo, se la risposta è vera dirmi se è isoscele,equilatero o scaleno..insomma, una serie di if; peccato che non riesca a distinguermi tra triangolo equilatero e isoscele, infatti se immetto 4 4 4 mi dice che il triangolo è isoscele (ok è vero, ma io vorrei che mi dicesse che è equilatero!)
#include<stdio.h>
#include<stdlib.h>
int main(){
int x,y,z;
printf("inserire primo lato");
scanf("%d",&x);
printf("inserire secondo lato");
scanf("%d",&y);
printf("inserire terzo lato");
scanf("%d",&z);
if((x>y+z) || (y>z+x) || (z>x+y))
{ printf("i dati immessi non rappresentano un triangolo");}
else{
if(x==y==z)
{printf("il triangolo è equilatero");
}
else {
if(((x==y) || (x==z) || (y==z)))
{ printf("il triangolo è isoscele");}
else{printf("il triangolo è scaleno");
}
}
}
system("PAUSE");
}
cosa sbaglio? Eventualmente sarebbe possibile farlo con uno switch? credo di no, ma chiedo lo stesso :D
EDIT: mi sono ricordato adesso di non aver sbagliato il titolo...dovevo specificare che si trattava di C
Il primo programma deve prendere in ingresso 3 numeri e dire se possono formare un triangolo, se la risposta è vera dirmi se è isoscele,equilatero o scaleno..insomma, una serie di if; peccato che non riesca a distinguermi tra triangolo equilatero e isoscele, infatti se immetto 4 4 4 mi dice che il triangolo è isoscele (ok è vero, ma io vorrei che mi dicesse che è equilatero!)
#include<stdio.h>
#include<stdlib.h>
int main(){
int x,y,z;
printf("inserire primo lato");
scanf("%d",&x);
printf("inserire secondo lato");
scanf("%d",&y);
printf("inserire terzo lato");
scanf("%d",&z);
if((x>y+z) || (y>z+x) || (z>x+y))
{ printf("i dati immessi non rappresentano un triangolo");}
else{
if(x==y==z)
{printf("il triangolo è equilatero");
}
else {
if(((x==y) || (x==z) || (y==z)))
{ printf("il triangolo è isoscele");}
else{printf("il triangolo è scaleno");
}
}
}
system("PAUSE");
}
cosa sbaglio? Eventualmente sarebbe possibile farlo con uno switch? credo di no, ma chiedo lo stesso :D
EDIT: mi sono ricordato adesso di non aver sbagliato il titolo...dovevo specificare che si trattava di C