hexlet-project-lvl1-german
Version:
Project1 from hexlet. Brain Games.
49 lines (40 loc) • 4.12 kB
JavaScript
;
Object.defineProperty(exports, "__esModule", {
value: true
});
var _util = require('../util');
var _util2 = _interopRequireDefault(_util);
var _ = require('..');
var _2 = _interopRequireDefault(_);
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
var minNumber = 0;
var maxNumber = 20;
var operation = [{
symbol: '+',
calc: function calc(a, b) {
return a + b;
}
}, {
symbol: '-',
calc: function calc(a, b) {
return a - b;
}
}, {
symbol: '*',
calc: function calc(a, b) {
return a * b;
}
}];
var description = 'What is the result of the expression?';
var generateAnswerAndQuestion = function generateAnswerAndQuestion() {
var firstRandomNumber = (0, _util2.default)(minNumber, maxNumber);
var secondRandomNumber = (0, _util2.default)(minNumber, maxNumber);
var operationNumber = (0, _util2.default)(0, operation.length - 1);
var question = firstRandomNumber + ' ' + operation[operationNumber].symbol + ' ' + secondRandomNumber;
var answer = '' + operation[operationNumber].calc(firstRandomNumber, secondRandomNumber);
return { question: question, answer: answer };
};
exports.default = function () {
return (0, _2.default)(description, generateAnswerAndQuestion);
};
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9nYW1lcy9jYWxjLWdhbWUuanMiXSwibmFtZXMiOlsibWluTnVtYmVyIiwibWF4TnVtYmVyIiwib3BlcmF0aW9uIiwic3ltYm9sIiwiY2FsYyIsImEiLCJiIiwiZGVzY3JpcHRpb24iLCJnZW5lcmF0ZUFuc3dlckFuZFF1ZXN0aW9uIiwiZmlyc3RSYW5kb21OdW1iZXIiLCJzZWNvbmRSYW5kb21OdW1iZXIiLCJvcGVyYXRpb25OdW1iZXIiLCJsZW5ndGgiLCJxdWVzdGlvbiIsImFuc3dlciJdLCJtYXBwaW5ncyI6Ijs7Ozs7O0FBQUE7Ozs7QUFDQTs7Ozs7O0FBRUEsSUFBTUEsWUFBWSxDQUFsQjtBQUNBLElBQU1DLFlBQVksRUFBbEI7QUFDQSxJQUFNQyxZQUFZLENBQ2hCO0FBQ0VDLFVBQVEsR0FEVjtBQUVFQyxRQUFNLGNBQUNDLENBQUQsRUFBSUMsQ0FBSjtBQUFBLFdBQVVELElBQUlDLENBQWQ7QUFBQTtBQUZSLENBRGdCLEVBS2hCO0FBQ0VILFVBQVEsR0FEVjtBQUVFQyxRQUFNLGNBQUNDLENBQUQsRUFBSUMsQ0FBSjtBQUFBLFdBQVVELElBQUlDLENBQWQ7QUFBQTtBQUZSLENBTGdCLEVBU2hCO0FBQ0VILFVBQVEsR0FEVjtBQUVFQyxRQUFNLGNBQUNDLENBQUQsRUFBSUMsQ0FBSjtBQUFBLFdBQVVELElBQUlDLENBQWQ7QUFBQTtBQUZSLENBVGdCLENBQWxCO0FBY0EsSUFBTUMsY0FBYyx1Q0FBcEI7O0FBRUEsSUFBTUMsNEJBQTRCLFNBQTVCQSx5QkFBNEIsR0FBTTtBQUN0QyxNQUFNQyxvQkFBb0Isb0JBQWFULFNBQWIsRUFBd0JDLFNBQXhCLENBQTFCO0FBQ0EsTUFBTVMscUJBQXFCLG9CQUFhVixTQUFiLEVBQXdCQyxTQUF4QixDQUEzQjtBQUNBLE1BQU1VLGtCQUFrQixvQkFBYSxDQUFiLEVBQWdCVCxVQUFVVSxNQUFWLEdBQW1CLENBQW5DLENBQXhCO0FBQ0EsTUFBTUMsV0FBY0osaUJBQWQsU0FBbUNQLFVBQVVTLGVBQVYsRUFBMkJSLE1BQTlELFNBQXdFTyxrQkFBOUU7QUFDQSxNQUFNSSxjQUFZWixVQUFVUyxlQUFWLEVBQTJCUCxJQUEzQixDQUFnQ0ssaUJBQWhDLEVBQW1EQyxrQkFBbkQsQ0FBbEI7QUFDQSxTQUFPLEVBQUVHLGtCQUFGLEVBQVlDLGNBQVosRUFBUDtBQUNELENBUEQ7O2tCQVNlO0FBQUEsU0FBTSxnQkFBWVAsV0FBWixFQUF5QkMseUJBQXpCLENBQU47QUFBQSxDIiwiZmlsZSI6ImNhbGMtZ2FtZS5qcyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCBnZXRSYW5kb21JbnQgZnJvbSAnLi4vdXRpbCc7XG5pbXBvcnQgZ2FtZVByb2Nlc3MgZnJvbSAnLi4nO1xuXG5jb25zdCBtaW5OdW1iZXIgPSAwO1xuY29uc3QgbWF4TnVtYmVyID0gMjA7XG5jb25zdCBvcGVyYXRpb24gPSBbXG4gIHtcbiAgICBzeW1ib2w6ICcrJyxcbiAgICBjYWxjOiAoYSwgYikgPT4gYSArIGIsXG4gIH0sXG4gIHtcbiAgICBzeW1ib2w6ICctJyxcbiAgICBjYWxjOiAoYSwgYikgPT4gYSAtIGIsXG4gIH0sXG4gIHtcbiAgICBzeW1ib2w6ICcqJyxcbiAgICBjYWxjOiAoYSwgYikgPT4gYSAqIGIsXG4gIH0sXG5dO1xuY29uc3QgZGVzY3JpcHRpb24gPSAnV2hhdCBpcyB0aGUgcmVzdWx0IG9mIHRoZSBleHByZXNzaW9uPyc7XG5cbmNvbnN0IGdlbmVyYXRlQW5zd2VyQW5kUXVlc3Rpb24gPSAoKSA9PiB7XG4gIGNvbnN0IGZpcnN0UmFuZG9tTnVtYmVyID0gZ2V0UmFuZG9tSW50KG1pbk51bWJlciwgbWF4TnVtYmVyKTtcbiAgY29uc3Qgc2Vjb25kUmFuZG9tTnVtYmVyID0gZ2V0UmFuZG9tSW50KG1pbk51bWJlciwgbWF4TnVtYmVyKTtcbiAgY29uc3Qgb3BlcmF0aW9uTnVtYmVyID0gZ2V0UmFuZG9tSW50KDAsIG9wZXJhdGlvbi5sZW5ndGggLSAxKTtcbiAgY29uc3QgcXVlc3Rpb24gPSBgJHtmaXJzdFJhbmRvbU51bWJlcn0gJHtvcGVyYXRpb25bb3BlcmF0aW9uTnVtYmVyXS5zeW1ib2x9ICR7c2Vjb25kUmFuZG9tTnVtYmVyfWA7XG4gIGNvbnN0IGFuc3dlciA9IGAke29wZXJhdGlvbltvcGVyYXRpb25OdW1iZXJdLmNhbGMoZmlyc3RSYW5kb21OdW1iZXIsIHNlY29uZFJhbmRvbU51bWJlcil9YDtcbiAgcmV0dXJuIHsgcXVlc3Rpb24sIGFuc3dlciB9O1xufTtcblxuZXhwb3J0IGRlZmF1bHQgKCkgPT4gZ2FtZVByb2Nlc3MoZGVzY3JpcHRpb24sIGdlbmVyYXRlQW5zd2VyQW5kUXVlc3Rpb24pO1xuIl19