古罗马子串加密

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

设计思路:输入字符串,把每个字符装到数组里,其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();
        }
    }
}

结果截图:

时间: 2024-10-11 16:41:42

古罗马子串加密的相关文章

古罗马皇帝的子串加密

课后作业1:字串加密. 古罗马皇帝凯撒在打仗时曾经使用过以下方法加密军事情报: 请编写一个程序,使用上述算法加密或解密用户输入的英文字串要求设计思想.程序流程图.源代码.结果截图. 设计思想: 整体思想即为将用户输入的字符串变为字符数组,然后进行加密运算,将加密后的字符数组再变回字符串输出即可. 首先定义int变量length以后来取得用户输入字符串长度,定义string变量zifu取得用户输入字符串.然后用Scanner读取用户输入的字符串,接着读取字符串长度.用tochararray方法将字

凯撒加密

一.古罗马皇帝凯撒在打仗时曾经使用过以下方法加密军事情报: 请编写一个程序,使用上述算法加密或解密用户输入的英文字串 程序: package demo; /* * 凯撒加密 * 杜泽坤 */ import java.util.*; public class Addmi { public static void main(String[]args){ System.out.println("请输入要加密的字符"); Scanner m=new Scanner(System.in); St

Java加密作业

一.古罗马皇帝凯撒在打仗时曾经使用过以下方法加密军事情报: 请编写一个程序,使用上述算法加密或解密用户输入的英文字串. 程序设计思想: 首先用户输入需要加密的字符串,然后定义函数获得字符串长度,通过for循环将字符串转化为单个字符,每个字符“+3”,向后移3个,每个字符“-3”,向前移3个,定义str2,将新得到的每个字符赋到str2,得到加密后的英文字符串str2,定义str3,将新得到的每个字符赋到str3,得到解密后的英文字符串str3,输出加密后的子串str2,输出解密后的子串str3

字符串加密以及动手动脑截图

1.字符串的比较: 使用equals()或equalsIgnoreCase()方法比较两字串内容是否相同,使用==比较两字串变量是否引用同一字串对象:Demo: StringEquals.ava compareTo:使用字典法进行比较,返回0表两字串相等,小于返回负值,大于返回正值 regionMatches:比较两字串中的某一部分是否相等.示例:StringCompare.Java 2.参看示例 StringMisc.java,其中展示了以下String类的重要方法与字段 Length():获

java中string类的方法和加密程序

String.equals()方法: 是对String对象所封装的字符串内容进行比较,也就是说,如果两个String对象所封装的字符串内容相同(包括大小写相同),则equals()方法将返回true. String类的length(),char(),getChar(),replace(),toUpperCase(),tolowerCase(),trim(),tocharArray()使用说明 Length()求字符串长度 Char()获取给定的index处的字符 getChar()字符转换成数组

Java课堂加密

1.字符串加密 设计思想: 每个字符都能够转化为整数型,也能将整数型转化为字符类型,这样我们在加密时候由于向后推3个,所以可以将字符转换为整形,然后加3,之后在将运算完的变量转化为字符后输出,就可以实现字符串加密. 程序流程图: 输入字符串->将字符串分解为字符->字符转换为整形->整形加3->转化为字符->输出. 源代码: import java.util.Scanner; public class miwen { public static void main(Strin

Girls&#39; research---hdu3294(回文子串manacher)

题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=3294 给出一个字符串和加密的字符规律 例如 c abcba c代表把串中的c改成a,d改成b... b改成z,a改成y... 即上串是yzazy,然后求出它的最长回文子串, 并记录子串的开始下标和结束下标就行了: #include<stdio.h> #include<string.h> #include<algorithm> using namespace std; con

java字串加密及String的各类函数说明

一.字串加密 古罗马皇帝凯撒在打仗时曾经使用过以下方法加密军事情报: 请编写一个程序,使用上述算法加密或解密用户输入的英文字串要求设计思想.程序流程图.源代码.结果截图. 1.程序设计思想 先定义字符串,之后输入字符串,算出字符串的长度,用for循环进行字符串的加密,运用ASCLL码表,进行加密,如果是xyz就减23,XYZ同理,其余的就正常加3,最后将加密的字符加到一个空的String类型的成员上,最后输出结果. 2.程序流程图 3.源代码 import java.util.Scanner;

4动手动脑,总结及凯撒加密

一.StringEquals.java 1.源代码 public class StringEquals { /** * @param args the command line arguments*/ public static void main(String[] args) { String s1=new String("Hello"); String s2=new String("Hello"); System.out.println(s1==s2); Sys