JSFiddle - React, Tailwind, and code Playground
by Jeff Santos
HTML
Enter Value (Between 1-1000):
<input type="textbox" id="valuee" />
<input type="button" value="Search Array" onclick="searchArray()" />
<div id="outcome">
</div>
JavaScript
var array = [1000];
var screenOut = "";
for (i = 0; i < 1000; i++) {
array[i] = i + 1;
}
function searchArray() {
var numbr = parseInt(document.getElementById("valuee").value);
var min = 0;
var max = array.length - 1;
var compGuess;
var count = 1;
var compI;
while (max >= min) {
if ((numbr < 1) || (numbr > 1000)) {
screenOut = "Invalid! Choose a number between 1 and 1000.";
document.getElementById("outcome").innerHTML = screenOut;
}
compI = Math.floor((min + max) / 2);
compGuess = array[compI];
if (compGuess === numbr) {
screenOut = screenOut + "Guessed " + compGuess + " Got it. It only took me " + count + " guesses. </br>";
document.getElementById("outcome").innerHTML = screenOut ;
return compGuess;
} else if (compGuess < numbr) {
min = compI + 1;
screenOut = screenOut + "Guessed " + compGuess + " Too Low </br>";
document.getElementById("outcome").innerHTML = screenOut;
count++;
} else if (compGuess > numbr) {
max = compI - 1;
screenOut = screenOut + "Guessed " + compGuess + " Too High </br>";
document.getElementById("outcome").innerHTML = screenOut;
count++;
}
}
}