Ir para conteúdo

POWERED BY:

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

Marcio Lorran

[Resolvido] Calcular média de palavras faladas

Recommended Posts

Bom pessoal to com um tremendo nó na cabeça, qualquer cálculo que envolva hora, minuto e segundo eu sempre fico louco! Mas vamos lá!

Tenho o seguinte problema, preciso de um script que quando a pessoa digitar o número de palavras contidas em um texto, me retorne a média em horas minutos e segundos do texto quando a pessoa ler! Levando em consideração uma média de 3 palavras por segundo!

 

Segue o código que fiz até agora

 

Formulário

<form name="calc">
<div>Palavras</div>
<input name="palavra" size="12" type="Text" value="0" />
<input name="" onclick="calcula()" type="Button" value="Calcular" /><br />
<div>Horas</div>
<input name="hora" size="12" type="Text" value="0" />

<div>Minutos</div>
<input name="minuto" size="12" type="Text" value="0" />

<div>Segundos</div>
<input name="segundo" size="12" type="Text" value="0" />

</form>

 

Javascript

 

<script>
function calcula(){
var palavra = document.calc.palavra.value;
var result = eval(palavra / 3);
var hora = eval(result / 3600);
document.calc.hora.value = hora;
document.calc.minuto.value = eval(result - (3600 * hora)) / 60;
document.calc.segundo.value = eval(result % 60);
}
</script>

 

Quando mando dar o resultado, o script me retorna apenas o valor em hora e com muitas casas depois da vírgula ainda, já tentei de tudo e nada retorna os outros dois valores (minutos e segundos)

 

Agradeço desde já pela ajuda!

Compartilhar este post


Link para o post
Compartilhar em outros sites

Você quer o quê exatamente? Que o script lhe retorne o número de horas, minutos e segundos que vão levar para ler (Por exemplo: 6 horas, 15 minutos e 22 segundos) ou número de horas em segundos e minutos (Ex: 6 horas, 360 minutos e 21600 segundos)?

Compartilhar este post


Link para o post
Compartilhar em outros sites

Você quer o quê exatamente? Que o script lhe retorne o número de horas, minutos e segundos que vão levar para ler (Por exemplo: 6 horas, 15 minutos e 22 segundos) ou número de horas em segundos e minutos (Ex: 6 horas, 360 minutos e 21600 segundos)?

 

Sei que não fui muito claro, mas MUITO obrigado mesmo pela resposta!

 

Vamos lá!

 

O que preciso é calcular o tempo que uma pessoa demora para ler um texto, em voz alta mesmo, levando em consideração uma média de 3 palavras por segundo.

Preciso do tempo em formato real de horas minutos e segundos (Por exemplo: 6 horas, 15 minutos e 22 segundos) A pessoa precisa apenas inserir quantas palavras existem no texto e o script realizar o calculo.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Você deve usar a função parseInt pra pegar somente o inteiro do número.

parseInt( 1.23222 ) //A função vai retornar apenas '1'

Não precisa usar a função eval. :thumbsup:

 

EDIT:

E no caso dos minutos, você tem que fazer assim:

hora.toString().substr( 2, 2 )

Compartilhar este post


Link para o post
Compartilhar em outros sites

Cosegui solucionar, segue o código:

 

<script>
function calcula(){
var palavra = document.calc.palavra.value;
var result = eval(palavra / 3);
var hora = eval(result / 3600);
var minuto = (result / 60)
document.calc.hora.value = parseInt(hora);
document.calc.minuto.value = parseInt(minuto % 60);
document.calc.segundo.value = parseInt(result % 60);
}
</script>

Compartilhar este post


Link para o post
Compartilhar em outros sites

×

Informação importante

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