diff --git a/index.html b/index.html new file mode 100644 index 0000000000000000000000000000000000000000..fb0309bdda37227c72d892511ce7d5024a1d1a36 --- /dev/null +++ b/index.html @@ -0,0 +1,74 @@ +<!DOCTYPE html> +<html> + <head> + <meta charset="utf-8" /> + <title>Cube Root Training</title> + </head> + <body> + <h1>Cube Root Training</h1> + <p id=cube></p> + <p><input type="text" id="cuberoot" value ="" size=3></p> + <p id=result></p> + <p id=stats></p> + + <script> +var cube = document.getElementById("cube"); +var cuberoot = document.getElementById("cuberoot"); +var result = document.getElementById("result"); +var stats = document.getElementById("stats"); +var began; +var finished; +var elapsed = 0; +var generated; +var guesses = 0; +var correct = 0; + +cuberoot.addEventListener("keydown", function (e) { + if (e.keyCode === 13) { + check_cuberoot(e); + } +}) + +function humanize_ms(ms) { + if (ms < 1000) { + return ms + "ms"; + } else { + return (Math.floor(ms / 100) / 10) + "s"; + } +} + +function start_round() { + if (guesses > 0) { + stats.innerHTML = "Got " + correct + " correct out of " + guesses + + ". Last round took " + humanize_ms(finished - began) + + "." + ((correct > 0) + ?" Average time of correct guess was " + + humanize_ms(elapsed / correct) + "." + :""); + } + generated = Math.floor(Math.random() * 90) + 10; + cube.innerHTML = Math.pow(generated, 3); + began = Date.now(); + cuberoot.value = ""; + cuberoot.focus(); +} + +function check_cuberoot(e) { + var guess = e.target.value; + + guesses++; + finished = Date.now(); + if (guess == generated) { + correct++; + elapsed += (finished - began); + result.innerHTML = "Correct!"; + } else { + result.innerHTML = "Not correct! Correct answer was " + generated + "."; + } + start_round(); +} + +start_round(); + </script> + </body> +</html>