Ir para conteúdo
Fórum Script Brasil
  • 0

Triangulos


italogoiania

Pergunta

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();
}

Link para o comentário
Compartilhar em outros sites

1 resposta a esta questão

Posts Recomendados

  • 0

Olá.. observe o código que eu fiz... se ainda restar alguma dúvida estou à disposição.

#include <stdio.h>

#include <conio.h>

int main(){

float lado1,lado2,lado3; //declaração das variaveis lados;

printf("Lado 1:");

scanf("%f",&lado1);//leitura lado1;

printf("Lado 2:");

scanf("%f",&lado2);//leitura lado2;

printf("Lado 3:");

scanf("%f",&lado3);//leitura lado3;

//Testa se algum lado é zero;

if ((lado1==0)||(lado2==0)||(lado3==0)){

printf("Os lados informados não formam um triangulo\n");

//Se lado1 igual a lado2 e lado1 igual lado3, logo todos os lados são iguais;

}else if ((lado1==lado2)&&(lado1==lado3)){

printf("Triangulo Equilatero\n");

//Teste para ver se apenas 2 lados são iguais;

}else if (((lado1==lado2)&&(lado1!=lado3))||((lado2==lado3)&&(lado2!=lado3))||((lado1==lado3)&&(lado1!=lado2))){

printf("Triangulo Isosceles\n");

//Teste para todos os lados diferentes;

}else if ((lado1!=lado2)&&(lado1!=lado3)&&(lado2!=lado3)){

printf("Triangulo Escaleno\n");

}

getch();

}

Lembrando que esse código não faz a verificação de que um lado é menor que a soma dos outros dois.

Editado por Dih_Negretto
Link para o comentário
Compartilhar em outros sites

Participe da discussão

Você pode postar agora e se registrar depois. Se você já tem uma conta, acesse agora para postar com sua conta.

Visitante
Responder esta pergunta...

×   Você colou conteúdo com formatação.   Remover formatação

  Apenas 75 emoticons são permitidos.

×   Seu link foi incorporado automaticamente.   Exibir como um link em vez disso

×   Seu conteúdo anterior foi restaurado.   Limpar Editor

×   Você não pode colar imagens diretamente. Carregar ou inserir imagens do URL.



  • Estatísticas dos Fóruns

    • Tópicos
      152k
    • Posts
      651,7k
×
×
  • Criar Novo...