某系统的数字密码(大于0)。比如1983,采用加密方式进行传输。加密规则如下:每位数加5,在对10取余,最后将所有数字反转,得到一串新数。(难点:反转 要用到两个指针)
public static void main(String[] args) {
//分析
// 1 把每个数放到数组里面 这个是最难的 放到了一个新的类当中写她
int[] arr = {1, 9, 8, 3};
// 2 加密 三个循环 每个循环只做一件事 加5 取余 反转
for (int i = 0; i < arr.length; i++) {
arr[i] = arr[i] + 5;
}
for (int i = 0; i < arr.length; i++) {
arr[i] = arr[i] % 10;
}
//反转:要用到两个指针i和J;
for (int i = 0, j = arr.length - 1; i < j; i++, j--) {
int temp = arr[i];
arr[i] = arr[j];
arr[j] = temp;
}
for (int i = 0; i < arr.length; i++) {
System.out.print(arr[i] + " ");
//此处结果是8346
}
// 3 把数组里的每个数拼接而形成新数
int number = 0;
for (int i = 0; i < arr.length; i++) {
number = number * 10 +arr[i];
}
System.out.println(number);
}