关闭

java学习例题之数据加密

95人阅读 评论(0) 收藏 举报
分类:

 对于一个新手来说,花一个小时半来做这个题,能做出来真是不容易呀!


/*
 * 数据加密问题:一公司使用随意位数的电话进行加密转输;
 * 要求:1,所有数倒叙;2,倒叙后每个数加5 ;3,,每个数除于10的余数
 * 来代替该数;4,最后一个数和第一个数交换;5,打印出来
 * 
 * */
package javaDay;


import java.util.Scanner;


public abstract class Java_day {


public static void main(String[] args) {
Scanner input= new Scanner(System.in);
System.out.println("请输入您的电话号码长度:");
int lengthTel=input.nextInt();
System.out.println("请输入您的电话号码:");
int tel=input.nextInt();
int [] receive= new int [lengthTel];//数组接收每一位数
//第一步:数的拆分
for(int a=0;a<lengthTel;a++){
receive[a]=tel/(int)(Math.pow(10,lengthTel-1-a));
tel=tel%(int)(Math.pow(10,lengthTel-1-a));

}
System.out.println("您的电话号码为:");
for(int a=0;a<lengthTel;a++){
System.out.print(receive[a]);
}
//第二步:数的倒叙
for(int start=0,end=lengthTel-1;start<=end;start++,end--){
int temp=receive[start];
receive[start]=receive[end];
receive[end]=temp;
}
System.out.println();
System.out.println("倒叙后为:");
for(int a=0;a<lengthTel;a++){
System.out.print(receive[a]);
}
//第三步:倒叙后每个数加5
for(int a=0;a<lengthTel;a++){
receive[a]+=5;
}
System.out.println();
System.out.println("倒叙加5后为:");
for(int a=0;a<lengthTel;a++){
System.out.print(receive[a]);
}
// 第四步:每个数换成除于10的余数
for(int a=0;a<lengthTel;a++){
receive[a]%=10;
}
System.out.println();
System.out.println("每个数除于10的余数后为:");
for(int a=0;a<lengthTel;a++){
System.out.print(receive[a]);
}
//第五步:最后一个数和第一个数交换
int b= receive[0];
receive[0]=receive[lengthTel-1];
receive[lengthTel-1]=b;
System.out.println();
System.out.println("加密后为:");
for(int a1=0;a1<lengthTel;a1++){
System.out.print(receive[a1]);
}

}
}


出现好多的bug,之后一点一点的调试,总算是做出来了!




0
0

查看评论
* 以上用户言论只代表其个人观点,不代表CSDN网站的观点或立场
    个人资料
    • 访问:14722次
    • 积分:1655
    • 等级:
    • 排名:千里之外
    • 原创:158篇
    • 转载:0篇
    • 译文:0篇
    • 评论:3条