Imersão Dev - Aula 2 | Expandindo os Conhecimentos
Olá a todos. Como sabem, essa semana, está rolando a Imersão Dev, e tivemos a segunda aula, então, iremos expandir os conhecimentos.
Alguns desafios serão mostrados nesse artigo, pois eles são necessários para os conteúdos do post.
Código
O Código entregue no final da aula foi:
var numeroSecreto = parseInt(Math.random() * 1001);
while (chute != numeroSecreto) {
var chute = prompt("Digite um número entre 0 e 1000");
if (numeroSecreto == chute) {
alert("Acertou!");
} else if (chute > numeroSecreto) {
alert("Chute é Maior do que o Número Secreto!");
} else if (chute < numeroSecreto) {
alert("Chute é Menor do que o Número Secreto!");
}
}
Perceba que eu mudei as mensagens do alerta. Você pode altera-lás como quiser.
Conteúdos
- Desafio: Concatenação de Strings
- Desafio: Contador de Chutes
- Limitando a quantidade de chutes
Desafio: Concatenação de String
Desafio feito pelo instrutor Paulo Silveira, aos 39:05 do Vídeo.
Precisamos mostrar no alert o valor que o usuário chutou.
Ideia
Esse desafio não tem mistério. Precisamos apenas fazer com que a mensagem fique algo assim: 500 é Maior do que o Número Secreto!
Implementação
Concatenamos o valor do chute com a mensagem dentro do alert.
} else if (chute > numeroSecreto) {
alert(chute + " é Maior do que o Número Secreto!");
} else if (chute < numeroSecreto) {
alert(chute + " é Menor do que o Número Secreto!");
}
Desafio: Contador de Chutes
Desafio feito pelo instrutor Paulo Silveira, aos 39:45 do Vídeo
Precisamos adicionar um contador de chutes, para o usuário saber quantos chutes já foram dados.
Ideia
Vamos adicionar um contador, que a cada vez que o usuário chuta algum número, esse contador acrescenta um.
Implementação
Fazendo um contador
A maneira mais primitiva de se fazer um contador que adiciona um a cada execução é atribuir o valor de variável a ela mesma mais um. Vamos ver na prática:
var chutes = 0;
chute = chutes + 1;
Para adicionar um aos chutes, podemos fazer também: chutes += 1
chutes++
. As três implementações estão certas, e fazem a mesma função.
var numeroSecreto = parseInt(Math.random() * 1001);
var chutes = 0;
while (chute != numeroSecreto) {
chutes++;
var chute = prompt("Digite um número entre 0 e 1000");
if (numeroSecreto == chute) {
alert("Acertou!");
} else if (chute > numeroSecreto) {
alert(chute + " é Maior do que o Número Secreto!");
} else if (chute < numeroSecreto) {
alert(chute + " é Menor do que o Número Secreto!");
}
alert("Você fez um total de " + chutes + " chutes!");
}
Limitando a quantidade de chutes
Podemos também limitar a quantidade de chutes para o jogador.
Ideia
Vamos colocar um limite de 15 chutes por jogo. Ao começo do jogo, avisaremos quantos chutes o jogador terá, e a cada chute que ele fizer, irá mostrar quantos chutes ainda restam. Caso o jogador acertar o número, irá mostrar o total de chutes que o jogador fez. Caso o jogador continuar errado e o limite de chutes for excedido, o jogo dará Game Over.
Implementação
Implementando o Limite
Em nosso exemplo, colocaremos um limite de chutes (15), além dos chutes restantes.
Para fazer a lógica do limite, precisamos que quando o número de chutes for Maior ou Igual ao limite, paramos o jogo. Para implementarmos, vamos aprender um novo operador lógico: >=
. Ele é igual ao operador de >
, mas com a diferença que se os dos valores são iguais, o código dentro do if
também é executado.
Para pararmos o jogo, na verdade, precisamos "freiar" o while
. Para isso, existe uma palavra: o break
, que quando é executado pelo JavaScript, o código dentro do while
não será executado mais.
var numeroSecreto = parseInt(Math.random() * 1001);
var numeroSecreto = 500;
var chutesLimite = 15;
var chutesRestante = chutesLimite;
var chutes = 0;
alert("E O Jogo Começa! Você tem um limite de " + chutesLimite + " chutes!");
while (chute != numeroSecreto) {
if (chutes >= chutesLimite) {
alert("Você atingiu o limite de chutes. O Jogo está finalizado.");
break;
}
var chute = prompt("Digite um número entre 0 e 1000");
chutes++;
chutesRestante--;
if (numeroSecreto == chute) {
alert("Acertou! Você fez um total de " + chutes + " chutes!");
} else if (chute > numeroSecreto) {
alert(chute + " é Maior do que o Número Secreto!");
alert("Ainda lhe restam " + chutesRestante + " chutes!");
} else if (chute < numeroSecreto) {
alert(chute + " é Menor do que o Número Secreto!");
alert("Ainda lhe restam " + chutesRestante + " chutes!");
}
}
Perceba que para a implementação do
chutesRestante
, usamos um--
. Isso subtrai um do valor da variável
Note que agora, em cada if, é dado um alerta. Caso o jogador errou, a mensagem de Chutes Restantes é a mesma. Mas se caso o jogador acertou, mostra um alerta de quantos chutes o jogador fez na rodada.
Sobre Mim 🐘
Me Chamo Erick. Desenvolvedor PHP (Symfony).