【用java写的】密码加密工具

【用java写的】密码加密工具,第1张

这个练习的要求是用户输入数字密码,比如1980等等,然后进行对原密码的加密。

加密规则为:

先获取密码的每一个数,然后每一位数都加上5,再对10求余,最后将所有数反转(前后调换),得到一串新数;

然后我把实现的过程分成几步:

1.从键盘输入,并创建一个int变量来存这些密码,并且还有获取这个密码的位数。

2.单独获取密码的每一位,并将其反着的存在一个数组中,这个数组的长度为密码的位数。

3.遍历数组里的每一个数,并对这些数进行加密,将这些加密后的数存在一个新的数组里,新数组的长度也是原密码的位数。

4.遍历新数组,输出加密后的密码。

然后我就实现了。

package Test;

import java.util.Scanner;

public class Shuzijiami {
    public static void main(String[] args) {
        Scanner sc=new Scanner(System.in);
        System.out.println("请输入密码:"); //定义一个int变量存输入进来的密码
        int Mima=sc.nextInt();
        int weishu=0;
        for (int i=1;i>0;i=i*10){   //这个循环的作用是得到密码的位数,方便我下面创建数组存储每一位数时
                                    //能够知道创建的数组的长度是多少
            if (Mima/i<1){          //如果小于1了,就可以跳出循环了。
                break;
            }
            weishu++;
        }
        int[]arr=new int[weishu];   //依照上面得到的位数,创建相应长度的数组
        int chu=1;
        int ji=0;
        for (int j = 0; j < arr.length; j++) {
            arr[j]=Mima/chu%10;         //从个位开始,获取密码的每一位数,这个过程中已完成了原密码的颠倒了
            chu=chu*10;
            ji++;
        }
        int []arr1=new int[weishu];
        for (int k = 0; k < arr.length; k++) {
            arr[k]=(arr[k]+5)%10;       //进行加密操作,将加密好的每一位数塞入新的一个数组
            arr1[k]=arr[k];
        }
        System.out.println("加密后的密码为:");
        for (int l = 0; l < arr1.length; l++) {     //遍历输出加密后的密码
            System.out.print(arr1[l]);
        }
    }
    }

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/langs/919426.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-05-16
下一篇 2022-05-16

发表评论

登录后才能评论

评论列表(0条)

保存