Neste tutorial, vamos te ensinar como fazer a potenciação (calcular a potência de um número elevado a outro), em PHP, primeiramente sem usar nenhuma função interna do PHP.
Obter meu certificado! |
Calcular potência de um número
Você deve lembrar das aulas básicas de Matemática, quando aprendemos a potenciação.Ela é definida por três números:
- base
- expoente
- potência (resultado)
Exemplo:
5⁴ = 5 x 5 x 5 x 5
(leia: 5 vezes o 4, por isso repetimos o 4 cinco vezes)
a^b = a x a x a ... x a (o a se repete b vezes).
Calcular potência usando laços
Vamos calcular a potência de um número inteiro elevado a outro inteiro, usando apenas laços.Para isso, note que uma potenciação nada mais é que multiplicar um número por ele, várias vezes.
Por exemplo, em a^b
Multiplicamos a por a por a por a...um total de b vezes.
O script que pede uma base e um expoente ao usuário e exibe o resultado, usando laços WHILE, DO WHILE e FOR também:
<html> <head> <title>Apostila PHP Progressivo</title> </head> <body> <form action="" method="get"> Base: <input type="number" name="base" /><br /> Expoent: <input type="number" name="expoente" /><br /> <input type="submit" name="submit" value="Calcular" /> </form> <?php $base=$_GET['base']; $exp=$_GET['expoente']; // WHILE $resultado = 1; $count=1; while($count<=$exp){ $resultado *= $base; $count++; } echo "Resultado com WHILE: $resultado<br />"; // DO WHILE $resultado = 1; $count=1; do{ $resultado *= $base; $count++; }while($count<=$exp); echo "Resultado com DO WHILE: $resultado<br />"; // FOR for($resultado=1, $count=1 ; $count<=$exp ; $count++) $resultado *= $base; echo "Resultado com FOR: $resultado<br />"; ?> </body> </html>
Potenciação no PHP
Calcular um inteiro elevado a outro inteiro, já vimos como fazer.Mas e se for quebrado?
1,2^2,1 ?
Para isso existe a função nativa pow():
$resultado = pow($base, $expoente)
Veja mais detalhes e exemplos em:
http://php.net/manual/pt_BR/function.pow.php