Eu estou lendo um livro sobre Lógica de Programação com JavaScript e nele tem um exercício que me pede para fazer um jogo de loteria.
Eu consegui fazer oque estava no livro mas dai eu fui incrementando algumas coisa no código e depois disso eu parei para olhar e achei ele meio grande. Então eu gostaria de saber de vocês se ele está desnecessariamente grande ou se ele poderia ter sido feito de uma forma melhor e menor. Se possível até me apontar algumas falhas/hábitos que eu possa ter feito no código abaixo.
Agradeço desde já.
PS: Eu fiz ele no notepad++ e estou executando no chrome com um arquivo .html
<script>function pulaLinha(z){var x;for(x =; x < z; x++){
document.write("<br>");}}function mostrarTexto (texto, y){
document.write ("<big>"+ texto +"</big>");
pulaLinha(y);}//----------------------------------------------------------------------------------------------------------------------------------------------//function loteria(){var n, p;//Inicializaçãofunction porque(){
p =(parseInt(prompt("Devem ser sorteados números que estão entre 1 e ?:")))-1;if(isNaN(p)){
alert("INSIRA APENAS NÚNEROS!");
porque();}elseif(p <2){
alert("VOCÊ NÃO PODE INSERIR UM VALOR MENOR DO QUE 2.");
porque();}}function nQ(){
n = parseInt(prompt("Quantos números devem sem sorteados?"));if(isNaN(n)){
alert("INSIRA APENAS NÚNEROS!");
nQ();}elseif(n <1|| n > p){
alert("VOCÊ NÃO PODE INSERIR UM VALOR MENOR DO QUE 1 OU MAIOR DO QUE "+(p +1)+".");
nQ();}}
porque();
nQ();//SORTEIOvar x, y, check, acertos =, sorteados =[], escolhas =[];for(var i =; i < n;){
x =Math.round((Math.random()*p)+1);
check =;for(var a =; a < n; a++){if(sorteados[a]== x){
check =1;}}if(check ==){
sorteados.push(x);
i++;}}//-------------------------------------------------//ESCOLHASfor(b =; b < n;){
y = parseInt(prompt("Escolha um número entre 1 e "+(p +1)+"\n--------------------------\nEscolha o "+(b +1)+"º número"));
check =;for(var c =; c < n; c++){if(escolhas[c]== y){
alert("Este número já foi esclhido. Tente novamente!");
check =1;}}if(check ==&&!isNaN(y)&& y <=(p +1)&& y >){
escolhas.push(y);
b++;}elseif(isNaN(y)){
alert("APENAS NÚMEROS SÃO VÁLIDOS!");}elseif(y >(p +1)){
alert("ESTE NÚMERO É MAIOR QUE O LIMITE DE "+(p +1)+". TENTE NOVAMENTE!");}elseif(y <=){
alert("ESTE NÚMERO É MAIOR QUE O MÍNIMO DE 1. TENTE NOVAMENTE!");}}//-------------------------------------------------//VERIFICAÇÃOfor(var d =; d < n; d++){for(var e =; e < n; e++){if(escolhas[d]== sorteados [e]){
acertos++;}}}
alert("Você acertou "+ acertos +" de "+ n);
mostrarTexto("Foram sorteados: ----------- "+"Você escolheu:",1);for(var r =; r < n; r++){
mostrarTexto(sorteados[r]+" ---------------------------------------------- "+ escolhas[r],1);}
mostrarTexto("Pressione F5 para abrir o menu de opções novamente!",2);}
loteria();</script>
Pergunta
Mr Glokta
Eu estou lendo um livro sobre Lógica de Programação com JavaScript e nele tem um exercício que me pede para fazer um jogo de loteria.
Eu consegui fazer oque estava no livro mas dai eu fui incrementando algumas coisa no código e depois disso eu parei para olhar e achei ele meio grande. Então eu gostaria de saber de vocês se ele está desnecessariamente grande ou se ele poderia ter sido feito de uma forma melhor e menor. Se possível até me apontar algumas falhas/hábitos que eu possa ter feito no código abaixo.
Agradeço desde já.
PS: Eu fiz ele no notepad++ e estou executando no chrome com um arquivo .html
Link para o comentário
Compartilhar em outros sites
3 respostass a esta questão
Posts Recomendados
Participe da discussão
Você pode postar agora e se registrar depois. Se você já tem uma conta, acesse agora para postar com sua conta.