Ir para conteúdo

ALEX Aragom

Members
  • Total de itens

    1
  • Registro em

  • Última visita

Reputação

0 Comum

Sobre ALEX Aragom

  1. ALEX Aragom

    Porque o valor 100 não ordena com o .sort?

    <!DOCTYPE html> <html lang="pt-br"> <head> <meta charset="utf-8"> <meta name="viewport" content="width-device-width, initial-scale-1.0"> <title>Modelo de exercicio</title> <link rel="stylesheet" href="estilo.css"> <script src="script.js"></script> </body> </head> <body> <header> <h1>Analisador de números</h1> </header> <section> <div> <!--Area que digito os numeros--> <form> <p>Número(Entre 1 e 100):<input type="number" id="num"/> <input type="button" value="Adicionar" onclick="adicionar()"> </p> </form> <select id="add"> <!--Area que aparece o numero adicionado--> </select> </div> <div> <p><input type="button" value="Finalizar" onclick="analise()"></p> <div id="finalizar"> <!--Area de analise de numeros--> </div> </div> </section> <footer> <p>&copy; CursoemVídeo</p> </footer> </html> var lista = [] function adicionar(){ //Function para adicionar o numero digitado pelo usuario no meu select do HTML var n = window.document.getElementById('num').value if(n.length == 0){ window.alert('Digite um número') } else{ if(n < 1 || n > 100){ window.alert('Nada feito, digite um número entre 1 e 100!') } else{ var procuraV = lista.indexOf(n) if(procuraV == -1){ finalizar.innerHTML = '' lista.push(n) var item = document.createElement('option') item.text = `O valor ${n} foi adicionado` add.appendChild(item) //add é o id do select no meu HTML } else{ window.alert('Erro! Valor já adicionado') } } } } //adicionar o lista.sort() e referenciar a posição lista[0] e lista.length[] - 1 na hora de mostrar o menor e o maior function analise(){ if(lista.length == 0){ window.alert('Adicione números antes') } else{ var ind = 1 var soma = lista[0] while(ind < lista.length){ soma = Number(soma) + Number(lista[ind]) ind ++ } lista.sort() var qtdEl = lista.length var media = soma/lista.length finalizar.innerHTML = `Ao todo, temos ${qtdEl} elementos<br>` finalizar.innerHTML += `Somando todos os valores temos ${soma} <br>` finalizar.innerHTML += `A média dos valores é ${media} <br>` finalizar.innerHTML += `O menor numero adicionado foi ${lista[0]} <br>` finalizar.innerHTML += `O maior numero adicionado foi ${(lista[lista.length - 1]}` } } Só queria entender por que quando minha var n recebe o valor 100 e posteriormente eu armazeno em minha var lista = [ ] dentro da function adicionar() através do lista.push() este valor não ordena assim como os outros, comprometenão assim, o perfeito funcionamento da minha function analise() no momento em que informo o maior número dentro do meu vetor lista sendo este o 100 -> finalizar.innerHTML += `O maior numero adicionado foi ${(lista[lista.length - 1]}`. Galera, analisem aí este código e me dêem pfv a solução. Vlw
×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.