Exercícios Resolvidos de Estruturas de seleção: if-else

Ver Teoria

Enunciado

Dados três segmentos de reta a , b e c , se:

a + b > c a + c > b b + c > a

estes podem formar um triângulo. Faça um programa que dados os valores dos segmentos de reta a , b e c , verifica se pode ser construído um triângulo com estes segmentos.

Passo 1

Vamos lá pessoal. A questão pode parecer difícil, mas vocês vão ver que é de boas!

A questão está pedindo pra gente testar a condição de existência dos triângulos. Se é pra testar uma condição, então já sabemos que provavelmente vamos usar um i f - e l s e nessa questão.

Mas antes disso, temos que receber três valores reais do usuário, que representam os lados do triângulo. Então vamos criar as variáveis a , b e c do tipo f l o a t .

Passo 2

Agora vamos usar o c o u t para informar que o usuário deve inserir o valor de cada lado do triângulo, e com o c i n vamos armazenar cada valor na variável adequada.

Passo 3

Agora vamos pra parte bonita da questão :-)

Pra que o triângulo exista, três condições devem ser respeitadas simultaneamente.

a + b > c   E   a + c > b E b + c > a

Pra escrever a expressão acima em C++ vamos usar o operador & &   ( E ) , e vamos usar os parêntesis para garantir que as somas e as comparações sejam executadas primeiro. Dessa forma:

( a + b > c ) & & a + c > b & & ( b + c > a )

Passo 4

Então vamos criar uma estrutura i f - e l s e que teste a expressão que desenvolvemos.

Vão existir duas situações possíveis:

  • SE (a+b>c) E (a+c>b) E (b+c>a) ENTÃO o triângulo existe.
  • CASO CONTRÁRIO ENTÃO o triângulo não existe.

Transcrevendo em C++ temos o seguinte algoritmo:

E prontinho! Questão resolvida.

Resposta