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

WzguizW

Pergunta

Olá galera,sou iniciante em programaçao (Comecei a 1 semana ^^),no meu curso estamos usando o Visualg e meu professor passou a seguinte tarefa: Mostar na tela se os numeros digitados podem formar um triangulo

Mostrar se o triangulo é equilatero,escaleno ou isoceles.

Eu consegui fazer isso,porem mesmo quando os numeros digitados não podem formar um triangulo,a variavel isoceles (Is) é dada como verdadeira.

Consegui resolver o problema,colocando na ultima linha :Escreval ("O triangulo é isoceles? ",Is=TRI)

Porém apesar de mostrar na tela uma saida certa,não sei se para o computador o resultado e logicamente correto entende?Alguém ai sabe como corrigir?ou está tudo certo?===============Eq=Equilatero, Es=Escaleno TRI= Triangulo ou não

algoritmo "triangulo"
var
L1, L2, L3: Real
Eq, Es, TRI, Is: Logico
inicio
Escreva ("Digite o primeiro lado: ")
Leia (L1)
Escreva ("Digite o segundo lado: ")
Leia (L2)
Escreva ("Digite o terceiro lado: ")
Leia (L3)
TRI <- (L1< L2+L3) e (L2< L1+L3) e (L3< L1+L2)
Eq <- (L1=L2) e (L2=L3)
Es <- (L1<>L2) e (L2<>L3) e (L3<>L1)
Is <- ((L1=L2) e (L3<>L2)) ou ((L2=L3) e (L1<>L2)) ou ((L1=L3) e (L2<>L1))
Escreval ("Pode ser um triangulo? ",TRI)
Escreval ("O triangulo é equilatero? ",Eq)
Escreval ("O triangulo é escaleno? ",Es)
Escreval ("O triangulo é isoceles? ",Is)
fimalgoritmo
Link para o comentário
Compartilhar em outros sites

3 respostass a esta questão

Posts Recomendados

  • 0

Galera resolvi o problema,depois de uns 45 min olhando pro codigo me veio a soluçao,confesso que para um iniciante programaçao e complicado,mas quando descobrimos onde erramos por conta própria ,não há alegria maior hehe,é melhor que sexo (nem tanto). modifiquei para isso :

Is <- (((L1< L2+L3) e (L2< L1+L3) e (L3< L1+L2)) e ((L1=L2) e (L3<>L2)) ou ((L2=L3) e (L1<>L2)) ou ((L1=L3) e (L2<>L1)))

teria algum jeito de simplificar isso?ta grande pakas.

Link para o comentário
Compartilhar em outros sites

  • 0

Cara, sei que já deve ter terminado, mas acho que o jeito certo seria usar um "for", ou seja, um "se", "senao":

Fica assim

var
   L1, L2, L3: Real
   Eq, Es, Ret, Is: real
inicio
     Escreva ("Digite o primeiro lado: ")
		Leia (L1)
     Escreva ("Digite o segundo lado: ")
		Leia (L2)
     Escreva ("Digite o terceiro lado: ")
		Leia (L3)
		
		Se ((L1=L2) e (L2=L3)) entao
			Escreval("É um retângulo")
			se ((L1<>L2) e (L2<>L3)) entao
				Escreval("É um escaleno")
					senao
						escreval("É um isósceles")
			fimse
		fimse
fimalgoritmo
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
      152,3k
    • Posts
      652,5k
×
×
  • Criar Novo...