UNPKG

console-game

Version:
45 lines (34 loc) 3.19 kB
'use strict'; Object.defineProperty(exports, "__esModule", { value: true }); var _gamesEngine = require('../games-engine'); var _gamesEngine2 = _interopRequireDefault(_gamesEngine); var _utils = require('../utils'); function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } var rules = 'Is this number prime? Answer "yes" if number prime otherwise answer "no".'; var isPrime = function isPrime(num) { var stopPoint = Math.floor(Math.sqrt(num)); var iter = function iter(devider) { if (num % devider === 0) { return false; } if (devider > stopPoint) { return true; } return iter(devider + 1); }; return iter(2); }; var getGameSet = function getGameSet() { var number = (0, _utils.getRandomNumber)(); return { question: number, answer: isPrime(number) ? 'yes' : 'no' }; }; var findPrime = function findPrime() { return (0, _gamesEngine2.default)(rules, getGameSet); }; exports.default = findPrime; //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9nYW1lcy9icmFpbi1wcmltZS5qcyJdLCJuYW1lcyI6WyJydWxlcyIsImlzUHJpbWUiLCJudW0iLCJzdG9wUG9pbnQiLCJNYXRoIiwiZmxvb3IiLCJzcXJ0IiwiaXRlciIsImRldmlkZXIiLCJnZXRHYW1lU2V0IiwibnVtYmVyIiwicXVlc3Rpb24iLCJhbnN3ZXIiLCJmaW5kUHJpbWUiXSwibWFwcGluZ3MiOiI7Ozs7OztBQUFBOzs7O0FBQ0E7Ozs7QUFFQSxJQUFNQSxRQUFRLDJFQUFkOztBQUVBLElBQU1DLFVBQVUsU0FBVkEsT0FBVSxDQUFDQyxHQUFELEVBQVM7QUFDdkIsTUFBTUMsWUFBWUMsS0FBS0MsS0FBTCxDQUFXRCxLQUFLRSxJQUFMLENBQVVKLEdBQVYsQ0FBWCxDQUFsQjs7QUFFQSxNQUFNSyxPQUFPLFNBQVBBLElBQU8sQ0FBQ0MsT0FBRCxFQUFhO0FBQ3hCLFFBQUlOLE1BQU1NLE9BQU4sS0FBa0IsQ0FBdEIsRUFBeUI7QUFDdkIsYUFBTyxLQUFQO0FBQ0Q7QUFDRCxRQUFJQSxVQUFVTCxTQUFkLEVBQXlCO0FBQ3ZCLGFBQU8sSUFBUDtBQUNEO0FBQ0QsV0FBT0ksS0FBS0MsVUFBVSxDQUFmLENBQVA7QUFDRCxHQVJEO0FBU0EsU0FBT0QsS0FBSyxDQUFMLENBQVA7QUFDRCxDQWJEOztBQWVBLElBQU1FLGFBQWEsU0FBYkEsVUFBYSxHQUFNO0FBQ3ZCLE1BQU1DLFNBQVMsNkJBQWY7QUFDQSxTQUFPO0FBQ0xDLGNBQVVELE1BREw7QUFFTEUsWUFBUVgsUUFBUVMsTUFBUixJQUFrQixLQUFsQixHQUEwQjtBQUY3QixHQUFQO0FBSUQsQ0FORDs7QUFRQSxJQUFNRyxZQUFZLFNBQVpBLFNBQVk7QUFBQSxTQUFNLDJCQUFTYixLQUFULEVBQWdCUyxVQUFoQixDQUFOO0FBQUEsQ0FBbEI7O2tCQUVlSSxTIiwiZmlsZSI6ImJyYWluLXByaW1lLmpzIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IG1ha2VHYW1lIGZyb20gJy4uL2dhbWVzLWVuZ2luZSc7XG5pbXBvcnQgeyBnZXRSYW5kb21OdW1iZXIgfSBmcm9tICcuLi91dGlscyc7XG5cbmNvbnN0IHJ1bGVzID0gJ0lzIHRoaXMgbnVtYmVyIHByaW1lPyBBbnN3ZXIgXCJ5ZXNcIiBpZiBudW1iZXIgcHJpbWUgb3RoZXJ3aXNlIGFuc3dlciBcIm5vXCIuJztcblxuY29uc3QgaXNQcmltZSA9IChudW0pID0+IHtcbiAgY29uc3Qgc3RvcFBvaW50ID0gTWF0aC5mbG9vcihNYXRoLnNxcnQobnVtKSk7XG5cbiAgY29uc3QgaXRlciA9IChkZXZpZGVyKSA9PiB7XG4gICAgaWYgKG51bSAlIGRldmlkZXIgPT09IDApIHtcbiAgICAgIHJldHVybiBmYWxzZTtcbiAgICB9XG4gICAgaWYgKGRldmlkZXIgPiBzdG9wUG9pbnQpIHtcbiAgICAgIHJldHVybiB0cnVlO1xuICAgIH1cbiAgICByZXR1cm4gaXRlcihkZXZpZGVyICsgMSk7XG4gIH07XG4gIHJldHVybiBpdGVyKDIpO1xufTtcblxuY29uc3QgZ2V0R2FtZVNldCA9ICgpID0+IHtcbiAgY29uc3QgbnVtYmVyID0gZ2V0UmFuZG9tTnVtYmVyKCk7XG4gIHJldHVybiB7XG4gICAgcXVlc3Rpb246IG51bWJlcixcbiAgICBhbnN3ZXI6IGlzUHJpbWUobnVtYmVyKSA/ICd5ZXMnIDogJ25vJyxcbiAgfTtcbn07XG5cbmNvbnN0IGZpbmRQcmltZSA9ICgpID0+IG1ha2VHYW1lKHJ1bGVzLCBnZXRHYW1lU2V0KTtcblxuZXhwb3J0IGRlZmF1bHQgZmluZFByaW1lO1xuIl19