brain-gameskstchv1
Version:
brain-games project
50 lines (37 loc) • 5.02 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 greeting = 'What number is missing in the progression?';
const lengthProgression = 10;
const generateProgression = (start, step, length) => {
let progression = '';
let progressionElement;
const hiddenElementPosition = (0, _utils.default)(1, lengthProgression);
const hiddenElement = start + (hiddenElementPosition - 1) * step;
for (let i = 1; i < length + 1; i += 1) {
if (i === hiddenElementPosition) {
progressionElement = '..';
} else {
progressionElement = start + (i - 1) * step;
}
progression += `${progressionElement} `;
}
return (0, _hexletPairs.cons)(progression, hiddenElement);
};
const progressionData = () => {
const startOfProgression = (0, _utils.default)(1, 10);
const stepOfProgression = (0, _utils.default)(1, 3);
const data = generateProgression(startOfProgression, stepOfProgression, lengthProgression);
const question = (0, _hexletPairs.car)(data);
const correctAnswer = String((0, _hexletPairs.cdr)(data));
return (0, _hexletPairs.cons)(question, correctAnswer);
};
var _default = () => (0, _.default)(greeting, progressionData);
exports.default = _default;
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9nYW1lcy9wcm9ncmVzc2lvbi5qcyJdLCJuYW1lcyI6WyJncmVldGluZyIsImxlbmd0aFByb2dyZXNzaW9uIiwiZ2VuZXJhdGVQcm9ncmVzc2lvbiIsInN0YXJ0Iiwic3RlcCIsImxlbmd0aCIsInByb2dyZXNzaW9uIiwicHJvZ3Jlc3Npb25FbGVtZW50IiwiaGlkZGVuRWxlbWVudFBvc2l0aW9uIiwiaGlkZGVuRWxlbWVudCIsImkiLCJwcm9ncmVzc2lvbkRhdGEiLCJzdGFydE9mUHJvZ3Jlc3Npb24iLCJzdGVwT2ZQcm9ncmVzc2lvbiIsImRhdGEiLCJxdWVzdGlvbiIsImNvcnJlY3RBbnN3ZXIiLCJTdHJpbmciXSwibWFwcGluZ3MiOiI7Ozs7Ozs7QUFBQTs7QUFDQTs7QUFDQTs7OztBQUVBLE1BQU1BLFFBQVEsR0FBRyw0Q0FBakI7QUFFQSxNQUFNQyxpQkFBaUIsR0FBRyxFQUExQjs7QUFFQSxNQUFNQyxtQkFBbUIsR0FBRyxDQUFDQyxLQUFELEVBQVFDLElBQVIsRUFBY0MsTUFBZCxLQUF5QjtBQUNuRCxNQUFJQyxXQUFXLEdBQUcsRUFBbEI7QUFDQSxNQUFJQyxrQkFBSjtBQUVBLFFBQU1DLHFCQUFxQixHQUFHLG9CQUFlLENBQWYsRUFBa0JQLGlCQUFsQixDQUE5QjtBQUNBLFFBQU1RLGFBQWEsR0FBR04sS0FBSyxHQUFHLENBQUNLLHFCQUFxQixHQUFHLENBQXpCLElBQThCSixJQUE1RDs7QUFFQSxPQUFLLElBQUlNLENBQUMsR0FBRyxDQUFiLEVBQWdCQSxDQUFDLEdBQUdMLE1BQU0sR0FBRyxDQUE3QixFQUFnQ0ssQ0FBQyxJQUFJLENBQXJDLEVBQXdDO0FBQ3RDLFFBQUlBLENBQUMsS0FBS0YscUJBQVYsRUFBaUM7QUFDL0JELE1BQUFBLGtCQUFrQixHQUFHLElBQXJCO0FBQ0QsS0FGRCxNQUVPO0FBQ0xBLE1BQUFBLGtCQUFrQixHQUFHSixLQUFLLEdBQUcsQ0FBQ08sQ0FBQyxHQUFHLENBQUwsSUFBVU4sSUFBdkM7QUFDRDs7QUFDREUsSUFBQUEsV0FBVyxJQUFLLEdBQUVDLGtCQUFtQixHQUFyQztBQUNEOztBQUNELFNBQU8sdUJBQUtELFdBQUwsRUFBa0JHLGFBQWxCLENBQVA7QUFDRCxDQWhCRDs7QUFrQkEsTUFBTUUsZUFBZSxHQUFHLE1BQU07QUFDNUIsUUFBTUMsa0JBQWtCLEdBQUcsb0JBQWUsQ0FBZixFQUFrQixFQUFsQixDQUEzQjtBQUNBLFFBQU1DLGlCQUFpQixHQUFHLG9CQUFlLENBQWYsRUFBa0IsQ0FBbEIsQ0FBMUI7QUFFQSxRQUFNQyxJQUFJLEdBQUdaLG1CQUFtQixDQUFDVSxrQkFBRCxFQUFxQkMsaUJBQXJCLEVBQXdDWixpQkFBeEMsQ0FBaEM7QUFDQSxRQUFNYyxRQUFRLEdBQUcsc0JBQUlELElBQUosQ0FBakI7QUFDQSxRQUFNRSxhQUFhLEdBQUdDLE1BQU0sQ0FBQyxzQkFBSUgsSUFBSixDQUFELENBQTVCO0FBRUEsU0FBTyx1QkFBS0MsUUFBTCxFQUFlQyxhQUFmLENBQVA7QUFDRCxDQVREOztlQVdlLE1BQU0sZUFBT2hCLFFBQVAsRUFBaUJXLGVBQWpCLEMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgZW5naW5lIGZyb20gJy4uJztcbmltcG9ydCBnZW5lcmF0ZU51bWJlciBmcm9tICcuLi91dGlscyc7XG5pbXBvcnQgeyBjb25zLCBjYXIsIGNkciB9IGZyb20gJ2hleGxldC1wYWlycyc7XG5cbmNvbnN0IGdyZWV0aW5nID0gJ1doYXQgbnVtYmVyIGlzIG1pc3NpbmcgaW4gdGhlIHByb2dyZXNzaW9uPyc7XG5cbmNvbnN0IGxlbmd0aFByb2dyZXNzaW9uID0gMTA7XG5cbmNvbnN0IGdlbmVyYXRlUHJvZ3Jlc3Npb24gPSAoc3RhcnQsIHN0ZXAsIGxlbmd0aCkgPT4ge1xuICBsZXQgcHJvZ3Jlc3Npb24gPSAnJztcbiAgbGV0IHByb2dyZXNzaW9uRWxlbWVudDtcblxuICBjb25zdCBoaWRkZW5FbGVtZW50UG9zaXRpb24gPSBnZW5lcmF0ZU51bWJlcigxLCBsZW5ndGhQcm9ncmVzc2lvbik7XG4gIGNvbnN0IGhpZGRlbkVsZW1lbnQgPSBzdGFydCArIChoaWRkZW5FbGVtZW50UG9zaXRpb24gLSAxKSAqIHN0ZXA7XG5cbiAgZm9yIChsZXQgaSA9IDE7IGkgPCBsZW5ndGggKyAxOyBpICs9IDEpIHtcbiAgICBpZiAoaSA9PT0gaGlkZGVuRWxlbWVudFBvc2l0aW9uKSB7XG4gICAgICBwcm9ncmVzc2lvbkVsZW1lbnQgPSAnLi4nO1xuICAgIH0gZWxzZSB7XG4gICAgICBwcm9ncmVzc2lvbkVsZW1lbnQgPSBzdGFydCArIChpIC0gMSkgKiBzdGVwO1xuICAgIH1cbiAgICBwcm9ncmVzc2lvbiArPSBgJHtwcm9ncmVzc2lvbkVsZW1lbnR9IGA7XG4gIH1cbiAgcmV0dXJuIGNvbnMocHJvZ3Jlc3Npb24sIGhpZGRlbkVsZW1lbnQpO1xufTtcblxuY29uc3QgcHJvZ3Jlc3Npb25EYXRhID0gKCkgPT4ge1xuICBjb25zdCBzdGFydE9mUHJvZ3Jlc3Npb24gPSBnZW5lcmF0ZU51bWJlcigxLCAxMCk7XG4gIGNvbnN0IHN0ZXBPZlByb2dyZXNzaW9uID0gZ2VuZXJhdGVOdW1iZXIoMSwgMyk7XG5cbiAgY29uc3QgZGF0YSA9IGdlbmVyYXRlUHJvZ3Jlc3Npb24oc3RhcnRPZlByb2dyZXNzaW9uLCBzdGVwT2ZQcm9ncmVzc2lvbiwgbGVuZ3RoUHJvZ3Jlc3Npb24pO1xuICBjb25zdCBxdWVzdGlvbiA9IGNhcihkYXRhKTtcbiAgY29uc3QgY29ycmVjdEFuc3dlciA9IFN0cmluZyhjZHIoZGF0YSkpO1xuXG4gIHJldHVybiBjb25zKHF1ZXN0aW9uLCBjb3JyZWN0QW5zd2VyKTtcbn07XG5cbmV4cG9ydCBkZWZhdWx0ICgpID0+IGVuZ2luZShncmVldGluZywgcHJvZ3Jlc3Npb25EYXRhKTtcbiJdfQ==