quinta-feira, 14 de janeiro de 2016
Treinando com Ábaco Suan Pan
Your browser does not support HTML5 video.
Novo teste
Reiniciar teste
Parar teste
Mostrar resultado
Código fonte:
<video Style="display:none;" id="myVideo" controls> <source src="https://sites.google.com/site/codigorapidoprado/teste/numeros.mp3" type="video/mp4"> Your browser does not support HTML5 video. </video> <button onclick="start();" type="button">Novo teste</button> <button onclick="reiniciar();" type="button">Reiniciar teste</button> <button onclick="stop();" type="button">Parar teste</button> <button onclick="showResult();" type="button">Mostrar resultado</button> <div id="folha" style="width:auto; height:auto;"> </div><div id="resultado" style="width:auto; height:auto;"> </div> <script> var EE = [0.6, 0.78] function getUnidades(str) { var resp = new Array(); if(str=="1") { return [1.2, 1.7] } else if(str=="2") { return [1.9, 2.4] } else if(str=="3") { return [2.7, 3.3] } else if(str=="4") { return [3.4, 4.0] } else if(str=="5") { return [4.0, 4.7] } else if(str=="6") { return [4.7, 5.5] } else if(str=="7") { return [5.7, 6.3] } else if(str=="8") { return [6.4, 7.1] } else if(str=="9") { return [7.2, 7.9] } else return []; } function getDezenas(str) { var resp = new Array(); if(str=="10") { return [8.0, 8.6] } else { if(str=="11") { return [8.6, 9.4] } else if(str=="12") { return [9.58, 10.4] } else if(str=="13") { return [10.4, 11.2] } else if(str=="14") { return [11.2, 12.2] } else if(str=="15") { return [12.2, 13.0] } else if(str=="16") { return [13.0, 14.0] } else if(str=="17") { return [14.0, 15] } else if(str=="18") { return [15, 15.8] } else if(str=="19") { return [15.8, 16.8] } else if(str[0]=="0") { if(str[1]!="0") { rec = getUnidades(""+str[1]) for(var i=0; i<rec.length; i++) resp.push(rec[i]) } } else if(str[0]=="2") { resp.push(17, 17.6) if(str[1]!="0") { resp.push(EE[0]) resp.push(EE[1]) rec = getUnidades(""+str[1]) for(var i=0; i<rec.length; i++) resp.push(rec[i]) } } else if(str[0]=="3") { resp.push(17.6, 18.5) if(str[1]!="0") { resp.push(EE[0]) resp.push(EE[1]) rec = getUnidades(""+str[1]) for(var i=0; i<rec.length; i++) resp.push(rec[i]) } } else if(str[0]=="4") { resp.push(18.5, 19.3) if(str[1]!="0") { resp.push(EE[0]) resp.push(EE[1]) rec = getUnidades(""+str[1]) for(var i=0; i<rec.length; i++) resp.push(rec[i]) } } else if(str[0]=="5") { resp.push(19.3, 20.25) if(str[1]!="0") { resp.push(EE[0]) resp.push(EE[1]) rec = getUnidades(""+str[1]) for(var i=0; i<rec.length; i++) resp.push(rec[i]) } } else if(str[0]=="6") { resp.push(20.3, 21.3) if(str[1]!="0") { resp.push(EE[0]) resp.push(EE[1]) rec = getUnidades(""+str[1]) for(var i=0; i<rec.length; i++) resp.push(rec[i]) } } else if(str[0]=="7") { resp.push(21.3, 22.5) if(str[1]!="0") { resp.push(EE[0]) resp.push(EE[1]) rec = getUnidades(""+str[1]) for(var i=0; i<rec.length; i++) resp.push(rec[i]) } } else if(str[0]=="8") { resp.push(22.5, 23.4) if(str[1]!="0") { resp.push(EE[0]) resp.push(EE[1]) rec = getUnidades(""+str[1]) for(var i=0; i<rec.length; i++) resp.push(rec[i]) } } else if(str[0]=="9") { resp.push(23.4, 24.5) if(str[1]!="0") { resp.push(EE[0]) resp.push(EE[1]) rec = getUnidades(""+str[1]) for(var i=0; i<rec.length; i++) resp.push(rec[i]) } } return resp; } } function getCentenas(str) { var resp = new Array(); if(str=="100") { return [24.5, 25.4] } else { if(str[0]=="0") { if(str[1]!="0" || str[2]!="0") { var rec = getDezenas(str[1]+str[2]); for(var i=0; i<rec.length; i++) resp.push(rec[i]) } return resp; } if(str[0]=="1") { resp.push(41.5, 42.5) if(str[1]!="0" || str[2]!="0") { resp.push(EE[0]) resp.push(EE[1]) var rec = getDezenas(str[1]+str[2]); for(var i=0; i<rec.length; i++) resp.push(rec[i]) } return resp; } if(str[0]=="2") { resp.push(25.4, 26.6) if(str[1]!="0" || str[2]!="0") { resp.push(EE[0]) resp.push(EE[1]) var rec = getDezenas(str[1]+str[2]); for(var i=0; i<rec.length; i++) resp.push(rec[i]) } return resp; } if(str[0]=="3") { resp.push(26.6, 27.7) if(str[1]!="0" || str[2]!="0") { resp.push(EE[0]) resp.push(EE[1]) var rec = getDezenas(str[1]+str[2]); for(var i=0; i<rec.length; i++) resp.push(rec[i]) } return resp; } if(str[0]=="4") { resp.push(27.7, 28.8) if(str[1]!="0" || str[2]!="0") { resp.push(EE[0]) resp.push(EE[1]) var rec = getDezenas(str[1]+str[2]); for(var i=0; i<rec.length; i++) resp.push(rec[i]) } return resp; } if(str[0]=="5") { resp.push(28.8, 29.7) if(str[1]!="0" || str[2]!="0") { resp.push(EE[0]) resp.push(EE[1]) var rec = getDezenas(str[1]+str[2]); for(var i=0; i<rec.length; i++) resp.push(rec[i]) } return resp; } if(str[0]=="6") { resp.push(29.7, 30.8) if(str[1]!="0" || str[2]!="0") { resp.push(EE[0]) resp.push(EE[1]) var rec = getDezenas(str[1]+str[2]); for(var i=0; i<rec.length; i++) resp.push(rec[i]) } return resp; } if(str[0]=="7") { resp.push(30.8, 31.9) if(str[1]!="0" || str[2]!="0") { resp.push(EE[0]) resp.push(EE[1]) var rec = getDezenas(str[1]+str[2]); for(var i=0; i<rec.length; i++) resp.push(rec[i]) } return resp; } if(str[0]=="8") { resp.push(31.9, 32.9) if(str[1]!="0" || str[2]!="0") { resp.push(EE[0]) resp.push(EE[1]) var rec = getDezenas(str[1]+str[2]); for(var i=0; i<rec.length; i++) resp.push(rec[i]) } return resp; } if(str[0]=="9") { resp.push(33, 34.2) if(str[1]!="0" || str[2]!="0") { resp.push(EE[0]) resp.push(EE[1]) var rec = getDezenas(str[1]+str[2]); for(var i=0; i<rec.length; i++) resp.push(rec[i]) } return resp; } } } function getArrayNumberSound(value) { var array_ler = new Array(); var pular = (value.length%3) if(pular==0) pular=3 var casas_milhar = parseInt(value.length/3) for(var i=0; i<value.length;) { var str = value.substring(i, (i+pular)) var num = parseInt( str ) if(pular==1) { casas_milhar +=1 var rec = getUnidades(str) for(var j=0; j<rec.length; j++) { array_ler.push( rec[j] ) } i+=1 pular=3 } else if(pular==2) { casas_milhar +=1 var rec = getDezenas(str) for(var j=0; j<rec.length; j++) { array_ler.push( rec[j] ) } i+=2 pular=3 } else { var rec = getCentenas(str) for(var j=0; j<rec.length; j++) { array_ler.push( rec[j] ) } i+=3 pular=3 } if( num > 0 ) { if(casas_milhar==2) { array_ler.push( 34.6, 35 ) } else if(casas_milhar==3) { if( num == 1 ) array_ler.push( 35, 36 ) if( num > 1 ) array_ler.push( 36, 37 ) } else if(casas_milhar==4) { if( num == 1 ) array_ler.push( 37, 37.9 ) if( num > 1 ) array_ler.push( 37.9, 38.9 ) } else if(casas_milhar==5) { if( num == 1 ) array_ler.push( 38.9, 39.3 ) if( num > 1 ) array_ler.push( 39.6, 40.5 ) } } casas_milhar-- } return array_ler; } function getRandomInt(min, max) { return Math.floor(Math.random() * (max - min + 1)) + min; } function getResult(resultado, valor, operacao) { if(operacao=="+") return resultado + valor else if(operacao=="-") return resultado - valor else if(operacao=="*") return resultado * valor else if(operacao=="/") return resultado / valor } function getNumbers(limite, numero_operacoes, operacao) { var array = new Array(); var resultado = 0; var div = document.getElementById("folha") var res = document.getElementById("resultado") div.innerHTML = "" for(var i=0; i<numero_operacoes; i++) { var n1 = getRandomInt(0, limite) resultado = getResult(resultado, n1, operacao) div.innerHTML += " " + n1 + "<br>" var rec = getArrayNumberSound( ""+ n1 ) for(var j=0; j<rec.length; j++) array.push(rec[j]) if(i<numero_operacoes-1) { if(operacao=="+") array.push(43.7, 44.4) if(operacao=="-") array.push(44.8, 45.5) if(operacao=="*") array.push(45.8, 46.6) if(operacao=="/") array.push(46.8, 47.8) } } div.innerHTML += operacao + " _____________________________<br>" res.innerHTML = " "+resultado+" <br>" res.style.display="none" return array; } function showResult() { var res = document.getElementById("resultado") res.style.display="block" } var array_ler = new Array(); var pos = 0; var requestAnimationFrame = window.requestAnimationFrame || window.mozRequestAnimationFrame || window.webkitRequestAnimationFrame || window.msRequestAnimationFrame; var cancelAnimationFrame = window.cancelAnimationFrame || window.mozCancelAnimationFrame; var myReq=null; var andando = false function ler( ) { if( andando && pos<array_ler.length ) { var vid = document.getElementById("myVideo"); vid.volume = 0.4; if( vid.paused ) { vid.currentTime = array_ler[pos] vid.play(); } else if( vid.currentTime >= array_ler[pos+1] ) { pos+=2 if( pos<array_ler.length ) { vid.currentTime = array_ler[pos] } else { vid.pause(); } } } } var Movie = function(timestamp) { myReq = requestAnimationFrame(Movie); ler(); } Movie (); function start() { array_ler = getNumbers(10000, 2, "+") pos=0 var vid = document.getElementById("myVideo"); vid.currentTime = array_ler[pos] vid.play(); andando = true; myReq = requestAnimationFrame(Movie); } function reiniciar() { var res = document.getElementById("resultado") res.style.display="none" pos=0 var vid = document.getElementById("myVideo"); vid.currentTime = array_ler[pos] vid.play(); andando = true; myReq = requestAnimationFrame(Movie); } function stop() { var vid = document.getElementById("myVideo"); andando = false; vid.pause(); window.cancelAnimationFrame(myReq); } </script>
Nenhum comentário:
Postar um comentário
Postagem mais recente
Postagem mais antiga
Página inicial
Nenhum comentário:
Postar um comentário