数字加密

java中使用数组对数字进行简单的加密。

数字加密

需求:

某系统的数字密码:比如1983,采用加密方式进行传输,规则如下:
先得到每位数,然后每位数都加上5,再对10取余,最后将所有的数字反转,得到一组新数。

核心逻辑:

  • 1.定义两个变量分别占数组的首位位置。
  • 2.一个变量往前走,一个变量往后走,同步交换双方的位置处的值。

打码展示:

//1.定义一个输入存入需要加密的数字
        System.out.println("请输入所加密数字个数:");
        Scanner scanner = new Scanner(System.in);
        int length =scanner.nextInt();
        int[] arr = new int[length];

        //2.录入需要加密数字
        for (int i = 0; i < arr.length; i++) {
            System.out.println("请输入加密的第"+(i+1)+"个数字");
            int number = scanner.nextInt();
            arr[i] = number;
        }

        //3.打印加密前得数据
        System.out.println("加密前的数据:");
        printArray(arr);
        System.out.println();
        //4.核心逻辑(对数组中的数据进行加密)
        for (int i = 0; i < arr.length; i++) {
            arr[i] = (arr[i] + 5) % 10;
        }

        //5.核心逻辑(对数组中加密数据进行反转得到结果)
        for (int i = 0, j = arr.length - 1; i < j; i++, j--) {
            //直接交换左右对应位置的值
            int temp = arr[j];
            arr[j] = arr[i];
            arr[i] = temp;

        }
        System.out.println("加密后的数据:" );
        printArray(arr);

输出数组的方法

public static void printArray(int[] arr) {
        System.out.print("[ ");
        for (int i = 0; i < arr.length; i++) {
            System.out.print(i==arr.length-1?arr[i]:arr[i]+" ");
        }
        System.out.print(" ]");

代码核心逻辑来自黑马案例六

Original: https://www.cnblogs.com/zhangyouren/p/16402084.html
Author: Haziy
Title: 数字加密

原创文章受到原创版权保护。转载请注明出处:https://www.johngo689.com/622555/

转载文章受原作者版权保护。转载请注明原作者出处!

(0)

大家都在看

亲爱的 Coder【最近整理,可免费获取】👉 最新必读书单  | 👏 面试题下载  | 🌎 免费的AI知识星球