Add examples
This commit is contained in:
33
examples/guess-the-number/game.js
Normal file
33
examples/guess-the-number/game.js
Normal 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.`;
|
||||
}
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user