zoukankan      html  css  js  c++  java
  • 课后作业

    古罗马皇帝凯撒在打仗时曾经使用过以下方法加密军事情报:
    请编写一个程序,使用上述算法加密或解密用户输入的英文字串要求设计思想、源代码、结果截图。
    设计思想:
    先输入string类型的字符,把字符转化为字符数组,若是加密则在a-w或A-W中则每个字符+3若在x-z或X-Z中则每个字符-23,;若是解密则在a-c或A-C中每个字符+23若在d-z或D-Z中则每个字符-3;在把字符数组转化为string类型,输出结果。
    源代码:

    //编写一个加密和解密程序 每个字母往后顺延3个位置

    //李国帅 2015.10.25

    import java.util.Scanner;

    public class PassWord {

         public static void main(String[] args){

              System.out.println("加密请选1,解密请选2:");

              String jiami,jiemi;

              Scanner scan;

              int i,j;

              scan=new Scanner(System.in);

              i = scan.nextInt();

              if(i==1){

              scan=new Scanner(System.in);

              System.out.println("请输入要加密的字符:");

              jiami=scan.nextLine();

              char array[]=jiami.toCharArray();

              for(j=0;j<jiami.length();j++){

                   if(array[j]>=65&&array[j]<=87||array[j]>=97&&array[j]<=119)

                        array[j]=(char) (array[j]+3);

                   else if((array[j]>=88&&array[j]<=90)||(array[j]>=120&&array[j]<=122))

                        array[j]=(char) (array[j]-23);

        }

             StringBuffer arr = new StringBuffer();

             for(j=0;j<jiami.length();j++){

             arr.append(array[j]);

       }

            String newjiami=arr.toString();

            System.out.println("加密后的字符为:"+newjiami);

      }

      else

      {

              scan=new Scanner(System.in);

              System.out.println("请输入密码:");

              jiemi=scan.nextLine();

             char array[]=jiemi.toCharArray();

             for(j=0;j<jiemi.length();j++){

                  if(array[j]>=65&&array[j]<=67||array[j]>=97&&array[j]<=99){  

                        array[j]=(char)(array[j]+23);

              }

           else if(array[j]>=68&&array[j]<=90||array[j]>=100&&array[j]<=122){

          array[j]=(char)(array[j]-3);

         }

       }   

         StringBuffer arr = new StringBuffer(); 

             for(j=0;j<jiemi.length();j++){

             arr.append(array[j]);

       }

          String newjiemi=arr.toString();  

          System.out.println("解密后的字符为:"+newjiemi);

      }

     }

    }

    结果截图:
     
     
  • 相关阅读:
    耶鲁大学——斯金纳理论基础
    耶鲁大学——弗洛伊德(基础)
    for input 'WID' 报错
    选中当前行wid
    微信支付
    vue.js列表渲染项目实例
    批量删除
    DIV 局部刷新
    DIV块刷新
    CMD DOS命令
  • 原文地址:https://www.cnblogs.com/liguoshuai/p/4909040.html
Copyright © 2011-2022 走看看