专栏首页AI那点小事算法提高 9-2 文本加密

算法提高 9-2 文本加密

问题描述   先编写函数EncryptChar,按照下述规则将给定的字符c转化(加密)为新的字符:”A”转化”B”,”B”转化为”C”,… …”Z”转化为”a”,”a”转化为”b”,… …, “z”转化为”A”,其它字符不加密。编写程序,加密给定字符串。 样例输出 与上面的样例输入对应的输出。 例:

数据规模和约定   输入数据中每一个数的范围。   例:50个字符以内无空格字符串。

import java.util.Scanner;

public class Main {

    public static String EncryptChar(String str){
        StringBuffer result = new StringBuffer();
        for ( int i = 0 ; i < str.length() ; i++){
            char a = str.charAt(i);
            if (a >= 'A' && a < 'Z'){
                a = (char) (a + 1);
                result.append(a);
            }else if (a == 'Z'){
                a = 'a';
                result.append(a);
            }else if (a >= 'a' && a < 'z'){
                a = (char) (a + 1);
                result.append(a);
            }else if(a == 'z'){
                a = 'A';
                result.append(a);
            }else{
                result.append(a);
            }
        }
        return result.toString();
    }

    public static void main(String[] args) {
        // TODO Auto-generated method stub
        Scanner in = new Scanner(System.in);
        String word = in.next();
        String result = EncryptChar(word);
        System.out.println(result);
        in.close();
    }

}

PS:这题简单归简单,但是这也有坑,审题一不注意就以为,”Z”变”A”,”z”变”a”了。出题的就是玩这个,我也是醉了!


本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

我来说两句

0 条评论
登录 后参与评论

相关文章

  • 波形图(人人网2017春招真题)

    小明正在做物理实验,他在示波器上观察波形。在每一时刻,他能观察到两种可能的波形,一种是水平波形,由两个下划线组成:”__”。一种是脉冲波形,由一个斜杠和一个反斜...

    AI那点小事
  • 算法提高 身份证号码升级

    问题描述   从1999年10月1日开始,公民身份证号码由15位数字增至18位。(18位身份证号码简介)。升级方法为:   1、把15位身份证号码中的年...

    AI那点小事
  • 算法提高 盾神与条状项链

    问题描述   有一天,盾神捡到了好多好多五颜六色的珠子!他心想这些珠子这么漂亮,可以做成一条项链然后送给他心仪的女生~于是他用其中一些珠子做成了长度为n的项...

    AI那点小事
  • python学习(13)

    #coding=utf-8 result = [] for i in range(1,6): result.append(chr(97+i-1)+str(i))...

    py3study
  • 写一个 golang 风格的协程扩展

    Kotlin 的协程库 kotlinx.coroutines 当中有个比较常用的 async 函数,返回的 Deferred<T> 有个 await 方法,这个...

    bennyhuo
  • 117-可变与不可变对象的效率

    python是一种解释型的语言,执行效率要比C这样的编译型语言差得多,但是也应该注意它的效率。 python的各种数据类型,按更新模型可以分为可变类型(如列表...

    凯茜的老爸
  • 数值的整数次方

  • [Leetcode][python]Simplify Path

    化简Unix系统下一个文件的绝对路径。 输入: path = “/a/./b/../../c/”

    后端技术漫谈
  • 2018-12-19 base58 与 base64 的区别

    base58和base64一样是一种二进制转可视字符串的算法,主要用来转换大整数值。区别是,转换出来的字符串,去除了几个看起来会产生歧义的字符,如 0 (零),...

    Albert陈凯
  • Django的主体功能-接口结构体校验(八)

    一般常规的接口返回值校验需要把需要校验的字段逐个进行断言判断,这样进行有很大的编码工作量,显然不适用于接口测试平台。可以看一下例子:

    zx钟

扫码关注云+社区

领取腾讯云代金券