题目:某个公司采用公用电话传递数据,数据是四位的整数,在传递过程中是加密的,加密规则如下:每位数字都加上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 }