Vamos aprender nossa primeira estrutura de repetição? Hoje vamos aprender sobre a estrutura de repetição While. Prontos? Vamos lá.
[greenalert]O QUE SÃO ESTRUTURAS DE REPETIÇÃO?[/greenalert]
Lembra de como o IF e o SWITCH funcionam? Se você tem uma expressão que é atendida (verdadeira), o comando dentro deles é executado. Nas estruturas de repetição, enquanto a expressão estiver sendo atendida, o comando dentro irá se repetir quantas vezes você desejar.
[greenalert]ESTRUTURA DE REPETIÇÃO WHILE[/greenalert]
O while funciona da seguinte forma: Ele irá verificar a expressão e, se ela for atendida, executará o código desejado. Após isso, o código após o while será executado.
Exemplo:
Como dito antes, se a expressão for correspondida, no caso do exemplo, se dinheiroTotal for menor que 310, execute o código. Eu usei o operador ++ para que minha repetição tenha fim. Se você criar uma repetição e não fizer um código para informar quantas vezes ela será executada, ela ficará rodando para sempre. É muito importante pensar em quantas vezes você irá querer que a repetição aconteça para criar uma forma de finalizá-la.
Como usamos o comando console.log, que exibe uma mensagem só no console, vou mostrar o que foi exibido para você entender melhor como funciona:
[greenalert]O QUE SÃO ESTRUTURAS DE REPETIÇÃO?[/greenalert]
Lembra de como o IF e o SWITCH funcionam? Se você tem uma expressão que é atendida (verdadeira), o comando dentro deles é executado. Nas estruturas de repetição, enquanto a expressão estiver sendo atendida, o comando dentro irá se repetir quantas vezes você desejar.
[greenalert]ESTRUTURA DE REPETIÇÃO WHILE[/greenalert]
O while funciona da seguinte forma: Ele irá verificar a expressão e, se ela for atendida, executará o código desejado. Após isso, o código após o while será executado.
Exemplo:
Código:
var dinheiroTotal = 300; //Cria a variável e dá valor 300
while (dinheiroTotal < 310) { //Enquanto dinheiroTotal for menos que 310
console.log("Você ainda não tem dinheiro o suficiente! Você ainda precisa de " + (310-dinheiroTotal) + " moedas."); //Execute esse código
dinheiroTotal++; //Adicione +1 em dinheiroTotal toda vez que executar
}
console.log("Parabéns, agora você tem " + dinheiroTotal + " moedas e já pode comprar o item!"); //Escreve após o while acabar
Como dito antes, se a expressão for correspondida, no caso do exemplo, se dinheiroTotal for menor que 310, execute o código. Eu usei o operador ++ para que minha repetição tenha fim. Se você criar uma repetição e não fizer um código para informar quantas vezes ela será executada, ela ficará rodando para sempre. É muito importante pensar em quantas vezes você irá querer que a repetição aconteça para criar uma forma de finalizá-la.
Como usamos o comando console.log, que exibe uma mensagem só no console, vou mostrar o que foi exibido para você entender melhor como funciona:
Você sempre deve ter em mente a quantidade de repetições desejadas antes de fazer o while, para criar a expressão de forma correta. Outra coisa importante é que o código dentro do while só será executado depois que a expressão for verificada. Para que um código seja executado antes e depois verificar a expressão, nós usamos o Do While.
[greenalert]O QUE É O DO WHILE?[/greenalert]
Ele é basicamente a mesma coisa que o while, mas ele primeiro executado algo para depois verificar se deve continuar executando esse código.
Exemplo:
Código:
var calorias = 200; //Cria a variável e dá valor 200
do { //Faça os comandos abaixo
calorias += 200; //Calorias ganha +200 a cada repetição
console.log("Você ainda pode comer mais por hoje! Ainda faltam " + (1200-calorias) + " calorias."); //Escreve essa frase no log
}
while (calorias < 1000); //Enquanto calorias for menor que 1000
console.log("Você já chegou no máximo de calorias que sua dieta permite."); //Escreve após o while acabar
Vamos ver como ficou dentro do console:
Basicamente eles fazem a mesma coisa, mas o primeiro só executa algo após verificar a expressão e o segundo executa antes de verificar.
[greenalert]ENTENDO UM POUCO MAIS[/greenalert]
No primeiro código, eu queria que o valor máximo de moedas ao final fosse 310. Eu não coloquei na expressão que o valor fosse menor que 311 por contra o incremento usado. Quando minha variável tivesse valor 309, ela iria escrever que "falta 1 moeda" e depois adicionaria 1. Se eu tivesse posto menor que 311, ele iria me escrever que "falta 0 moedas" e iria adicionar 1 novamente, pois o valor 310 ainda torna a expressão verdadeira e eu acabaria com 311 moedas. De certa forma, o código cumpriria seu papel, pois eu teria o valor necessário para a compra, mas no caso, eu queria exatamente 310.
A mesma coisa aconteceu com o do while, que eu queria 1200. Como o incremento era de 200 a cada repetição, eu tive de deixar a expressão menor que 1000, para que no final ela não acabasse com 1400, no lugar dos 1200 desejados.
Entender sobre isso é importante, principalmente quando se vai trabalhar exibindo informações no processo. Então, verifique e teste sempre os whiles/do whiles, para não acabar tendo um valor mais alto do que o necessário ou exibindo informações que você não queria.
E é isso pessoal. Espero que esse tutorial tenha ficado simples de entender. Como sempre, qualquer dúvida ou erro nas informações presentes no guia podem se devem ser inseridas nos comentários. Até +!
[redalert]ÍNDICE DO GUIA[/redalert]
- O que é a estrutura de repetição While
- O que é a estrutura de repetição Do/While
- Entendendo mais a fundo o funcionamento das expressões e incrementos