anf-project-lvl1-braingames
Version:
Games with numbers
51 lines (37 loc) • 3.68 kB
JavaScript
;
Object.defineProperty(exports, "__esModule", {
value: true
});
exports.default = void 0;
var _pairs = require("@hexlet/pairs");
var _ = _interopRequireDefault(require(".."));
var _instruments = _interopRequireDefault(require("../instruments"));
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
const task = 'What is the result of the expression?';
const operators = ['*', '+', '-'];
const getQuestionAndAnswer = () => {
const firstPart = (0, _instruments.default)();
const secondPart = (0, _instruments.default)();
const operator = operators[(0, _instruments.default)(0, operators.length - 1)];
const question = `${firstPart} ${operator} ${secondPart}`;
let correctAnswer;
switch (operator) {
case '*':
correctAnswer = firstPart * secondPart;
break;
case '+':
correctAnswer = firstPart + secondPart;
break;
case '-':
correctAnswer = firstPart - secondPart;
break;
default:
break;
}
return (0, _pairs.cons)(question, String(correctAnswer));
};
var _default = () => {
(0, _.default)(task, getQuestionAndAnswer);
};
exports.default = _default;
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9nYW1lcy9jYWxjLmpzIl0sIm5hbWVzIjpbInRhc2siLCJvcGVyYXRvcnMiLCJnZXRRdWVzdGlvbkFuZEFuc3dlciIsImZpcnN0UGFydCIsInNlY29uZFBhcnQiLCJvcGVyYXRvciIsImxlbmd0aCIsInF1ZXN0aW9uIiwiY29ycmVjdEFuc3dlciIsIlN0cmluZyJdLCJtYXBwaW5ncyI6Ijs7Ozs7OztBQUFBOztBQUNBOztBQUNBOzs7O0FBRUEsTUFBTUEsSUFBSSxHQUFHLHVDQUFiO0FBQ0EsTUFBTUMsU0FBUyxHQUFHLENBQUMsR0FBRCxFQUFNLEdBQU4sRUFBVyxHQUFYLENBQWxCOztBQUVBLE1BQU1DLG9CQUFvQixHQUFHLE1BQU07QUFDakMsUUFBTUMsU0FBUyxHQUFHLDJCQUFsQjtBQUNBLFFBQU1DLFVBQVUsR0FBRywyQkFBbkI7QUFDQSxRQUFNQyxRQUFRLEdBQUdKLFNBQVMsQ0FBQywwQkFBaUIsQ0FBakIsRUFBb0JBLFNBQVMsQ0FBQ0ssTUFBVixHQUFtQixDQUF2QyxDQUFELENBQTFCO0FBQ0EsUUFBTUMsUUFBUSxHQUFJLEdBQUVKLFNBQVUsSUFBR0UsUUFBUyxJQUFHRCxVQUFXLEVBQXhEO0FBQ0EsTUFBSUksYUFBSjs7QUFFQSxVQUFRSCxRQUFSO0FBQ0UsU0FBSyxHQUFMO0FBQ0VHLE1BQUFBLGFBQWEsR0FBR0wsU0FBUyxHQUFHQyxVQUE1QjtBQUNBOztBQUNGLFNBQUssR0FBTDtBQUNFSSxNQUFBQSxhQUFhLEdBQUdMLFNBQVMsR0FBR0MsVUFBNUI7QUFDQTs7QUFDRixTQUFLLEdBQUw7QUFDRUksTUFBQUEsYUFBYSxHQUFHTCxTQUFTLEdBQUdDLFVBQTVCO0FBQ0E7O0FBQ0Y7QUFDRTtBQVhKOztBQWFBLFNBQU8saUJBQUtHLFFBQUwsRUFBZUUsTUFBTSxDQUFDRCxhQUFELENBQXJCLENBQVA7QUFDRCxDQXJCRDs7ZUF1QmUsTUFBTTtBQUNuQixpQkFBVVIsSUFBVixFQUFnQkUsb0JBQWhCO0FBQ0QsQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IGNvbnMgfSBmcm9tICdAaGV4bGV0L3BhaXJzJztcbmltcG9ydCBzdGFydEdhbWUgZnJvbSAnLi4nO1xuaW1wb3J0IGdldFJhbmRvbUludGVnZXIgZnJvbSAnLi4vaW5zdHJ1bWVudHMnO1xuXG5jb25zdCB0YXNrID0gJ1doYXQgaXMgdGhlIHJlc3VsdCBvZiB0aGUgZXhwcmVzc2lvbj8nO1xuY29uc3Qgb3BlcmF0b3JzID0gWycqJywgJysnLCAnLSddO1xuXG5jb25zdCBnZXRRdWVzdGlvbkFuZEFuc3dlciA9ICgpID0+IHtcbiAgY29uc3QgZmlyc3RQYXJ0ID0gZ2V0UmFuZG9tSW50ZWdlcigpO1xuICBjb25zdCBzZWNvbmRQYXJ0ID0gZ2V0UmFuZG9tSW50ZWdlcigpO1xuICBjb25zdCBvcGVyYXRvciA9IG9wZXJhdG9yc1tnZXRSYW5kb21JbnRlZ2VyKDAsIG9wZXJhdG9ycy5sZW5ndGggLSAxKV07XG4gIGNvbnN0IHF1ZXN0aW9uID0gYCR7Zmlyc3RQYXJ0fSAke29wZXJhdG9yfSAke3NlY29uZFBhcnR9YDtcbiAgbGV0IGNvcnJlY3RBbnN3ZXI7XG5cbiAgc3dpdGNoIChvcGVyYXRvcikge1xuICAgIGNhc2UgJyonOlxuICAgICAgY29ycmVjdEFuc3dlciA9IGZpcnN0UGFydCAqIHNlY29uZFBhcnQ7XG4gICAgICBicmVhaztcbiAgICBjYXNlICcrJzpcbiAgICAgIGNvcnJlY3RBbnN3ZXIgPSBmaXJzdFBhcnQgKyBzZWNvbmRQYXJ0O1xuICAgICAgYnJlYWs7XG4gICAgY2FzZSAnLSc6XG4gICAgICBjb3JyZWN0QW5zd2VyID0gZmlyc3RQYXJ0IC0gc2Vjb25kUGFydDtcbiAgICAgIGJyZWFrO1xuICAgIGRlZmF1bHQ6XG4gICAgICBicmVhaztcbiAgfVxuICByZXR1cm4gY29ucyhxdWVzdGlvbiwgU3RyaW5nKGNvcnJlY3RBbnN3ZXIpKTtcbn07XG5cbmV4cG9ydCBkZWZhdWx0ICgpID0+IHtcbiAgc3RhcnRHYW1lKHRhc2ssIGdldFF1ZXN0aW9uQW5kQW5zd2VyKTtcbn07XG4iXX0=