java:凯撒密码

一,凯撒密码

 

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

现在用java实现

程序设计思想:

1,字符串首先要转化为字符数组,才能依次加密

2,当原来的字符为X,Y,Z时,加密后要转化为A,B,C

3,为了传递信息,应该只加密英文字母,对于无意义的空格等字符不应加密

程序流程图

 

源程序代码

 1 /**
 2  * 
 3  */
 4 package 课堂4;
 5 import java.util.Scanner;
 6 /**
 7  * @author 信1605-3吴鑫20163471
 8  */
 9 public class Ceasarcipher
10 {
11     /**
12      * @param args
13      */
14     public static void main(String args[])
15     {// TODO 自动生成的方法存根
16         Scanner sc=new Scanner(System.in);//用户输入字符串
17         System.out.println("请输入任意英文字符串:");
18         String s=sc.nextLine();
19         sc.close();
20         char c[]=s.toCharArray();//将字符串转换为字符数组
21 
22         for(int i=0;i<s.length();i++)//将每个字符依次加密
23         {
24             if(c[i]>=65&&c[i]<=90||c[i]>=97&&c[i]<=122)//如果是英文字母就执行凯撒加密
25                 c[i]=(char)(c[i]+3);
26             
27             if((c[i]>90&&c[i]<97)||c[i]>122)//当字母为x,y,z时,转化为a,b,c
28                 c[i]=(char)(c[i]-26);
29         }
30 
31         String result="该英文字串加密后的密文为:\n";
32         for(int i=0;i<s.length();i++)//将加密后的字符连接成字符串输出
33         {
34             result+=c[i];
35         }
36         System.out.println(result);
37     }
38 }

 
 

 

 程序运行结果

 

转载于:https://www.cnblogs.com/sdysyhj/p/7738258.html

  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值