问题:给四位密码加密,先加5,再对10取余,最后反置,得到加密后的密码。例如,加密前:1983,加密后:8346。
代码:
package basic_code;
import java.util.Scanner;
public class password {
public static void main(String[] args) {
int arr[] = new int[4];
for (int i = 0; i < 4; i++) {
Scanner sc = new Scanner(System.in);
int num = sc.nextInt();
arr[i] = num;
}
int add_arr[] = add_pass(arr);
int comp_arr[] = comp_pass(add_arr);
int password[] = op_pass(comp_arr);
for (int i = 0; i < 4; i++) {
System.out.print(password[i]);
}
}
//+5方法
public static int[] add_pass(int arr[]){
for (int i = 0; i < 4; i++) {
arr[i] = arr[i] + 5;
}
return arr;
}
//对10求余方法
public static int[] comp_pass(int arr[]){
for (int i = 0; i < 4; i++) {
arr[i] = arr[i]%10;
}
return arr;
}
//取反方法
public static int[] op_pass(int arr[]){
int op_arr[] = new int[4];
for (int i = 3,k = 0; i >= 0; i--) {
op_arr[k] = arr[i];
k++;
}
return op_arr;
}
}