加密问题(良心干货)
2015-10-14 18:22
211 查看
/*
需求:
某个公司采用公用电话传递数据信息,数据是小于9位的整数,为了安全,
在传递过程中需要加密,加密规则如下;
首先将数据倒序,然后将每位数字都乘2,再用结果除以5的余数代替该数字,
最后将第一位和最后一位数字交换。请任意给定一个小于9位数的整数,
然后,把加密后的结果在控制台打印出来。
*/
import java.util.Scanner;
class Jia{
public static void main(String[]args){
Scanner sc=new Scanner(System.in);
System.out.println("请你输入一个九位数,我帮你加密");
int number=sc.nextInt();
System.out.println("你输入的数为:"+number);
String jieguo=Fe(number);
System.out.println("加密后的结果是:"+jieguo);
}
public static String Fe(int number){
int[]x=new int[9];
int y=0;
while(number>0){
x[y]=number%10;
y++;
number/=10;
}
for(int a=0;a<y;a++){
x[a]*=2;
x[a]%=5;
}
int c=x[0];
x[0]=x[y-1];
x[y-1]=c;
String s="";
for(int a=0;a<y;a++){
s+=x[a];
}
return s;
}
}
需求:
某个公司采用公用电话传递数据信息,数据是小于9位的整数,为了安全,
在传递过程中需要加密,加密规则如下;
首先将数据倒序,然后将每位数字都乘2,再用结果除以5的余数代替该数字,
最后将第一位和最后一位数字交换。请任意给定一个小于9位数的整数,
然后,把加密后的结果在控制台打印出来。
*/
import java.util.Scanner;
class Jia{
public static void main(String[]args){
Scanner sc=new Scanner(System.in);
System.out.println("请你输入一个九位数,我帮你加密");
int number=sc.nextInt();
System.out.println("你输入的数为:"+number);
String jieguo=Fe(number);
System.out.println("加密后的结果是:"+jieguo);
}
public static String Fe(int number){
int[]x=new int[9];
int y=0;
while(number>0){
x[y]=number%10;
y++;
number/=10;
}
for(int a=0;a<y;a++){
x[a]*=2;
x[a]%=5;
}
int c=x[0];
x[0]=x[y-1];
x[y-1]=c;
String s="";
for(int a=0;a<y;a++){
s+=x[a];
}
return s;
}
}
相关文章推荐
- OTL连接Oracle数据库
- C++ 获取vector容器最后一个元素
- 多设备适应的前端开发时代如何字体单位选择
- 检测WCF服务是否在线(动态执行WCF服务)
- spark streaming源码分析4 DStream相关API
- NSArray 排序用法
- 猜数字小游戏
- android 他们定义对话框
- 第三个失踪人员,查找在日本王军的朋友
- MyEclipse10安装checkStyle与findBugs插件--详细完美结局-费元星
- 快速了解安卓沉浸模式
- 高并发Web服务的演变:节约系统内存和CPU
- Scala学习第一步(变量、常量及函数定义)
- PFX证书文件制作
- IPV6地址格式
- 安卓注解那些事儿
- 黑板客爬虫闯关第二关
- STM32,你了解多少?(转载)
- 第四周项目3-单链表的应用(2)连接单链表
- C#实现对站点、程序池状态的监控,以及URL能正常返回的监控,状态异常,邮件预警