5
respostas

Convertendo texto em números

Olá, pessoal.

Estou na aula de Convertendo texto em números do Curso de Logica de programação javascript e HTML , estou seguindo os passo a passos do que o instrutor fala, mas quando vou executar ele apresenta duas caixas de empates, eu não entendi o porquê, olhei e reolhei o codigo comparando como do professor e tambem me atentei as estruturas básicas e não consegui identificar a minha falha, fora que mesmo quando eu digito os valores le fica em branco no final e não apresenta o resultado. Segue abaixo o código que fiz acompanhando o professor. Estou usando o Sublime text.

5 respostas

![](Insira aqui a descrição dessa imagem para ajudar na acessibilidade Insira aqui a descrição dessa imagem para ajudar na acessibilidade ) Imagem contendo código abaixo no programa Sublime Text:

Boa tarde, Eliakim!

O problema está em não usar as funções de conversão de texto para número (parseInt() para números inteiros e parseFloat() para números decimais).

Como a quantidade de vitórias e empates são números inteiros, você deve usar:

var vitorias = parseInt(prompt("Entre com o número de vitórias."));
var empates = parseInt(prompt("Entre com o número de empates."));

Desse modo, tudo o que você digitar no navegador ele tentará converter para inteiro e, então, atribuir as variáveis vitorias e empates.

Caso você digite 1.6, ele atribuirá a variável vitorias o valor de 1. Então, em trabalhos futuros, use a função parseFloat() quando precisar de um número decimal (exemplo: altura, peso).

Mais uma observação, caso você digita um texto, ele não conseguirá converter para inteiro e as variáveis receberam NaN. Portanto, recomendo verificar se o usuário realmente está digitando um número válido.

Se sua dúvida for respondida com esse comentário, peço que marque minha resposta como "✓ Marcar Solução".

Qualquer dúvida estou à disposição.

Abraços e bons estudos!

Olá, Rosicley, obrigado por me responder. Na verdade mesmo sem o parseint era para me mostrar algo, um numero errado que fosse, e isso não estava acontecendo(Eu ainda não tinha chegado na parte do parseint). Mas já identifiquei o que estava acontecendo, eu estava com a versão do arquivo errada aberta, eu tinha dois arquivos e estava usando o arquivo mais defasado sem as atualizações dos códigos. E obrigado pelas explicações isso vai me ajudar.

Mas uma vez obrigado!!!

Por nada, Eliakim!

Acontece sempre rsrs

Uma outra coisa é que do jeito que seu código está basta colocar :

var pontos = vitorias * 3 + empates * 1;

Que será feita a conversão implícita de texto para número em ambas as variáveis. E o pontos estarão certos \o/

Abraços!

Muito bom, obrigado pelas dicas! \o/