- 题目:某个公司采用公用电话传递数据,数据是四位的整数,在传递过程中是加密的,加密规则如下:每位数字都加上5,然后用和除以10的余数代替该数字
,再将第一位和第四位交换,第二位和第三位交换。
1 public class _048ExchangeFourNumber {
2
3 public static void main(String[] args) {
4 exchangeFourNumber();
5 }
6
7 private static void exchangeFourNumber() {
8 Scanner s = new Scanner(System.in);
9 int num = 0, temp;
10 do {
11 System.out.print("请输入一个4位正整数:");
12 num = s.nextInt();
13 } while (num < 1000 || num > 9999);
14 int a[] = new int[4];
15 a[0] = num / 1000; // 取千位的数字
16 a[1] = (num / 100) % 10; // 取百位的数字
17 a[2] = (num / 10) % 10; // 取十位的数字
18 a[3] = num % 10; // 取个位的数字
19 for (int j = 0; j < 4; j++) {
20 a[j] += 5;
21 a[j] %= 10;
22 }
23 for (int j = 0; j <= 1; j++) {
24 temp = a[j];
25 a[j] = a[3 - j];
26 a[3 - j] = temp;
27 }
28 System.out.print("加密后的数字为:");
29 for (int j = 0; j < 4; j++)
30 System.out.print(a[j]);
31 }
32
33 }