JSFiddle - React, Tailwind, and code Playground
by Erik East
HTML
<h2>Module 02</h2>
<h3>Assignment 01</h3>
<p>Pick a number (1-1000):
<input style="width:50px;" type="textbox" id="number" />
</p>
<input style="margin-bottom: 20px;" type="button" value="Guess!" onClick="startGuessing();" />
<div id="guess"></div>
JavaScript
var array = new Array(1000);
for (var i = 0; i < array.length; i++) {
array[i] = Math.floor(i + 1);
}
function startGuessing() {
var min = 0;
var max = array.length;
var number = parseInt(document.getElementById("number").value);
var guess;
while (min <= max) {
guess = Math.floor((min + max) / 2);
if (guess === number) {
document.getElementById("guess").innerHTML += ("Guessed " + guess + " - Got it!</br>");
}
else if (array[guess] < number) {
min = guess + 1;
document.getElementById("guess").innerHTML += ("Guessed " + guess + " - too low.") + "</br>";
}
else {
max = guess - 1;
document.getElementById("guess").innerHTML += ("Guessed " + guess + " - too high.") + "</br>";
}
}
}