Dados três valores X, Y, Z, verifiquem se eles podem ser os comprimentos dos lados de um triângulo e se forem escrever uma mensagem informando se é se é um triângulo equilátero, isósceles ou escaleno. O comprimento de um lado do triângulo é sempre menor do que a soma dos outros dois. Sabendo que: EQUILATERO - Todos lados iguais ISOCELES - Dois lados iguais ESCALENO - Todos os lados diferentes O que há de errado? Porque quando digito X,Y iguais e Z diferente, ele sai como isoceles e escaleno? Acontece a mesma coisa quando X e Z são iguais e Y diferente. /* Este é o programa de exercício número 6 da lista do segundo semestre de 2011, Ciência da Computação UNASP */
#include <stdio.h>
#include <conio.h>
int x,y,z,lado,nulo;
int main()
{
{
const int nulo=0;
}
{
printf("Digite X : ");
scanf("%d", &x);
}
{
printf("Digite Y : ");
scanf("%d", &y);
}
{
printf("Digite Z : ");
scanf("%d", &z);
}
if(x == 0 && y == 0)
{
lado=0;
if(lado == 0 && z == 0)
{
printf("Os valores informados não podem ser um triangulo \n");
}
}
if(x==y)
{
{
lado=x;
}
if (lado==z)
{
printf("O Triangulo e equilatero\n");
}
}
if(x==y)
{
{
lado=x;
}
if(lado != z)
{
printf("O Triangulo e isoceles\n");
}
}
if(x==z)
{
{
lado=x;
}
if(lado != y)
{
printf("O Triangulo e isoceles\n");
}
}
if(y==z)
{
{
lado=y;
}
if(lado != x)
{
printf("O Triangulo e isoceles\n");
}
}
else
{
printf("O triangulo e escaleno. \n");
}
getch();
}