UNPKG

anf-project-lvl1-braingames

Version:

Games with numbers

62 lines (47 loc) 5.5 kB
#!/usr/bin/env node "use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.default = void 0; var _pairs = require("@hexlet/pairs"); var _index = require("../index"); const randomInt = () => Math.floor(Math.random() * (4 - 1)) + 1; const helloWord = 'What is the result of the expression?.\n'; const expressGenerator = () => { const pair = (0, _pairs.cons)((0, _index.randomNum)(), (0, _index.randomNum)()); const point = randomInt(); let operation = ''; if (point === 1) { operation = '*'; } else if (point === 2) { operation = '+'; } else operation = '-'; return `${(0, _pairs.car)(pair)} ${operation} ${(0, _pairs.cdr)(pair)}`; }; const getRandCorrAns = express => { let count = 0; const arr = new Array(3); arr[0] = ''; arr[1] = ''; arr[2] = ''; for (let i = 0; i < express.length; i += 1) { if (express[i] === ' ') { count += 1; } else { arr[count] += express[i]; } } if (arr[1] === '*') { return (Number(arr[0]) * Number(arr[2])).toString(); } if (arr[1] === '+') { return (Number(arr[0]) + Number(arr[2])).toString(); } return (Number(arr[0]) - Number(arr[2])).toString(); }; var _default = () => { (0, _index.testAnswer)(helloWord, expressGenerator, _index.takeAnswer, getRandCorrAns); }; exports.default = _default; //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9nYW1lcy9jYWxjLWdhbWUuanMiXSwibmFtZXMiOlsicmFuZG9tSW50IiwiTWF0aCIsImZsb29yIiwicmFuZG9tIiwiaGVsbG9Xb3JkIiwiZXhwcmVzc0dlbmVyYXRvciIsInBhaXIiLCJwb2ludCIsIm9wZXJhdGlvbiIsImdldFJhbmRDb3JyQW5zIiwiZXhwcmVzcyIsImNvdW50IiwiYXJyIiwiQXJyYXkiLCJpIiwibGVuZ3RoIiwiTnVtYmVyIiwidG9TdHJpbmciLCJ0YWtlQW5zd2VyIl0sIm1hcHBpbmdzIjoiQUFBQTs7Ozs7Ozs7QUFFQTs7QUFDQTs7QUFFQSxNQUFNQSxTQUFTLEdBQUcsTUFBTUMsSUFBSSxDQUFDQyxLQUFMLENBQVdELElBQUksQ0FBQ0UsTUFBTCxNQUFpQixJQUFJLENBQXJCLENBQVgsSUFBc0MsQ0FBOUQ7O0FBRUEsTUFBTUMsU0FBUyxHQUFHLDBDQUFsQjs7QUFFQSxNQUFNQyxnQkFBZ0IsR0FBRyxNQUFNO0FBQzdCLFFBQU1DLElBQUksR0FBRyxpQkFBSyx1QkFBTCxFQUFrQix1QkFBbEIsQ0FBYjtBQUNBLFFBQU1DLEtBQUssR0FBR1AsU0FBUyxFQUF2QjtBQUNBLE1BQUlRLFNBQVMsR0FBRyxFQUFoQjs7QUFDQSxNQUFJRCxLQUFLLEtBQUssQ0FBZCxFQUFpQjtBQUNmQyxJQUFBQSxTQUFTLEdBQUcsR0FBWjtBQUNELEdBRkQsTUFFTyxJQUFJRCxLQUFLLEtBQUssQ0FBZCxFQUFpQjtBQUN0QkMsSUFBQUEsU0FBUyxHQUFHLEdBQVo7QUFDRCxHQUZNLE1BRUFBLFNBQVMsR0FBRyxHQUFaOztBQUNQLFNBQVEsR0FBRSxnQkFBSUYsSUFBSixDQUFVLElBQUdFLFNBQVUsSUFBRyxnQkFBSUYsSUFBSixDQUFVLEVBQTlDO0FBQ0QsQ0FWRDs7QUFZQSxNQUFNRyxjQUFjLEdBQUlDLE9BQUQsSUFBYTtBQUNsQyxNQUFJQyxLQUFLLEdBQUcsQ0FBWjtBQUNBLFFBQU1DLEdBQUcsR0FBRyxJQUFJQyxLQUFKLENBQVUsQ0FBVixDQUFaO0FBQ0FELEVBQUFBLEdBQUcsQ0FBQyxDQUFELENBQUgsR0FBUyxFQUFUO0FBQ0FBLEVBQUFBLEdBQUcsQ0FBQyxDQUFELENBQUgsR0FBUyxFQUFUO0FBQ0FBLEVBQUFBLEdBQUcsQ0FBQyxDQUFELENBQUgsR0FBUyxFQUFUOztBQUNBLE9BQUssSUFBSUUsQ0FBQyxHQUFHLENBQWIsRUFBZ0JBLENBQUMsR0FBR0osT0FBTyxDQUFDSyxNQUE1QixFQUFvQ0QsQ0FBQyxJQUFJLENBQXpDLEVBQTRDO0FBQzFDLFFBQUlKLE9BQU8sQ0FBQ0ksQ0FBRCxDQUFQLEtBQWUsR0FBbkIsRUFBd0I7QUFDdEJILE1BQUFBLEtBQUssSUFBSSxDQUFUO0FBQ0QsS0FGRCxNQUVPO0FBQUVDLE1BQUFBLEdBQUcsQ0FBQ0QsS0FBRCxDQUFILElBQWNELE9BQU8sQ0FBQ0ksQ0FBRCxDQUFyQjtBQUEyQjtBQUNyQzs7QUFDRCxNQUFJRixHQUFHLENBQUMsQ0FBRCxDQUFILEtBQVcsR0FBZixFQUFvQjtBQUNsQixXQUFPLENBQUNJLE1BQU0sQ0FBQ0osR0FBRyxDQUFDLENBQUQsQ0FBSixDQUFOLEdBQWlCSSxNQUFNLENBQUNKLEdBQUcsQ0FBQyxDQUFELENBQUosQ0FBeEIsRUFBa0NLLFFBQWxDLEVBQVA7QUFDRDs7QUFBQyxNQUFJTCxHQUFHLENBQUMsQ0FBRCxDQUFILEtBQVcsR0FBZixFQUFvQjtBQUNwQixXQUFPLENBQUNJLE1BQU0sQ0FBQ0osR0FBRyxDQUFDLENBQUQsQ0FBSixDQUFOLEdBQWlCSSxNQUFNLENBQUNKLEdBQUcsQ0FBQyxDQUFELENBQUosQ0FBeEIsRUFBa0NLLFFBQWxDLEVBQVA7QUFDRDs7QUFBQyxTQUFPLENBQUNELE1BQU0sQ0FBQ0osR0FBRyxDQUFDLENBQUQsQ0FBSixDQUFOLEdBQWlCSSxNQUFNLENBQUNKLEdBQUcsQ0FBQyxDQUFELENBQUosQ0FBeEIsRUFBa0NLLFFBQWxDLEVBQVA7QUFDSCxDQWhCRDs7ZUFrQmUsTUFBTTtBQUNuQix5QkFBV2IsU0FBWCxFQUFzQkMsZ0JBQXRCLEVBQXdDYSxpQkFBeEMsRUFBb0RULGNBQXBEO0FBQ0QsQyIsInNvdXJjZXNDb250ZW50IjpbIiMhL3Vzci9iaW4vZW52IG5vZGVcblxuaW1wb3J0IHsgY29ucywgY2FyLCBjZHIgfSBmcm9tICdAaGV4bGV0L3BhaXJzJztcbmltcG9ydCB7IHJhbmRvbU51bSwgdGFrZUFuc3dlciwgdGVzdEFuc3dlciB9IGZyb20gJy4uL2luZGV4JztcblxuY29uc3QgcmFuZG9tSW50ID0gKCkgPT4gTWF0aC5mbG9vcihNYXRoLnJhbmRvbSgpICogKDQgLSAxKSkgKyAxO1xuXG5jb25zdCBoZWxsb1dvcmQgPSAnV2hhdCBpcyB0aGUgcmVzdWx0IG9mIHRoZSBleHByZXNzaW9uPy5cXG4nO1xuXG5jb25zdCBleHByZXNzR2VuZXJhdG9yID0gKCkgPT4ge1xuICBjb25zdCBwYWlyID0gY29ucyhyYW5kb21OdW0oKSwgcmFuZG9tTnVtKCkpO1xuICBjb25zdCBwb2ludCA9IHJhbmRvbUludCgpO1xuICBsZXQgb3BlcmF0aW9uID0gJyc7XG4gIGlmIChwb2ludCA9PT0gMSkge1xuICAgIG9wZXJhdGlvbiA9ICcqJztcbiAgfSBlbHNlIGlmIChwb2ludCA9PT0gMikge1xuICAgIG9wZXJhdGlvbiA9ICcrJztcbiAgfSBlbHNlIG9wZXJhdGlvbiA9ICctJztcbiAgcmV0dXJuIGAke2NhcihwYWlyKX0gJHtvcGVyYXRpb259ICR7Y2RyKHBhaXIpfWA7XG59O1xuXG5jb25zdCBnZXRSYW5kQ29yckFucyA9IChleHByZXNzKSA9PiB7XG4gIGxldCBjb3VudCA9IDA7XG4gIGNvbnN0IGFyciA9IG5ldyBBcnJheSgzKTtcbiAgYXJyWzBdID0gJyc7XG4gIGFyclsxXSA9ICcnO1xuICBhcnJbMl0gPSAnJztcbiAgZm9yIChsZXQgaSA9IDA7IGkgPCBleHByZXNzLmxlbmd0aDsgaSArPSAxKSB7XG4gICAgaWYgKGV4cHJlc3NbaV0gPT09ICcgJykge1xuICAgICAgY291bnQgKz0gMTtcbiAgICB9IGVsc2UgeyBhcnJbY291bnRdICs9IGV4cHJlc3NbaV07IH1cbiAgfVxuICBpZiAoYXJyWzFdID09PSAnKicpIHtcbiAgICByZXR1cm4gKE51bWJlcihhcnJbMF0pICogTnVtYmVyKGFyclsyXSkpLnRvU3RyaW5nKCk7XG4gIH0gaWYgKGFyclsxXSA9PT0gJysnKSB7XG4gICAgcmV0dXJuIChOdW1iZXIoYXJyWzBdKSArIE51bWJlcihhcnJbMl0pKS50b1N0cmluZygpO1xuICB9IHJldHVybiAoTnVtYmVyKGFyclswXSkgLSBOdW1iZXIoYXJyWzJdKSkudG9TdHJpbmcoKTtcbn07XG5cbmV4cG9ydCBkZWZhdWx0ICgpID0+IHtcbiAgdGVzdEFuc3dlcihoZWxsb1dvcmQsIGV4cHJlc3NHZW5lcmF0b3IsIHRha2VBbnN3ZXIsIGdldFJhbmRDb3JyQW5zKTtcbn07XG4iXX0=