UNPKG

newbymikhail

Version:
49 lines (38 loc) 4.39 kB
'use strict'; Object.defineProperty(exports, "__esModule", { value: true }); var _hexletPairs = require('hexlet-pairs'); var _game = require('../game'); var _game2 = _interopRequireDefault(_game); var _utils = require('../utils'); var _utils2 = _interopRequireDefault(_utils); function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } var descriptionGame = 'What number is missing in this progression?'; var progressionLength = 10; var max = 20; var maxStep = 5; var minStep = 1; var getProgression = function getProgression() { var firstElement = (0, _utils2.default)(max); var step = (0, _utils2.default)(maxStep, minStep); var progression = [firstElement]; while (progression.length <= progressionLength) { progression.push(firstElement + step * progression.length); } return progression; }; var questionAndAnswer = function questionAndAnswer() { var progression = getProgression(); var indexOfAnswer = (0, _utils2.default)(progressionLength); var answer = progression[indexOfAnswer]; progression[indexOfAnswer] = '..'; var question = progression.reduce(function (acc, element) { return '' + acc + element + ' '; }, ''); return (0, _hexletPairs.cons)(question, '' + answer); }; exports.default = function () { return (0, _game2.default)(descriptionGame, questionAndAnswer); }; //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9nYW1lcy9wcm9ncmVzc2lvbi5qcyJdLCJuYW1lcyI6WyJkZXNjcmlwdGlvbkdhbWUiLCJwcm9ncmVzc2lvbkxlbmd0aCIsIm1heCIsIm1heFN0ZXAiLCJtaW5TdGVwIiwiZ2V0UHJvZ3Jlc3Npb24iLCJmaXJzdEVsZW1lbnQiLCJzdGVwIiwicHJvZ3Jlc3Npb24iLCJsZW5ndGgiLCJwdXNoIiwicXVlc3Rpb25BbmRBbnN3ZXIiLCJpbmRleE9mQW5zd2VyIiwiYW5zd2VyIiwicXVlc3Rpb24iLCJyZWR1Y2UiLCJhY2MiLCJlbGVtZW50Il0sIm1hcHBpbmdzIjoiOzs7Ozs7QUFBQTs7QUFDQTs7OztBQUNBOzs7Ozs7QUFFQSxJQUFNQSxrQkFBa0IsNkNBQXhCO0FBQ0EsSUFBTUMsb0JBQW9CLEVBQTFCO0FBQ0EsSUFBTUMsTUFBTSxFQUFaO0FBQ0EsSUFBTUMsVUFBVSxDQUFoQjtBQUNBLElBQU1DLFVBQVUsQ0FBaEI7O0FBRUEsSUFBTUMsaUJBQWlCLFNBQWpCQSxjQUFpQixHQUFNO0FBQzNCLE1BQU1DLGVBQWUscUJBQWdCSixHQUFoQixDQUFyQjtBQUNBLE1BQU1LLE9BQU8scUJBQWdCSixPQUFoQixFQUF5QkMsT0FBekIsQ0FBYjtBQUNBLE1BQU1JLGNBQWMsQ0FBQ0YsWUFBRCxDQUFwQjtBQUNBLFNBQU9FLFlBQVlDLE1BQVosSUFBc0JSLGlCQUE3QixFQUFnRDtBQUM5Q08sZ0JBQVlFLElBQVosQ0FBaUJKLGVBQWdCQyxPQUFPQyxZQUFZQyxNQUFwRDtBQUNEO0FBQ0QsU0FBT0QsV0FBUDtBQUNELENBUkQ7O0FBVUEsSUFBTUcsb0JBQW9CLFNBQXBCQSxpQkFBb0IsR0FBTTtBQUM5QixNQUFNSCxjQUFjSCxnQkFBcEI7QUFDQSxNQUFNTyxnQkFBZ0IscUJBQWdCWCxpQkFBaEIsQ0FBdEI7QUFDQSxNQUFNWSxTQUFTTCxZQUFZSSxhQUFaLENBQWY7QUFDQUosY0FBWUksYUFBWixJQUE2QixJQUE3QjtBQUNBLE1BQU1FLFdBQVdOLFlBQVlPLE1BQVosQ0FBbUIsVUFBQ0MsR0FBRCxFQUFNQyxPQUFOO0FBQUEsZ0JBQXFCRCxHQUFyQixHQUEyQkMsT0FBM0I7QUFBQSxHQUFuQixFQUEwRCxFQUExRCxDQUFqQjtBQUNBLFNBQU8sdUJBQUtILFFBQUwsT0FBa0JELE1BQWxCLENBQVA7QUFDRCxDQVBEOztrQkFTZTtBQUFBLFNBQU0sb0JBQUtiLGVBQUwsRUFBc0JXLGlCQUF0QixDQUFOO0FBQUEsQyIsImZpbGUiOiJwcm9ncmVzc2lvbi5qcyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IGNvbnMgfSBmcm9tICdoZXhsZXQtcGFpcnMnO1xyXG5pbXBvcnQgZ2FtZSBmcm9tICcuLi9nYW1lJztcclxuaW1wb3J0IGdldFJhbmRvbU51bWJlciBmcm9tICcuLi91dGlscyc7XHJcblxyXG5jb25zdCBkZXNjcmlwdGlvbkdhbWUgPSAnV2hhdCBudW1iZXIgaXMgbWlzc2luZyBpbiB0aGlzIHByb2dyZXNzaW9uPyc7XHJcbmNvbnN0IHByb2dyZXNzaW9uTGVuZ3RoID0gMTA7XHJcbmNvbnN0IG1heCA9IDIwO1xyXG5jb25zdCBtYXhTdGVwID0gNTtcclxuY29uc3QgbWluU3RlcCA9IDE7XHJcblxyXG5jb25zdCBnZXRQcm9ncmVzc2lvbiA9ICgpID0+IHtcclxuICBjb25zdCBmaXJzdEVsZW1lbnQgPSBnZXRSYW5kb21OdW1iZXIobWF4KTtcclxuICBjb25zdCBzdGVwID0gZ2V0UmFuZG9tTnVtYmVyKG1heFN0ZXAsIG1pblN0ZXApO1xyXG4gIGNvbnN0IHByb2dyZXNzaW9uID0gW2ZpcnN0RWxlbWVudF07XHJcbiAgd2hpbGUgKHByb2dyZXNzaW9uLmxlbmd0aCA8PSBwcm9ncmVzc2lvbkxlbmd0aCkge1xyXG4gICAgcHJvZ3Jlc3Npb24ucHVzaChmaXJzdEVsZW1lbnQgKyAoc3RlcCAqIHByb2dyZXNzaW9uLmxlbmd0aCkpO1xyXG4gIH1cclxuICByZXR1cm4gcHJvZ3Jlc3Npb247XHJcbn07XHJcblxyXG5jb25zdCBxdWVzdGlvbkFuZEFuc3dlciA9ICgpID0+IHtcclxuICBjb25zdCBwcm9ncmVzc2lvbiA9IGdldFByb2dyZXNzaW9uKCk7XHJcbiAgY29uc3QgaW5kZXhPZkFuc3dlciA9IGdldFJhbmRvbU51bWJlcihwcm9ncmVzc2lvbkxlbmd0aCk7XHJcbiAgY29uc3QgYW5zd2VyID0gcHJvZ3Jlc3Npb25baW5kZXhPZkFuc3dlcl07XHJcbiAgcHJvZ3Jlc3Npb25baW5kZXhPZkFuc3dlcl0gPSAnLi4nO1xyXG4gIGNvbnN0IHF1ZXN0aW9uID0gcHJvZ3Jlc3Npb24ucmVkdWNlKChhY2MsIGVsZW1lbnQpID0+IGAke2FjY30ke2VsZW1lbnR9IGAsICcnKTtcclxuICByZXR1cm4gY29ucyhxdWVzdGlvbiwgYCR7YW5zd2VyfWApO1xyXG59O1xyXG5cclxuZXhwb3J0IGRlZmF1bHQgKCkgPT4gZ2FtZShkZXNjcmlwdGlvbkdhbWUsIHF1ZXN0aW9uQW5kQW5zd2VyKTtcclxuIl19