Charlys 0 Denunciar post Postado Setembro 21, 2014 Program Pzim ; var lado1,lado2,lado3,perimentro,altura,area,base:real; Begin writeln('Digite o lado1 em (m):'); readln(lado1); writeln('Digite o lado2 em (m):'); readln(lado2); writeln('Digite o lado3 em (m):'); readln(lado3); if (lado1+lado2>lado3) and (lado1+lado3>lado2) and (lado2+lado3>lado1) then begin writeln('Esses valores fomam um trinângulo.'); end else if (lado1=lado2) and (lado1=lado3) and (lado2=lado3) then begin writeln('O triângulo é equilátero!'); writeln('Digite a altura em (m)'); readln(altura); writeln('Digite sua base em (m)'); readln(base); area:=(base*altura)/2; perimentro:=lado1+lado2+lado3; writeln('A área do triângulo em (m)',area); writeln('O perímentro do triângulo em (m)',perimentro); end else if (lado1=lado2) or (lado1=lado3) or (lado2=lado3) then begin writeln('O triângulo é isósceles !'); writeln('Digite a altura em (m)'); readln(altura); writeln('Digite sua base em (m)'); readln(base); area:=(base*altura)/2; perimentro:=lado1+lado2+lado3; writeln('A área do triângulo em (m): ',area); writeln('O perímentro do triângulo em (m)',perimentro); end else if (lado1<>lado2) and (lado1<>lado3) and (lado2<>lado3) then begin writeln('O triângulo é escaleno'); writeln('Digite a altura em (m)'); readln(altura); writeln('Digite sua base em (m)'); readln(base); area:=(base*altura)/2; perimentro:=lado1+lado2+lado3; writeln('A área do triângulo em (m): ',area); writeln('O perímentro do triângulo em (m)',perimentro); end; End. Compartilhar este post Link para o post Compartilhar em outros sites
KhaosDoctor 242 Denunciar post Postado Setembro 23, 2014 As sua verificação de isósceles não vai bater.... Imagine: if (lado1=lado2) or (lado1=lado3) or (lado2=lado3) then Se todos os lados forem iguais, a verificação retornará true, true e true ou seja, ele continuará caindo ai ou então nunca irá cair ai mesmo que os lados sejam diferentes, a ideia é comparar o lado1 sendo igual ao 2 e diferente do 3 ou então o lado 2 sendo igual ao 3 e diferente do 1 ou então o lado 3 é igual a um dos outros dois e diferente dos demais, isso prova um triângulo isósceles. Compartilhar este post Link para o post Compartilhar em outros sites
Viviam Spacki 0 Denunciar post Postado Setembro 24, 2014 Se todos os lados forem iguais - é equilatero Senão, se todos os lados forem diferentes - é escaleno senão é isosceles Tenta isso. E para facilitar, acho q poderia fazer todas as solicitações uma unica vez perimentro,altura,area,base E mais uma coisa, é legal conferir se nenhum lado é igual a zero. Compartilhar este post Link para o post Compartilhar em outros sites