深圳网站建设公司联华,资深的家居行业网站模板,wordpress中文评论插件,陕西优秀的企业门户网站建设需求#xff1a;
某系统的数字密码是一个四位数#xff0c;如1983#xff0c;为了安全#xff0c;需要加密后再传输#xff0c;加密规则是#xff1a;对密码中的每位数#xff0c;都加5 ,再对10求余#xff0c;最后将所有数字顺序反转#xff0c;得到一串加密后的新数…需求
某系统的数字密码是一个四位数如1983为了安全需要加密后再传输加密规则是对密码中的每位数都加5 ,再对10求余最后将所有数字顺序反转得到一串加密后的新数请设计出满足本需求的加密程序
import java.util.Scanner;public class Test4 {//完成四位数字加密public static void main(String[] args) {Scanner y new Scanner(System.in);System.out.println(请输入四位密码);int code y.nextInt();//若输入的是1983的话System.out.println(加密后的密码是code1(code));;}public static String code1(int x){//1、首先要进行四位数字的拆分成一个一个的数字并且放进数组里//创建了一个拆分数字放进数组的方法spli并且使用//直接alt回车会直接出来此方法在底部int arr[] split(x);//设置一个新的数组接受返回来的数组//{1983}//2、利用for循环遍历每位数字进行加密for (int i 0 ;i arr.length;i){arr[i] (arr[i]5)%10;}//输出后arr的值为[6438]//3、数组反转需要定义一个新的方法进行数组反转并且使用fanzhuan(arr);//调用完后arr [8346]//4、最后定义一个空的字符串将反转完的数组挨个拼接打印出来String data ;for (int j 0;jarr.length;j){data arr[j];//字符串相加的话是相互拼接的}return data;//返回结果}//进行数字拆分加入数组的方法public static int[] split(int x) {//此题目限制于四位数多位可以以此类推int[] arr new int[4];arr[0] x/1000;arr[1] (x/100)%10;arr[2] (x/10)%10;arr[3] x%10;return arr;}//此处是对数组进行反转的public static void fanzhuan(int[] arr) {//引用会改变值//定义一个从头开始遍历的数组在定义一个从后往前遍历的数组两个互相交换位置for (int i 0,j arr.length-1;ij;i,j--){//定义一个临时变量接受其中一个的值int temp arr[j];arr[j] arr[i];arr[i] temp;}}
}