1
resposta

Duvida

Olá, eu estava tentando criar um código que mostrasse os anos em que um usuário teria que votar. E o intervalo dessa lista seria definido pelo ano atual e até que ano o usuário gostaria de visualizar (ano final). Mas encontrei dificuldades porque se o usuário colocar como ano atual, um ano que seja de eleição, é só ir somando + 4 até o ano final. Porém, se o ano atual fosse 2019, por exemplo, teria que ser adicionado + 3. Se fosse 2020, + 2. E 2021, + 1. Eu até pensei em solucionar isso relacionando os anos aos múltiplos de 4, mas não tenho conhecimento pra programar assim. Gostaria de saber se com o assunto desse curso (Lógica I) dá pra criar o que eu quero ou se eu estou tentando criar algo mais avançado do que o conhecimento que eu tenho.

Não sei se deu pra entender, mas o código (beeem incompleto) ficou assim:

<meta charset="UTF-8">

<h1> Quais anos você irá votar? </h1>

Insira aqui o ano atual:
<input type="text" class="AnoAtual">
<br> <br>
Insira aqui até que ano deseja visualizar:
<input type="text" class="AnoFuturo">
<br><br>
<button> Enviar </button>

<script>


    function verifica(anoAtual, AnoFuturo) {

        if(anoAtual > AnoFuturo) {

            mostra("Você não veio do futuro.")

        } else {

            calcula();

        }
        }


        function calcula() {


            var contador = 1994;

            while(contador <= AnoFuturo) {



                alert("Você votará em " + ???  )
            }

        }

var inputUm = document.querySelector("input.AnoAtual");
var inputDois = document.querySelector("input.AnoFuturo");
var button = document.querySelector("button");
button.onclick = 

</script>
1 resposta

Existe um operador "%" conhecido como resto da divisão ou módulo, que pode te ajudar com isso, por exemplo 2019%4 teria resultado igual a 1, sendo assim, você pode diminuir de 4 o resto da divisão do ano por 4 (4-(anoAtual%4)) pra saber quanto você tem que somar ao ano pra que ele vire um múltiplo de 4. Sobre a sua proposta, lembre-se que eleições são de 2 em 2 anos, pra cargos distintos. Espero ter ajudado.