mathball
Version:
A JavaScript library for Competitive Programming
38 lines (29 loc) • 835 B
JavaScript
;
/* Palindromic Number
* Function: isPalindrome()
* Function: rangePal() --> to return all palindromic numbers from 0 to end
*/
var validate = require('../validation/non-negative-integer');
exports.check = function (num) {
validate(num, 'isPalindrome');
return num == num.toString().split('').reverse().join('');
};
exports.range = function (start, end) {
validate(start, 'rangePal');
validate(end, 'rangePal');
if (start > end) {
throw new TypeError('Starting number must be smaller than the ending number!!\n');
}
var palinList = [],
lim = 0;
lim = end < 10 ? end : start;
for (var i = start; i < lim; i++) {
palinList.push(i);
}
for (var _i = lim; _i < end; _i++) {
if (_i.toString() === _i.toString().split('').reverse().join('')) {
palinList.push(_i);
}
}
return palinList;
};