class numbers
{
int[] code = {1, 3, 5};
int[] p = {7,0,7,1,2,3,4,5,6,7};
int phone[] = new int[10];
void getNum()
{
for (int i =0; i< p[2]; i++)
{
phone[i] = (p[i] + code[0]) % 10;
}
for (int i =3; i< p[5]; i++)
{
phone[i] = (p[i] + code[1]) % 10;
}
for (int i =6; i< p.length; i++)
{
phone[i] = (p[i] + code[2]) % 10;
}
}
void displayNum()
{
String output = "The resulting phone number is: \n";
for (int i = 0; i< phone.length; i++)
{
output = output + phone[i];
}
System.out.println(output);
}
对于上面的行代码,我的结果应该是:
818-456-9012
这是基于我正在使用的Caesar密码,它将我的数组转换为不同的数组。
然而,当我运行代码时,我得到了结果:
818-234-9012
请帮我修复我的代码。谢谢你的帮助。
答案 0 :(得分:-1)
检查出来
void getNum()
{
for (int i =0; i< 3; i++)
{
phone[i] = (p[i] + code[0]) % 10;
}
for (int i =3; i< 6; i++)
{
phone[i] = (p[i] + code[1]) % 10;
}
for (int i =6; i< p.length; i++)
{
phone[i] = (p[i] + code[2]) % 10;
}
}