1
resposta

Conseguir achar uma maneira de mostrar os anos que ocorreram as copas até o ano atual e as datas futuras a partir do limite que o usuário colocar.

Conseguir achar uma maneira de mostrar os anos que ocorreram as copas até o ano atual e as datas futuras a partir do limite que o usuário colocar.

Exemplo: O usuário coloca um ano limite de 2100 e o programa mostrará todas as copas que ocorreram até o ano atual(2020) e datas futuras até o limite que ele colocou.

<meta charset="UTF-8">

<script>

    function pulaLinha(){
        document.write("<br>");
    }

    function mostra(frase){

        document.write(frase);
        pulaLinha();

    }

    var limite = parseInt(prompt("Digite um ano limite."));
    var anoCopa = 1930
    var anoAtual = 2020

    while(anoCopa <= anoAtual){
        mostra("Teve copa em: " + anoCopa);
        anoCopa = anoCopa + 4;
    }

    pulaLinha();
    mostra("Futuras copas:")
    pulaLinha();

      if(anoAtual <= limite){
          while(anoAtual <= limite){
              mostra("Terá copa em: " + anoAtual)
              anoAtual = anoAtual + 4;
          }
      }


    mostra("FIM");

</script>
1 resposta

Fala, Marcio! Tudo bom contigo?

Bacana, hein!

Só há um ponto a observar!

A contagem das copas futuras contam a partir de 2020 como se tivesse copa a partir desse ano.

Uma solução: podemos colocar dentro do primeiro whileas condicionais antes e depois do ano atual

    while (anoCopa <= limite) {
        if(anoCopa <= anoAtual) {
            mostra("Teve copa em: " + anoCopa);

        } else if(anoCopa > anoAtual){
            mostra("Terá copa em: " + anoCopa)
        }
        anoCopa = anoCopa + 4;
    }

mas no resultado final não teremos a divisão entre o antes e depois, que achei que ficou legal a sua ideia visualmente

    pulaLinha();
    mostra("Futuras copas:")
    pulaLinha();

Você pode fazer essa alteração dentro da estrutura que montou, Marcio!!!

Teste e volte para mostrar a solução que encontrou!

Um abraço e ficaremos no aguardo!

Quer mergulhar em tecnologia e aprendizagem?

Receba a newsletter que o nosso CEO escreve pessoalmente, com insights do mercado de trabalho, ciência e desenvolvimento de software