diff --git a/caesar/caesar.js b/caesar/caesar.js index f4d6a25..6afc44d 100644 --- a/caesar/caesar.js +++ b/caesar/caesar.js @@ -1,5 +1,23 @@ -const caesar = function() { +const caesar = function (clearStr, key) { + let strArr = clearStr.split(""); -} + for (let i = 0; i < strArr.length; i++) { + const charCode = strArr[i].charCodeAt(); -module.exports = caesar + if ( + (charCode >= 65 && charCode <= 90) || + (charCode >= 97 && charCode <= 122) + ) { + strArr[i] = String.fromCharCode( + mod(charCode + key - codeSet(charCode), 26) + codeSet(charCode) + ); + } + } + // return matchArr + return strArr.join(""); +}; + +const codeSet = (code) => (code < 97 ? 65 : 97); +const mod = (n, m) => ((n % m) + m) % m; + +module.exports = caesar;