私は数週間前に暗号について学びました。私は、シーザー暗号を暗号化および復号化するツールを開発したいと考えています。しかし私が解読するとき、それはいつも奇妙な価値を返す。例: "私の最初のツール暗号"を暗号化した場合、 "zl svefg gbby pelcgb"は正しく復号化されませんが、 "m_ fiXYZ ZUUl cX_VZU"は13回回転するか、別の回転を選択します。シーザーは奇妙な値を解読しますか?
string array1 = "zl svefg gbby pelcgb";
int t2 = 0;
foreach (char c in array1)
{
if ((int)c == 32 || ((int)c >= 48 && (int)c <= 57))
t2 = c;
else
t2 = ((((int)c - 97) - 13) % 26) + 97;
Console.Write((char)t2);
}
代わりに-13を+13に変更すると機能しますか? –
はい、うまくいきます。しかしちょうど13回転!私は他の回転をしようとすると、別の奇妙な値に復帰します。 – Anvh