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

Porque meu código não funciona? document.getElementById

Creio que o erro esteja aqui:

var inputTamanho = document.getElementById('tamanhoVetor') var tamanho = Number(inputTamanho.value) << quando jogo no console ele me retorna o input e não o valor da variável que devia ser atribuída com o .value.

O resto do código eu to desenvolvendo ainda, então pode ter mais erros pra baixo, mas como essa é a parte inicial deveria tá funcionando pelo menos o input.value pra eu conseguir fazer o resto

Alguém consegue me dar uam mão nisso?
<meta charset="UTF-8">
<html>
    <body>
        <div>
            <p>Defina o tamanho do vetor para tentar acertar algum de seus elementos randômicos</p>
            <input type="text" id="tamanhoVetor" placeholder="Insira o tamanho do vetor">
            <button onclick="verificaRepetido()">Definir tamanho do Vetor</button>
        </div>

    <p>Insira o número para tentar acertar algum elemento</p>

    <input type="text" id="chute" placeholder="Tente acertar algum num sorteado no vetor">
    <button onclick="verificaRepetido()">Verificar chute</button>

    </body>

</html>



<script>

    function sorteiaNum(){
        return Math.round(Math.random() * 10)
    }

    var inputTamanho = document.getElementById('tamanhoVetor')
    var tamanho = Number(inputTamanho.value)


    var vetor = []
    function verificaRepetido(tamanho){

        var numeroSorteado = sorteiaNum()
        var existeNoVetor = false
        var num = 1

        for(var posicao = 0; posicao <= vetor.length; posicao++){
            if(vetor[posicao] == numeroSorteado){
                existeNoVetor = true
                break
            }
        }

        if(existeNoVetor == false){
            for(var c = 0; c <= tamanho; c++){
                vetor.push(numeroSorteado)
            }

        }
        num++
        return vetor // tem que retornar o vetor
    }

    /*
    function verificaSegredo(){
        var achou = false

        for(var i = 0; i < vetor.length; i++){
            if(input.value[i] == numeroSorteado){
                achou = true
                alert("Você acertou!")
                break
            }

        }
        if(achou == false){
            alert('Você errou')
        }

    }*/


</script>

Já tentei de tudo, até:

 <input type="number" id="tamanhoVetor" placeholder="Insira o tamanho do vetor">
 <button onclick="entrada()">Definir tamanho do Vetor</button>
        script:
function entrada(){
    var inputTamanho = document.getElementById('tamanhoVetor').value
    return inputTamanho.value
}
var tamanho = entrada()
2 respostas

não consegui deletar essa mensagem

solução!

Olá Igor! primeiramente o corpo do seu documento não foi definido como deveria, algumas tags estão fora de ordem, o código javascript esta fora do body. Preste mais atenção nesses detalhes tente comparar seu código com outros, veja o que esta diferente, olhe na documentação da mozilla ou w3c etc.

<!Doctype html>
<html lang="pt-br">
    <head><!--Cabeçalho -->
        <meta charset="UTF-8">    
        <title> Titulo da página </tilte>
    </head>
 <body>
        <div>
            <p>Defina o tamanho do vetor para tentar acertar algum de seus elementos randômicos</p>
            <input type="text" id="tamanhoVetor" placeholder="Insira o tamanho do vetor">
            <button onclick="verificaRepetido()">Definir tamanho do Vetor</button>
        </div>

    <p>Insira o número para tentar acertar algum elemento</p>

    <input type="text" id="chute" placeholder="Tente acertar algum num sorteado no vetor">
    <button onclick="verificaRepetido()">Verificar chute</button>
<script>

    function sorteiaNum(){
        return Math.round(Math.random() * 10)
    }

    var inputTamanho = document.getElementById('tamanhoVetor')
    var tamanho = Number(inputTamanho.value)


    var vetor = []
    function verificaRepetido(tamanho){

        var numeroSorteado = sorteiaNum()
        var existeNoVetor = false
        var num = 1

        for(var posicao = 0; posicao <= vetor.length; posicao++){
            if(vetor[posicao] == numeroSorteado){
                existeNoVetor = true
                break
            }
        }

        if(existeNoVetor == false){
            for(var c = 0; c <= tamanho; c++){
                vetor.push(numeroSorteado)
            }

        }
        num++
        return vetor // tem que retornar o vetor
    }

    /*
    function verificaSegredo(){
        var achou = false

        for(var i = 0; i < vetor.length; i++){
            if(input.value[i] == numeroSorteado){
                achou = true
                alert("Você acertou!")
                break
            }

        }
        if(achou == false){
            alert('Você errou')
        }

    }*/

    </script>
    </body>
</html>