Pesquisar no Python Iniciantes

quinta-feira, 2 de agosto de 2012

Exercícios #31 (Estrutura de Decisão)

Boa noite galera!

O 15° exercício diz assim:

“Faça um Programa que peça os 3 lados de um triângulo. O programa deverá informar se os valores podem ser um triângulo. Indique, caso os lados formem um triângulo, se o mesmo é: equilátero, isósceles ou escaleno."

Dicas:

Três lados formam um triângulo quando a soma de quaisquer dois lados for maior que o terceiro;
Triângulo Equilátero: três lados iguais;
Triângulo Isósceles: quaisquer dois lados iguais;
Triângulo Escaleno: três lados diferentes.

Vamos ao código após a explicação:

# -*- coding: latin-1 -*- '''Verificando o tipo de triangulo: Programa verifica se o triangulo é equilatero, isosceles ou escaleno, caso nao seja nenhum printa ~ não pode ser um triangulo ''' lado1 = input('Digite o primeiro: ') lado2 = input('Digite o segundo lado: ') lado3 = input('Digite o terceiro lado: ') if lado1 + lado2 > lado3: if lado1 == lado2 and lado1 == lado3: print ('E um Triangulo equilatero') elif lado1 == lado2 or lado2 == lado3 or lado1 == lado3: print ('E um Triangulo isosceles') elif lado1 != lado2 and lado3 or lado2 != lado1 and lado3 or lado1 != lado3: print ('E um Triangulo escaleno') else: print ('Os valores informados não formam um Triangulo')
É um programa muito simples como podem ver entramos com os valores dos lados e guardamos em suas respectivas variáveis, após verificamos com o if se os valores podem ser um triangulo obs: para ser triangulo o valor de dois lados tem que ser maior que o terceiro lado, caso sendo um triangulo verificamos seu tipo, equilátero, isósceles e escaleno e se o primeiro if que verifica se é um triangulo não for atendido pula toda a parte de verificação do tipo do triangulo e vai para o else(senão) que "printa" que os valores informados não formam um triângulo. Muito fácil não é? :p. 

Por hoje é só pessoal.

2 comentários:

  1. Pq o primeiro if so faz uma comparação?
    pq se lado1 + lado3 > lado2 ou lado3 + lado2 > lado1
    vai ser triangulo, mas como o if so faz lado1 + lado2 > lado3 ele vai dizer q nessas duas situações n é triangulo.

    ResponderExcluir
  2. opa, na realidade para ser um triangulo, a soma de lados tem que ser maior que o outro lado.

    print ("Digite um valor maior que ZERO:")
    l1 = int (input("Digite o primeiro lado do triangulo:" ))
    l2 = int (input("Digite o segundo lado do triangulo:" ))
    l3 = int (input("Digite o terceiro lado do triangulo:" ))
    if l1 != 0 and l2 != 0 and l3 != 0:
    if l1 == l2 and l2 == l3 and l1 == l3:
    print ("Triangulo equilátero: três lados iguais")
    elif l1 == l2 or l2 == l3 or l1 == l3:
    print ("Triangulo isósceles: dois lados iguais")
    else :
    print ("Triangulo escaleno: todos os lados diferentes")
    else:
    print ("não pode ser um triangulo")

    ResponderExcluir