I have been trying to practice JavaScript after awhile withou using it. I am doing a simple voting exercise where users use numbers 1,2 or 3 in a window.prompt or a different number to finish the voting. Problem is, I have used a "do while" to create the loop and the browser doesn't seem to read it. It skips directly to the last "alert". What should I do? Code follows:
let end = false;
let votosFulano = 0;
let votosCicrano = 0;
let votosBeltrano = 0;
let mostVoted = "no votes yet";
do {
let voto = window.prompt("Vote 1 for Fulano, 2 for Cicrano and 3 for Beltrano ou outro número para encerrar a votação");
if (voto == 1) {
votosFulano += 1;
end = false;
}
if (voto == 2) {
votosCicrano += 1;
end = false;
}
if (voto == 3) {
votosBeltrano += 1;
end = false;
}
if (voto !== 1 && voto !== 2 && voto !== 3) {
if (votosFulano > votosBeltrano && votosFulano > votosCicrano) {
mostVoted = "Fulano";
} else if (votosBeltrano > votosFulano && votosBeltrano > votosCicrano) {
mostVoted = "Beltrano";
} else if (votosCicrano > votosFulano && votosCicrano > votosBeltrano) {
mostVoted = "Cicrano";
}
end = true;
}
} while (end == false);
if (votosFulano == 0 && votosCicrano == 0 && votosBeltrano == 0) {
alert("No votes");
} else {
alert("Winner is " + mostVoted);
}