java基础练习题(数字解密)
精选
原创
©著作权归作者所有:来自51CTO博客作者让世界更美好的原创作品,如需转载,请与作者联系,否则将追究法律责任
将加密后的数据解密出开来
1 9 8 3
+5 6 14 13 8 //5 6 7 8 9 10 11 12 13 14
%10 6 4 3 8 //5 6 7 8 9 0 1 2 3 4
反转 8 3 4 6
解密; 最小值;5 最大值 ; 14
反转 6 4 3 8
6 14 13 8
-5 1 9 8 3
public static void main(String[] args){
int [] arr = {8,3,4,6};
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++) {
if(arr[i] >= 0 && arr[i] <= 4){
arr[i] = arr[i] + 10;
}
}
for (int i = 0; i < arr.length; i++) {
arr[i] = arr[i] - 5;
}
int number = 0;
for (int i = 0; i < arr.length; i++) {
number = number * 10 + arr[i];
}
System.out.println(number);
}
老铁们可以根据以下步骤进行练习:这个是上一个练习的反途径
1.定义数组记录解密之后的结果
2.反转
3.由于加密是通过对10取余的方式进行获取的
所以在解密的时候需要判断 0~4之间+10 5~9之间不变
每一位-5
5.获取数组里面的每一位数字拼接成最终的结果