Escrever um programa que leia três valores inteiros e verifica se esses valores podem ser as medidas dos lados de um triângulo. Lembrar que para um triângulo com lados a, b, c as seguintes condições devem ser observadas:
& |b-c|
Para calcular o valor absoluto, utilizar a função abs(), disponível na biblioteca stdlib.

Passo 1

A questão pede um programa em C que leia três inteiros a, b e c e verifique, usando as desigualdades |b-c|, |a-c| e |a-b|, se eles podem ser medidas de lados de um triângulo. Para isso vamos precisar de stdio.h para entrada/saída e stdlib.h para usar a função abs().

Passo 2

Primeiro, incluímos as bibliotecas e declaramos as variáveis inteiras a, b e c. Em seguida usamos scanf para ler os três valores informados pelo usuário.

Passo 3

Depois, aplicamos cada condição de existência de triângulo usando abs(). Verificamos se
abs(b - c) < a < (b + c)
abs(a - c) < b < (a + c)
abs(a - b) < c < (a + b)
Essas desigualdades garantem que cada lado seja menor que a soma e maior que a diferença absoluta dos outros dois.

Passo 4

Em seguida combinamos as três verificações dentro de um if usando o operador lógico &&. Se todas forem verdadeiras, consideramos o triângulo válido; caso contrário, inválido.

Passo 5

No bloco verdadeiro do if imprimimos uma mensagem dizendo que os valores podem formar um triângulo. No bloco falso, imprimimos que não podem formar um triângulo. Por fim, retornamos 0 para indicar execução bem-sucedida.

Resposta

#include <stdio.h>
#include <stdlib.h>
int main() {
int a, b, c;
scanf("%d %d %d", &a, &b, &c);
if (abs(b - c) < a && a < (b + c)
    && abs(a - c) < b && b < (a + c)
    && abs(a - b) < c && c < (a + b)) {
    printf("Pode formar um triangulo\n");
} else {
    printf("Nao pode formar um triangulo\n");
}

return 0;
}

Exercícios relacionados