Solucionado (ver solução)
Solucionado
(ver solução)
2
respostas

Dúvida em Exercício - While

Olá pessoal!

Criei um algoritmo com o intuito de imprimir na tela o valor do ano atual que será subtraído pelo meu ano de nascimento. Minha intenção é que seja exibido na tela de maneira decrescente a quantidade de anos de 2023 até o ano de 1995. Ex.: 28 27 26 25 ... ... ... 3 2 1.

Só que o resultado da operação tem sido esse: 2023 2022 2021 2020 ... ... ... 1997 1996 1995.

<?php

$anoAtual = 2023;
$anoNasc = 1995;

while ($anoAtual >= 1995) {
    $anoAtual - $anoNasc .PHP_EOL;
    echo $anoAtual-- .PHP_EOL;
}
?>

evidência1

evidência2

Poderiam me ajudar?

Grato.

2 respostas
solução!

Olá, Oto! Tudo bem?

Pelo que pude perceber, o problema está na linha onde você realiza a subtração dos anos. Você está apenas escrevendo a operação, mas não está atribuindo o resultado a uma variável ou imprimindo na tela.

Para corrigir, basta adicionar a operação dentro de um echo e atribuir o resultado a uma variável. Assim:

$anoAtual = 2023;
$anoNasc = 1995;

while ($anoAtual > 1995) {
    $idade = $anoAtual - $anoNasc;
    echo $idade . PHP_EOL;
    $anoAtual--;
}

Dessa forma, a cada iteração do loop, será calculada a idade e impressa na tela.

Espero ter ajudado e bons estudos!

Caso este post tenha lhe ajudado, por favor, marcar como solucionado ✓

Deu certo.

Foi exatamente isso que eu queria.

Obrigado!