在完成任务时遇到了一些错误。我在这里将问题分离为一个循环代码块:
for (int i = 0; i < cipherArray.length; i++) {
int tempSum = 26 + cipherArray[i] - longkeyArray[i];
decrypArray[i] = tempSum % 26;
}
cipherArray
变量是int
的数组,与字母重合
0 = a, 1 = b
...
cipherArray
使用longkeyArray
变量进行编码。
longkeyArray
变量是一个int
的数组,它也以相同的方式与一个字母重合。
for循环应该通过从数组中的每个空格中减去键的值来解密cipherArray
,添加26,然后进行模26
例如。 (26 + 11 - 1) % 26 = 12
然后我以一个解码的整数数组结束。
当我运行问题时,一切正常,除了decrypArray
中的第一个值,结果总是z
。
我已尝试使用多个密钥和编码消息,但我仍然遇到同样的问题。