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

Como limpar o conteúdo após executar um laço com o While

Boa tarde, pessoal, estou com um pequeno problema... Estava tentando incrementar o programada "Ano_copa" para perguntar ao usuário no final se ele quer continuar testando em que anos houveram copas e só parar quando o usuário disser não.

segue o código:

<meta charset="utf-8" />

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

  function mostra(frase) {
    document.write(frase);
    pulaLinha();
  }

  var anoCopa = 1930;

  var resposta = true

  while (resposta == true) {

    var ultimaCopa = parseInt(prompt("Ultima Copa?"));

    while (anoCopa <= ultimaCopa) {
        console.log(anoCopa);
        anoCopa = anoCopa + 4
    }
    var continuar = prompt("Quer continuar? [S/N]");

    if (continuar == "S") {

      resposta = true;
    } else {
      resposta = false;
    }
  }

</script>

o código funciona, o único problema é que gostaria que o console limpasse a tela a cada nova execução. Alguém sabe como posso fazer?

3 respostas
solução!

Boa tarde Gustavo,

Talvez inserindo um console.clear() dentro do seu laço condicional if resolva o seu problema.

No caso o laço condicional ficaria da seguinte forma:

if (continuar == "S") {

      resposta = true;
      console.clear();

 } else {

      resposta = false;

    }

Desta forma, se o usuário pressionar 'S' o valor da variável resposta será true e o método console.clear() irá limpar a tela antes de iniciar o laço condicional while novamente.

Espero ter ajudado. Abraço !!!

Oi Gustavo fiz algumas declarações em forma de comentário em cima do seu código dá uma olhada:

<meta charset="utf-8" />

<script>

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

  function mostra(frase) { //onde é usada essa função ???
    document.write(frase);  // a função pode ser omitida
    pulaLinha();
  }

  var primeiraCopa = 1930;  //nome que expressa o sentido e o significado da variável.

  var resposta =true;

  while (resposta) { //true é padrão
    var ultimaCopa = parseInt(prompt("Até que ano deseja verificar os anos de Copa?")); //Assim fica mais fácil de identificar a lógica sobre o que seu programa faz.

    while (primeiraCopa <= ultimaCopa) {
        console.log(primeiraCopa);
        primeiraCopa = primeiraCopa + 4
    }
    var continuar = prompt("Quer continuar? [S/N]");
    if (continuar == "S") {
      resposta = true;
      console.clear(); // Limpo o console dessa forma com a função clear
      primeiraCopa = 1930; //Como tenho um while dentro de outro preciso redefinir essa variável para que ela volte ao ano inicial novamente.
    } else {
      resposta = false;
    }
  }

</script>

Caso persista alguma dúvida a respeito desse exercício ou curso pode perguntar aqui mesmo ou se você não tiver mais nenhuma dúvida a respeito você pode marcar uma resposta como solução, finalizando assim esse tópico.Espero ter ajudado. Bons estudos.

Maison, as duas funções iniciais estão ai porque eu estava alterando um código das aulas e esqueci de tirar e obrigado pelos comentários são de grande ajuda.