Add examples

This commit is contained in:
Steve Kinney
2024-09-24 15:56:02 -06:00
parent 410a6c72ff
commit 61485cc73c
8 changed files with 150 additions and 24 deletions

View File

@@ -0,0 +1,33 @@
export class Game {
/**
* A number guessing game.
* @param {number} minimum - The minimum number to guess.
* @param {number} maximum - The maximum number to guess.
*/
constructor(minimum, maximum) {
this.secretNumber = Math.ceil(Math.random() * maximum - minimum) + minimum;
this.guesses = new Set();
console.log(`Guess the number between ${minimum} and ${maximum}.`);
}
/**
* Make a guess for the secret number.
* @param {number} number - The number to guess.
*/
guess(number) {
if (this.guesses.has(number)) {
return 'You already guessed that number!';
}
this.guesses.add(number);
if (number < this.secretNumber) {
return 'Too low!';
} else if (number > this.secretNumber) {
return 'Too high!';
} else if (number === this.secretNumber) {
return `Correct! You guessed the number in ${this.guesses.size} attempts.`;
}
}
}