brain-games-dmitry-sorokin
Version:
project-lvl1-s236
40 lines (30 loc) • 3.48 kB
JavaScript
;
Object.defineProperty(exports, "__esModule", {
value: true
});
var _hexletPairs = require('hexlet-pairs');
var _ = require('..');
var _2 = _interopRequireDefault(_);
var _random = require('../random');
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
var gameRules = 'What number is missing in this progression?';
// const randomNumber = () => Math.floor(Math.random() * 100);
var generateQuestion = function generateQuestion() {
var lengthOfProgression = 10;
var start = (0, _random.randomNumTen)();
var step = (0, _random.randomNumTen)() + 2;
var hidden = (0, _random.randomNumTen)();
var num = Array(lengthOfProgression).fill(null).map(function (e, i) {
return start + step * i;
});
var question = num.map(function (e, i) {
return i === hidden ? '..' : e;
}).join(' ');
var answer = String(num[hidden]);
return (0, _hexletPairs.cons)(question, answer);
};
var startProgression = function startProgression() {
return (0, _2.default)(gameRules, generateQuestion);
};
exports.default = startProgression;
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9nYW1lcy9wcm9ncmVzc2lvbi5qcyJdLCJuYW1lcyI6WyJnYW1lUnVsZXMiLCJnZW5lcmF0ZVF1ZXN0aW9uIiwibGVuZ3RoT2ZQcm9ncmVzc2lvbiIsInN0YXJ0Iiwic3RlcCIsImhpZGRlbiIsIm51bSIsIkFycmF5IiwiZmlsbCIsIm1hcCIsImUiLCJpIiwicXVlc3Rpb24iLCJqb2luIiwiYW5zd2VyIiwiU3RyaW5nIiwic3RhcnRQcm9ncmVzc2lvbiJdLCJtYXBwaW5ncyI6Ijs7Ozs7O0FBQUE7O0FBQ0E7Ozs7QUFDQTs7OztBQUVBLElBQU1BLFlBQVksNkNBQWxCOztBQUVBOztBQUVBLElBQU1DLG1CQUFtQixTQUFuQkEsZ0JBQW1CLEdBQU07QUFDN0IsTUFBTUMsc0JBQXNCLEVBQTVCO0FBQ0EsTUFBTUMsUUFBUSwyQkFBZDtBQUNBLE1BQU1DLE9BQU8sOEJBQWlCLENBQTlCO0FBQ0EsTUFBTUMsU0FBUywyQkFBZjtBQUNBLE1BQU1DLE1BQU1DLE1BQU1MLG1CQUFOLEVBQTJCTSxJQUEzQixDQUFnQyxJQUFoQyxFQUFzQ0MsR0FBdEMsQ0FBMEMsVUFBQ0MsQ0FBRCxFQUFJQyxDQUFKO0FBQUEsV0FBVVIsUUFBU0MsT0FBT08sQ0FBMUI7QUFBQSxHQUExQyxDQUFaO0FBQ0EsTUFBTUMsV0FBV04sSUFBSUcsR0FBSixDQUFRLFVBQUNDLENBQUQsRUFBSUMsQ0FBSjtBQUFBLFdBQVdBLE1BQU1OLE1BQU4sR0FBZSxJQUFmLEdBQXNCSyxDQUFqQztBQUFBLEdBQVIsRUFBNkNHLElBQTdDLENBQWtELEdBQWxELENBQWpCO0FBQ0EsTUFBTUMsU0FBU0MsT0FBT1QsSUFBSUQsTUFBSixDQUFQLENBQWY7QUFDQSxTQUFPLHVCQUFLTyxRQUFMLEVBQWVFLE1BQWYsQ0FBUDtBQUNELENBVEQ7QUFVQSxJQUFNRSxtQkFBbUIsU0FBbkJBLGdCQUFtQjtBQUFBLFNBQU0sZ0JBQWNoQixTQUFkLEVBQXlCQyxnQkFBekIsQ0FBTjtBQUFBLENBQXpCOztrQkFFZWUsZ0IiLCJmaWxlIjoicHJvZ3Jlc3Npb24uanMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBjb25zIH0gZnJvbSAnaGV4bGV0LXBhaXJzJztcbmltcG9ydCBnYW1lSW50ZXJmYWNlIGZyb20gJy4uJztcbmltcG9ydCB7IHJhbmRvbU51bVRlbiB9IGZyb20gJy4uL3JhbmRvbSc7XG5cbmNvbnN0IGdhbWVSdWxlcyA9ICdXaGF0IG51bWJlciBpcyBtaXNzaW5nIGluIHRoaXMgcHJvZ3Jlc3Npb24/JztcblxuLy8gY29uc3QgcmFuZG9tTnVtYmVyID0gKCkgPT4gTWF0aC5mbG9vcihNYXRoLnJhbmRvbSgpICogMTAwKTtcblxuY29uc3QgZ2VuZXJhdGVRdWVzdGlvbiA9ICgpID0+IHtcbiAgY29uc3QgbGVuZ3RoT2ZQcm9ncmVzc2lvbiA9IDEwO1xuICBjb25zdCBzdGFydCA9IHJhbmRvbU51bVRlbigpO1xuICBjb25zdCBzdGVwID0gcmFuZG9tTnVtVGVuKCkgKyAyO1xuICBjb25zdCBoaWRkZW4gPSByYW5kb21OdW1UZW4oKTtcbiAgY29uc3QgbnVtID0gQXJyYXkobGVuZ3RoT2ZQcm9ncmVzc2lvbikuZmlsbChudWxsKS5tYXAoKGUsIGkpID0+IHN0YXJ0ICsgKHN0ZXAgKiBpKSk7XG4gIGNvbnN0IHF1ZXN0aW9uID0gbnVtLm1hcCgoZSwgaSkgPT4gKGkgPT09IGhpZGRlbiA/ICcuLicgOiBlKSkuam9pbignICcpO1xuICBjb25zdCBhbnN3ZXIgPSBTdHJpbmcobnVtW2hpZGRlbl0pO1xuICByZXR1cm4gY29ucyhxdWVzdGlvbiwgYW5zd2VyKTtcbn07XG5jb25zdCBzdGFydFByb2dyZXNzaW9uID0gKCkgPT4gZ2FtZUludGVyZmFjZShnYW1lUnVsZXMsIGdlbmVyYXRlUXVlc3Rpb24pO1xuXG5leHBvcnQgZGVmYXVsdCBzdGFydFByb2dyZXNzaW9uO1xuIl19