diff --git a/AreYouCool/coolcounter.js b/AreYouCool/coolcounter.js index 48e5b9e0..7bc0b686 100644 --- a/AreYouCool/coolcounter.js +++ b/AreYouCool/coolcounter.js @@ -1,4 +1,49 @@ -Math.floor(Math.random() * 20); +function getRandomInt(max) { + return Math.floor(Math.random() * max); +} + +function getCoolnessLevel() { + const input = prompt("From 0-100 how cool do you think you are?: "); + const coolnessLevel = Number(input); + if (isNaN(coolnessLevel) || coolnessLevel < 0 || coolnessLevel > 100) { + alert("Please enter a valid number between 0 and 100."); + return null; + } + return coolnessLevel; +} + +function generateUniqueRandomNumbers(count, max) { + const uniqueNumbers = new Set(); + while (uniqueNumbers.size < count) { + const randomNumber = getRandomInt(max + 1); + if (randomNumber !== 0) { + uniqueNumbers.add(randomNumber); + } + } + return Array.from(uniqueNumbers); +} + +function evaluateCoolness(coolnessLevel, randomNumbers) { + const randomIndex = getRandomInt(coolnessLevel); + const selectedNumber = randomNumbers[randomIndex]; + if (selectedNumber > coolnessLevel / 2) { + alert("You are cool!"); + } else if (selectedNumber < coolnessLevel / 2) { + alert("You are not cool!"); + } else { + alert("You are the coolest of the coolest!"); + } +} + +function Coolmeter() { + const coolnessLevel = getCoolnessLevel(); + if (coolnessLevel === null) return; + + const randomNumbers = generateUniqueRandomNumbers(coolnessLevel, coolnessLevel); + evaluateCoolness(coolnessLevel, randomNumbers); +} + +Coolmeter();Math.floor(Math.random() * 20); function Coolmeter () {