brain-games-from-ak
Version:
[](https://codeclimate.com/github/AndreyKashaev/project-lvl1-s308/maintainability) [ • 3.88 kB
JavaScript
;
Object.defineProperty(exports, "__esModule", {
value: true
});
var _hexletPairs = require('hexlet-pairs');
var _ = require('..');
var _utils = require('../utils');
var _utils2 = _interopRequireDefault(_utils);
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
var description = function description() {
return 'Find the greatest common divisor of given numbers.';
};
var getMaxDevisor = function getMaxDevisor(x, y) {
var maxNumber = Math.max(x, y);
var minNumber = Math.min(x, y);
if (maxNumber % minNumber === 0) {
return minNumber;
}
var devisor = Math.floor(minNumber / 2);
while (devisor > 1) {
if (maxNumber % devisor === 0 && minNumber % devisor === 0) {
return devisor;
}
devisor -= 1;
}
return 1;
};
var getGameData = function getGameData() {
var firstNumber = (0, _utils2.default)(1, 100);
var secondNumber = (0, _utils2.default)(1, 100);
return (0, _hexletPairs.cons)(firstNumber + ' ' + secondNumber, '' + getMaxDevisor(firstNumber, secondNumber));
};
var gcd = function gcd() {
return (0, _.flow)(description(), getGameData);
};
exports.default = gcd;
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9nYW1lcy9nY2QuanMiXSwibmFtZXMiOlsiZGVzY3JpcHRpb24iLCJnZXRNYXhEZXZpc29yIiwieCIsInkiLCJtYXhOdW1iZXIiLCJNYXRoIiwibWF4IiwibWluTnVtYmVyIiwibWluIiwiZGV2aXNvciIsImZsb29yIiwiZ2V0R2FtZURhdGEiLCJmaXJzdE51bWJlciIsInNlY29uZE51bWJlciIsImdjZCJdLCJtYXBwaW5ncyI6Ijs7Ozs7O0FBQUE7O0FBQ0E7O0FBQ0E7Ozs7OztBQUVBLElBQU1BLGNBQWMsU0FBZEEsV0FBYztBQUFBLFNBQU0sb0RBQU47QUFBQSxDQUFwQjs7QUFFQSxJQUFNQyxnQkFBZ0IsU0FBaEJBLGFBQWdCLENBQUNDLENBQUQsRUFBSUMsQ0FBSixFQUFVO0FBQzlCLE1BQU1DLFlBQVlDLEtBQUtDLEdBQUwsQ0FBU0osQ0FBVCxFQUFZQyxDQUFaLENBQWxCO0FBQ0EsTUFBTUksWUFBWUYsS0FBS0csR0FBTCxDQUFTTixDQUFULEVBQVlDLENBQVosQ0FBbEI7QUFDQSxNQUFJQyxZQUFZRyxTQUFaLEtBQTBCLENBQTlCLEVBQWlDO0FBQy9CLFdBQU9BLFNBQVA7QUFDRDtBQUNELE1BQUlFLFVBQVVKLEtBQUtLLEtBQUwsQ0FBV0gsWUFBWSxDQUF2QixDQUFkO0FBQ0EsU0FBT0UsVUFBVSxDQUFqQixFQUFvQjtBQUNsQixRQUFLTCxZQUFZSyxPQUFaLEtBQXdCLENBQXpCLElBQWdDRixZQUFZRSxPQUFaLEtBQXdCLENBQTVELEVBQWdFO0FBQzlELGFBQU9BLE9BQVA7QUFDRDtBQUNEQSxlQUFXLENBQVg7QUFDRDtBQUNELFNBQU8sQ0FBUDtBQUNELENBZEQ7O0FBZ0JBLElBQU1FLGNBQWMsU0FBZEEsV0FBYyxHQUFNO0FBQ3hCLE1BQU1DLGNBQWMscUJBQWUsQ0FBZixFQUFrQixHQUFsQixDQUFwQjtBQUNBLE1BQU1DLGVBQWUscUJBQWUsQ0FBZixFQUFrQixHQUFsQixDQUFyQjtBQUNBLFNBQU8sdUJBQVFELFdBQVIsU0FBdUJDLFlBQXZCLE9BQTBDWixjQUFjVyxXQUFkLEVBQTJCQyxZQUEzQixDQUExQyxDQUFQO0FBQ0QsQ0FKRDs7QUFNQSxJQUFNQyxNQUFNLFNBQU5BLEdBQU07QUFBQSxTQUFNLFlBQUtkLGFBQUwsRUFBb0JXLFdBQXBCLENBQU47QUFBQSxDQUFaOztrQkFFZUcsRyIsImZpbGUiOiJnY2QuanMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBjb25zIH0gZnJvbSAnaGV4bGV0LXBhaXJzJztcbmltcG9ydCB7IGZsb3cgfSBmcm9tICcuLic7XG5pbXBvcnQgZ2VuZXJhdGVOdW1iZXIgZnJvbSAnLi4vdXRpbHMnO1xuXG5jb25zdCBkZXNjcmlwdGlvbiA9ICgpID0+ICdGaW5kIHRoZSBncmVhdGVzdCBjb21tb24gZGl2aXNvciBvZiBnaXZlbiBudW1iZXJzLic7XG5cbmNvbnN0IGdldE1heERldmlzb3IgPSAoeCwgeSkgPT4ge1xuICBjb25zdCBtYXhOdW1iZXIgPSBNYXRoLm1heCh4LCB5KTtcbiAgY29uc3QgbWluTnVtYmVyID0gTWF0aC5taW4oeCwgeSk7XG4gIGlmIChtYXhOdW1iZXIgJSBtaW5OdW1iZXIgPT09IDApIHtcbiAgICByZXR1cm4gbWluTnVtYmVyO1xuICB9XG4gIGxldCBkZXZpc29yID0gTWF0aC5mbG9vcihtaW5OdW1iZXIgLyAyKTtcbiAgd2hpbGUgKGRldmlzb3IgPiAxKSB7XG4gICAgaWYgKChtYXhOdW1iZXIgJSBkZXZpc29yID09PSAwKSAmJiAobWluTnVtYmVyICUgZGV2aXNvciA9PT0gMCkpIHtcbiAgICAgIHJldHVybiBkZXZpc29yO1xuICAgIH1cbiAgICBkZXZpc29yIC09IDE7XG4gIH1cbiAgcmV0dXJuIDE7XG59O1xuXG5jb25zdCBnZXRHYW1lRGF0YSA9ICgpID0+IHtcbiAgY29uc3QgZmlyc3ROdW1iZXIgPSBnZW5lcmF0ZU51bWJlcigxLCAxMDApO1xuICBjb25zdCBzZWNvbmROdW1iZXIgPSBnZW5lcmF0ZU51bWJlcigxLCAxMDApO1xuICByZXR1cm4gY29ucyhgJHtmaXJzdE51bWJlcn0gJHtzZWNvbmROdW1iZXJ9YCwgYCR7Z2V0TWF4RGV2aXNvcihmaXJzdE51bWJlciwgc2Vjb25kTnVtYmVyKX1gKTtcbn07XG5cbmNvbnN0IGdjZCA9ICgpID0+IGZsb3coZGVzY3JpcHRpb24oKSwgZ2V0R2FtZURhdGEpO1xuXG5leHBvcnQgZGVmYXVsdCBnY2Q7XG4iXX0=