2017-02-24 15 views
0
function rot13(str) { // LBH QVQ VG! 
    var newStr = str.split(" "); 

    for(var i = 0; i < newStr.length; i++){ 
    for(var j = 0; j < newStr[i].length; j++){ 
    if(newStr[i].charCodeAt(j) < 78){ 

    String.fromCharCode(newStr[i].charCodeAt(j) + 13); 

    } 
    else if(newStr[i].charCodeAt(j) >= 78){ 
      String.fromCharCode(newStr[i].charCodeAt(j) - 13); 
      } 
    } 
    } 
    return newStr; 
} 

// Change the inputs below to test 
rot13("SERR PBQR PNZC"); 

元のコードを実際の単語に翻訳することはできますが、新しい文字列の適切な単語に変更することができません。誰かが助けてくれますか?古い文字列の値を新しい文字列に置き換えるにはどうすればいいですか?

+0

がに、String.fromCharCode()は '返された値で何かをやってなくて無意味である'呼び出す...このような何かを試してみてください。 – Pointy

+0

私はそれを知っていますが、返された値と何をするかを知りたいので、 "FREE CODE CAMP"の出力を得ることができます –

答えて

0

function rot13(str) { // LBH QVQ VG!  
    var newStr = str.split(" "); 
    var alteredStr = ""; 

     for(var i = 0; i < newStr.length; i++){ 
      for(var j = 0; j < newStr[i].length; j++){ 
       if(newStr[i].charCodeAt(j) < 78){ 

        //String.fromCharCode(newStr[i].charCodeAt(j) + 13); 
        alteredString = alteredString + (newStr[i].charCodeAt(j) + 13).toString(); 
       } 
       else if(newStr[i].charCodeAt(j) >= 78){ 
        //String.fromCharCode(newStr[i].charCodeAt(j) - 13); 
        alteredString = alteredString + (newStr[i].charCodeAt(j) - 13).toString(); 
       } 
      } 
     } 
    return newStr; 
} 

// Change the inputs below to test 
rot13("SERR PBQR PNZC"); 
+0

alteredStringが定義されていないということが原因でまだ問題が発生しています –

+0

あなたは、それを使っていますか? – ShimSham

+0

@tony 'alteredString'がコードで定義されていないので、' alteredStr'だけがありました。 3行目の 'var alteredStr =" ";'を 'var alteredString =" ";'に変更してください。 – Darren

関連する問題