💡 O que você vai aprender nesta aula:
- A regra matemática da "Condição de Existência" de um triângulo.
- Como usar operadores lógicos (
&&e||) no PHP. - Como estruturar IF e ELSE aninhados (um dentro do outro).
- Resolução completa: verificando se o triângulo é Equilátero, Isósceles ou Escaleno.
Na programação, muitas vezes precisamos traduzir regras do mundo real (ou da matemática) para o código. O desafio de hoje é clássico: criar um script PHP que receba três valores digitados pelo usuário e diga não apenas se esses valores formam um triângulo válido, mas também qual é o tipo dele.
Como saber se um triângulo existe?
Para um triângulo existir, a soma das medidas de dois lados deve ser sempre maior que a medida do terceiro lado. No PHP, testamos isso verificando simultaneamente se $a + b > c$, $a + c > b$ e $b + c > a$. Se uma dessas condições for falsa, a figura não fecha.
Para colocar isso no PHP, usamos o operador lógico && (que significa "E"). Veja como fica a condição principal:
if( ($a + $b > $c) && ($a + $c > $b) && ($b + $c > $a) ){
// O triângulo EXISTE! Agora podemos descobrir o tipo dele.
} else {
echo "Estes valores não formam um triângulo.";
}
Triângulo Equilátero, Isósceles ou Escaleno no PHP
Se o código passar pelo primeiro if, sabemos que o triângulo existe. Agora, precisamos fazer perguntas secundárias. Para isso, usamos IF e ELSE Aninhados (colocar um IF dentro do bloco de outro IF).
As regras geométricas são simples:
- Equilátero: Todos os 3 lados são iguais ($a = b$ e $b = c$).
- Isósceles: Pelo menos 2 lados são iguais. Como já descartamos o equilátero no passo anterior, basta testar se ($a = b$ ou $a = c$ ou $b = c$). Para isso, usamos o operador
||(OU). - Escaleno: Se não é equilátero e não é isósceles, só sobrou uma opção: todos os lados são diferentes! Cai direto no
else.
Operadores Lógicos (&& e ||) deram tela azul? 💻
Estruturas aninhadas e operadores lógicos costumam ser o grande terror de quem está começando. Mas não precisa ser assim! Na Apostila PHP Progressivo, você encontra explicações visuais e dezenas de exercícios resolvidos para você treinar a sua lógica passo a passo, no seu tempo e offline.
Baixar Apostila Completa →Script PHP Completo: O Código Final
Veja como juntamos o HTML do formulário com a lógica do PHP. Adicionamos a função isset() para evitar erros ao carregar a página pela primeira vez e usamos type="number" no HTML para garantir que o usuário não digite letras.
<html>
<head>
<title>Validador de Triângulos - PHP</title>
</head>
<body>
<h2>Descubra o tipo do seu Triângulo</h2>
<form action="" method="get">
Lado A: <input type="number" step="any" name="lado_a" required /><br /><br />
Lado B: <input type="number" step="any" name="lado_b" required /><br /><br />
Lado C: <input type="number" step="any" name="lado_c" required /><br /><br />
<input type="submit" value="Testar Triângulo" />
</form>
<hr>
<?php
// Verifica se o usuário enviou o formulário
if(isset($_GET['lado_a'], $_GET['lado_b'], $_GET['lado_c'])){
$a = $_GET['lado_a'];
$b = $_GET['lado_b'];
$c = $_GET['lado_c'];
// 1. Condição de Existência do Triângulo
if( ($a + $b > $c) && ($a + $c > $b) && ($b + $c > $a) ){
// 2. Classificação (IFs Aninhados)
if($a == $b && $b == $c) {
echo "<h3 style='color:blue;'>É um Triângulo Equilátero!</h3>";
}
elseif ($a == $b || $a == $c || $b == $c) {
echo "<h3 style='color:green;'>É um Triângulo Isósceles!</h3>";
}
else {
echo "<h3 style='color:purple;'>É um Triângulo Escaleno!</h3>";
}
} else {
echo "<h3 style='color:red;'>Erro: Estes valores NÃO formam um triângulo!</h3>";
}
}
?>
</body>
</html>
Conseguiu entender a lógica dos IFs dentro de IFs? Excelente! Vamos subir o nível no próximo tutorial.
Avançar para a Próxima Aula »
Nenhum comentário:
Postar um comentário