04. Supondo que a população de um país A seja da ordem de 80000 habitantes com uma taxa anual de crescimento de 3% e que a população de B seja 200000 habitantes com uma taxa de crescimento de 1.5%. Faça um programa que calcule e escreva o número de anos necessários para que a população do país A ultrapasse ou iguale a população do país B, mantidas as taxas de crescimento.
05. Altere o programa anterior permitindo ao usuário informar as populações e as taxas de crescimento iniciais. Valide a entrada e permita repetir a operação.
Estudar pela Apostila de PHP
Código comentado
Seja $A o valor da população da cidade A e $B o da B.
Seja $tA a taxa de crescimento da população da cidade A e $tB o da B.
Primeira coisa que temos que notar é que o usuário vai inserir a taxa em porcentagem, então precisamos dividir por 100 pra ter a taxa correta.
Após o primeiro ano, cada população vai ser:
$A = $A * (1 + $tA);
$B = $B * (1 + $tB);
Isso vai ocorrer enquanto o tamanho de $A seja menor a $B.
Quando for igual ou superior, o laço DO WHILE vai parar, e exibimos o valor da variável de controle, que está contando os anos:
<html> <head> <title>Apostila PHP Progressivo</title> </head> <body> <form action="" method="get"> População da cidade A: <input type="number" name="A" /><br /> População da cidade B: <input type="number" name="B" /><br /> Taxa de crescimento da cidade A (em %): <input type="text" name="tA" /><br /> Taxa de crescimento da cidade B (em %): <input type="text" name="tB" /><br /> <input type="submit" name="submit" value="Inserir" /> </form> <?php $A=$_GET['A']; $B=$_GET['B']; $tA=$_GET['tA']; $tB=$_GET['tB']; $count=1; $tA /= 100; $tB /= 100; do{ $A *= (1+$tA); $B *= (1+$tB); echo "Após $count anos:<br />"; echo "População de A: $A <br />"; echo "População de B: $B <br />"; $count++; }while($A<$B); echo "Em $count anos a população de A atinge a de B"; ?> </body> </html>
Fizemos com que a cada ano, fosse mostrado o número de habitantes da cidade A e da cidade B, para você ver como só vai ultrapassar no tempo certo.
Isso permite você verificar se a solução está correta.
Deixamos a validação se a entrada está correta ou não com você.
Dica: Cheque se a população é um número positivo de pessoas, e a população de A deve ser menor e ter taxa de crescimento maior, do contrário nunca alcançará B.