凯撒密码加密

题目

问题描述

给定一个单词,请使用凯撒密码将这个单词加密。

  凯撒密码是一种替换加密的技术,单词中的所有字母都在字母表上向后偏移3位后被替换成密文。即a变为d,b变为e,…,w变为z,x变为a,y变为b,z变为c。

  例如,lanqiao会变成odqtldr。

输入格式

输入一行,包含一个单词,单词中只包含小写英文字母。

输出格式

输出一行,表示加密后的密文。

样例输入

lanqiao

样例输出

odqtldr

评测用例规模与约定

对于所有评测用例,单词中的字母个数不超过100。

PS:

充分利用JDK,虽然看起来多,其实写起来方便,方法都有提示的

只需要对xyz这三个做特殊处理就可以了,记得大小写都做处理,

package 省模拟赛;

import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
import java.util.Scanner; public class 凯撒密码 {
public static void main(String[] args) throws IOException {
// Scanner sc = new Scanner(System.in);
// String s=sc.next();
String s=(new BufferedReader(new InputStreamReader(System.in))).readLine();
char[] str =s.toCharArray();
StringBuilder sb = new StringBuilder("");
for (int i = 0; i < str.length; i++) {
//判断大写字母 这里是相同意义的
if(Character.isUpperCase(str[i])){// str[i]>='A'&&str[i]<='Z'
if(str[i]=='X'||str[i]=='Y'||str[i]=='Z'){
sb.append((char)(str[i]-'Z'+'C'));
}
else{
sb.append((char)( str[i]+3));
}
}
//判断小写字母
else if(Character.isLowerCase(str[i])){// str[i]>='a'&&str[i]<='z'
if(str[i]=='x'||str[i]=='y'||str[i]=='z'){
sb.append((char)(str[i]-'z'+'c'));
}
else{
sb.append((char)( str[i]+3));
}
} }
System.out.println(sb);
} }

Java 第十一届 蓝桥杯 省模拟赛 凯撒密码加密的更多相关文章

  1. Java 第十一届 蓝桥杯 省模拟赛 小明的城堡

    小明用积木搭了一个城堡. 为了方便,小明在搭的时候用的是一样大小的正方体积本,搭在了一个 n 行 m 列的方格图上,每个积木正好占据方格图的一个小方格. 当然,小明的城堡并不是平面的,而是立体的.小明 ...

  2. Java 第十一届 蓝桥杯 省模拟赛 梅花桩

    小明每天都要练功,练功中的重要一项是梅花桩. 小明练功的梅花桩排列成 n 行 m 列,相邻两行的距离为 1,相邻两列的距离也为 1. 小明站在第 1 行第 1 列上,他要走到第 n 行第 m 列上.小 ...

  3. Java 第十一届 蓝桥杯 省模拟赛 元音字母辅音字母的数量

    给定一个单词,请计算这个单词中有多少个元音字母,多少个辅音字母. 元音字母包括 a, e, i, o, u,共五个,其他均为辅音字母. 输入格式 输入一行,包含一个单词,单词中只包含小写英文字母. 输 ...

  4. Java 第十一届 蓝桥杯 省模拟赛 递增序列

    问题描述 在数列 a[1], a[2], -, a[n] 中,如果 a[i] < a[i+1] < a[i+2] < - < a[j],则称 a[i] 至 a[j] 为一段递增 ...

  5. Java 第十一届 蓝桥杯 省模拟赛 最大的元素距离

    在数列 a_1, a_2, -, a_n中,定义两个元素 a_i 和 a_j 的距离为 |i-j|+|a_i-a_j|,即元素下标的距离加上元素值的差的绝对值,其中 |x| 表示 x 的绝对值. 给定 ...

  6. Java 第十一届 蓝桥杯 省模拟赛 洁净数

    洁净数 小明非常不喜欢数字 2,包括那些数位上包含数字 2 的数.如果一个数的数位不包含数字 2,小明将它称为洁净数. 请问在整数 1 至 n 中,洁净数有多少个? 输入格式 输入的第一行包含一个整数 ...

  7. Java 第十一届 蓝桥杯 省模拟赛 第十层的二叉树

    一棵10层的二叉树,最多包含多少个结点? 注意当一棵二叉树只有一个结点时为一层. 答案提交 这是一道结果填空的题,你只需要算出结果后提交即可.本题的结果为一个整数,在提交答案时只填写这个整数,填写多余 ...

  8. Java 第十一届 蓝桥杯 省模拟赛 70044与113148的最大公约数

    问题描述 70044与113148的最大公约数是多少? 答案提交 这是一道结果填空的题,你只需要算出结果后提交即可.本题的结果为一个整数,在提交答案时只填写这个整数,填写多余的内容将无法得分. pac ...

  9. Java 第十一届 蓝桥杯 省模拟赛 19000互质的个数

    问题描述 不超过19000的正整数中,与19000互质的数的个数是多少? 答案提交 这是一道结果填空的题,你只需要算出结果后提交即可.本题的结果为一个整数,在提交答案时只填写这个整数,填写多余的内容将 ...

随机推荐

  1. ysql常用sql语句(12)- group by 分组查询

    测试必备的Mysql常用sql语句,每天敲一篇,每次敲三遍,每月一循环,全都可记住!! https://www.cnblogs.com/poloyy/category/1683347.html 前言 ...

  2. ubuntu文件系统修改( for arm)

    系统:ubuntu14.04 镜像:ubuntu-rootfs.img for aarch64 创建一个文件夹 ubuntu-mount mkdir ubuntu-mount 将ubuntu-root ...

  3. [hdu5399 Too Simple]YY

    题意:m个{1,2...n}→{1,2...,n}的函数,有些已知有些未知,求对任意i∈{1,2,...,n},f1(f2(...(fm(i)))=i的方案总数,为了方便简记为F(i) 思路:如果存在 ...

  4. 将微服务运行在docker上遇到的问题一

    按照类似这样的流程: 但是去访问本机的 localhost:92 localhost:80 都没有任何的内容..... 这是什么原因? 重新再来一次 新写了一个微服务demo jar包: 相应的Doc ...

  5. Rx-Volley 自己来封装

    自从15年接触了RxJava,对函数式编程越发的喜爱.以前Android项目上网络层都是统一的使用Volley,已经对网络请求的回调,多个回调嵌入各种不爽了,趁着年前任务轻松,赶紧的将Volley封装 ...

  6. chmod的用法

    指令名称 : chmod 使用权限 : 所有使用者 使用方式 : chmod [-cfvR] [--help] [--version] mode file... 说明 : Linux/Unix 的档案 ...

  7. docker+headless+robotframework+jenkins实现web自动化持续集成

    在Docker环境使headless实现web自动化持续集成 一.制作镜像 原则:自动化测试基于基础制作镜像 命令:docker run --privileged --name=$1 --net=ho ...

  8. Azure AD B2C(一)初识

    一,引言(上节回顾) 上一节讲到Azure AD的一些基础概念,以及如何运用 Azure AD 包含API资源,Azure AD 是微软提供的云端的身份标识和资源访问服务,帮助员工/用户/管理员访问一 ...

  9. 腾讯几款QQ软件

    1.QQ(普通版QQ) https://im.qq.com/ 2.Tim(QQ办公简洁版) https://tim.qq.com/ https://baike.baidu.com/item/Tim/2 ...

  10. jenkins+gitee+ssh自动化部署

    一.准备环境 1,配置maven(MAVEN_HOME) 2,配置jdk(JAVA_HOME)我这里用的jdk1.8.0_121,之前碰到过一次别的版本的jdk在启动tomcat无法解析https情况 ...