• 古罗马子串加密


    古罗马皇帝凯撒在打仗时曾经使用过以下方法加密军事情报:

    设计思路:输入字符串,把每个字符装到数组里,其ascii码+3或-3,最后输出字符串型。

    package luoma;
    import java.util.*;
    public class Mima {
        public static void Jiami()
        {
            System.out.println("请输入需要加密的字符串");
            String zifu=new String();
            Scanner chuan=new Scanner(System.in);
            zifu=chuan.next();
            char leng[]=new char[zifu.length()];
            for(int i=0;i<zifu.length();i++)
            {
                if(zifu.charAt(i)>='A'&&zifu.charAt(i)<='W')
                {
                    leng[i]=(char)(zifu.charAt(i)+3);
                }
                if(zifu.charAt(i)=='X') leng[i]='A';
                if(zifu.charAt(i)=='Y') leng[i]='B';
                if(zifu.charAt(i)=='Z') leng[i]='C';
            }
            String show=new String();
            for(int j=zifu.length()-1;j>=0;j--)//从右组合字符串
            {
                show=leng[j]+show;
            }
            System.out.println("字符串加密后为:"+show);
        }
        
        public static void Jiemi()
        {
            System.out.println("请输入需要加密的字符串");
            String zifu=new String();
            Scanner chuan=new Scanner(System.in);
            zifu=chuan.next();
            char leng[]=new char[zifu.length()];
            for(int i=0;i<zifu.length();i++)
            {
                if(zifu.charAt(i)>='D'&&zifu.charAt(i)<='Z')
                {
                    leng[i]=(char)(zifu.charAt(i)-3);
                }
                if(zifu.charAt(i)=='A') leng[i]='X';
                if(zifu.charAt(i)=='B') leng[i]='Y';
                if(zifu.charAt(i)=='C') leng[i]='Z';
            }
            String show=new String();
            for(int j=zifu.length()-1;j>=0;j--)//从右组合字符串
            {
                show=leng[j]+show;
            }
            System.out.println("字符串加密后为:"+show);
        }
        
        public static void main(String args[])
        {
            System.out.println("请选择:1--加密;2--解密");
            int xuan;
            Scanner ze=new Scanner(System.in);
            xuan=ze.nextInt();
            if(xuan==1)
            {
                Mima m=new Mima();
                m.Jiami();
            }
            if(xuan==2)
            {
                Mima n=new Mima();
                n.Jiemi();
            }
        }
    }

    结果截图:

  • 相关阅读:
    黑白棋_lduoj_dfs深搜
    lduoj_2021年初寒假训练第41场
    Git学习day02
    Git学习day01
    python学习之urllib的使用
    SQL语句之授权与收回
    PHP学习之有问题找谁
    PHP学习之没有权限修改hosts文件
    PHP学习之创建本地站点
    python学习之常见错误
  • 原文地址:https://www.cnblogs.com/maplely/p/4909682.html
Copyright © 2020-2023  润新知