braingk58
Version:
mini-games for you and your family
44 lines (31 loc) • 3.29 kB
JavaScript
;
Object.defineProperty(exports, "__esModule", {
value: true
});
exports.default = void 0;
var _ = _interopRequireDefault(require(".."));
var _utils = _interopRequireDefault(require("../utils"));
var _hexletPairs = require("hexlet-pairs");
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
const isPerfect = num => {
if (num === 0) {
return false;
}
let sum = 0;
const upperBorder = num / 2;
for (let divisor = 1; divisor <= upperBorder; divisor += 1) {
if (num % divisor === 0) {
sum += divisor;
}
}
return sum === num;
};
const description = 'Answer "yes" if number perfect otherwise answer "no"'; // Perfect number, a positive integer that is equal to the sum of its proper divisors.
const perfectGame = () => {
const question = (0, _utils.default)(1, 50);
const answer = isPerfect(question) ? 'yes' : 'no';
return (0, _hexletPairs.cons)(question, answer);
};
var _default = () => (0, _.default)(description, perfectGame);
exports.default = _default;
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9nYW1lcy9wZXJmZWN0LmpzIl0sIm5hbWVzIjpbImlzUGVyZmVjdCIsIm51bSIsInN1bSIsInVwcGVyQm9yZGVyIiwiZGl2aXNvciIsImRlc2NyaXB0aW9uIiwicGVyZmVjdEdhbWUiLCJxdWVzdGlvbiIsImFuc3dlciJdLCJtYXBwaW5ncyI6Ijs7Ozs7OztBQUFBOztBQUNBOztBQUNBOzs7O0FBRUEsTUFBTUEsU0FBUyxHQUFJQyxHQUFELElBQVM7QUFDekIsTUFBSUEsR0FBRyxLQUFLLENBQVosRUFBZTtBQUNiLFdBQU8sS0FBUDtBQUNEOztBQUNELE1BQUlDLEdBQUcsR0FBRyxDQUFWO0FBQ0EsUUFBTUMsV0FBVyxHQUFHRixHQUFHLEdBQUcsQ0FBMUI7O0FBQ0EsT0FBSyxJQUFJRyxPQUFPLEdBQUcsQ0FBbkIsRUFBc0JBLE9BQU8sSUFBSUQsV0FBakMsRUFBOENDLE9BQU8sSUFBSSxDQUF6RCxFQUE0RDtBQUMxRCxRQUFJSCxHQUFHLEdBQUdHLE9BQU4sS0FBa0IsQ0FBdEIsRUFBeUI7QUFDdkJGLE1BQUFBLEdBQUcsSUFBSUUsT0FBUDtBQUNEO0FBQ0Y7O0FBQ0QsU0FBT0YsR0FBRyxLQUFLRCxHQUFmO0FBQ0QsQ0FaRDs7QUFhQSxNQUFNSSxXQUFXLEdBQUcsc0RBQXBCLEMsQ0FDQTs7QUFDQSxNQUFNQyxXQUFXLEdBQUcsTUFBTTtBQUN4QixRQUFNQyxRQUFRLEdBQUcsb0JBQVksQ0FBWixFQUFlLEVBQWYsQ0FBakI7QUFDQSxRQUFNQyxNQUFNLEdBQUdSLFNBQVMsQ0FBQ08sUUFBRCxDQUFULEdBQXNCLEtBQXRCLEdBQThCLElBQTdDO0FBQ0EsU0FBTyx1QkFBS0EsUUFBTCxFQUFlQyxNQUFmLENBQVA7QUFDRCxDQUpEOztlQUtlLE1BQU0sZUFBU0gsV0FBVCxFQUFzQkMsV0FBdEIsQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCBnYW1lRmxvdyBmcm9tICcuLic7XG5pbXBvcnQgZ2VuZXJhdGVOdW0gZnJvbSAnLi4vdXRpbHMnO1xuaW1wb3J0IHsgY29ucyB9IGZyb20gJ2hleGxldC1wYWlycyc7XG5cbmNvbnN0IGlzUGVyZmVjdCA9IChudW0pID0+IHtcbiAgaWYgKG51bSA9PT0gMCkge1xuICAgIHJldHVybiBmYWxzZTtcbiAgfVxuICBsZXQgc3VtID0gMDtcbiAgY29uc3QgdXBwZXJCb3JkZXIgPSBudW0gLyAyO1xuICBmb3IgKGxldCBkaXZpc29yID0gMTsgZGl2aXNvciA8PSB1cHBlckJvcmRlcjsgZGl2aXNvciArPSAxKSB7XG4gICAgaWYgKG51bSAlIGRpdmlzb3IgPT09IDApIHtcbiAgICAgIHN1bSArPSBkaXZpc29yO1xuICAgIH1cbiAgfVxuICByZXR1cm4gc3VtID09PSBudW07XG59O1xuY29uc3QgZGVzY3JpcHRpb24gPSAnQW5zd2VyIFwieWVzXCIgaWYgbnVtYmVyIHBlcmZlY3Qgb3RoZXJ3aXNlIGFuc3dlciBcIm5vXCInO1xuLy8gUGVyZmVjdCBudW1iZXIsIGEgcG9zaXRpdmUgaW50ZWdlciB0aGF0IGlzIGVxdWFsIHRvIHRoZSBzdW0gb2YgaXRzIHByb3BlciBkaXZpc29ycy5cbmNvbnN0IHBlcmZlY3RHYW1lID0gKCkgPT4ge1xuICBjb25zdCBxdWVzdGlvbiA9IGdlbmVyYXRlTnVtKDEsIDUwKTtcbiAgY29uc3QgYW5zd2VyID0gaXNQZXJmZWN0KHF1ZXN0aW9uKSA/ICd5ZXMnIDogJ25vJztcbiAgcmV0dXJuIGNvbnMocXVlc3Rpb24sIGFuc3dlcik7XG59O1xuZXhwb3J0IGRlZmF1bHQgKCkgPT4gZ2FtZUZsb3coZGVzY3JpcHRpb24sIHBlcmZlY3RHYW1lKTtcbiJdfQ==