A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© 从不闪躲 初级黑马   /  2014-9-11 23:24  /  910 人查看  /  3 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

/*
某个公司采用公用电话传递数据信息,数据8位的整数,为了确保安全,在传递过程中需要加密,加密规则如下:
    首先将数据倒序,然后将每位数字都加上5,再用和除以10的余数代替该数字,
    最后将第一位和最后一位数字交换。 请任意给定8位的整数,然后,把加密后的结果在控制台打印出来。
*/
class JiaMi
{
public static void main(String[] args)
{
  aaa(12345678);
}
public static void aaa(int i){
  System.out.println(i);
  System.out.println("====================================");
  //球各位数字,再进行倒叙
  int qianWan=i/10000000;
  int baiWan=i/1000000%10;
  int shiWan=i/100000%10;
  int wan=i/10000%10;
  int qian=i/1000%10;
  int bai=i/100%10;
  int shi=i/10%10;
  int ge=i%10;
  int shu=ge*10000000+shi*1000000+bai*100000+qian*10000+wan*1000+shiWan*100+baiWan*10+qianWan;
  System.out.println(shu);
  System.out.println("====================================");
  //求倒叙后的各位数字
  qianWan=shu/10000000;
  baiWan=shu/1000000%10;
  shiWan=shu/100000%10;
  wan=shu/10000%10;
  qian=shu/1000%10;
  bai=shu/100%10;
  shi=shu/10%10;
  ge=shu%10;
  //各位数字加5的和对10取模
  qianWan=(qianWan+5)%10;
  baiWan=(baiWan+5)%10;
  shiWan=(shiWan+5)%10;
  wan=(wan+5)%10;
  qian=(qian+5)%10;
  bai=(bai+5)%10;
  shi=(shi+5)%10;
  ge=(ge+5)%10;
  shu=ge*10000000+baiWan*1000000+shiWan*100000+wan*10000+qian*1000+bai*100+shi*10+qianWan;
  System.out.println(shu);
  System.out.println("====================================");
}
}

3 个回复

正序浏览
思维 发表于 2014-9-12 10:43
你写的程序目测很复杂的样子!

已用数组解决
回复 使用道具 举报
思维 发表于 2014-9-12 10:43
你写的程序目测很复杂的样子!

开始的写的,没有给个方法封装改进.
回复 使用道具 举报
你写的程序目测很复杂的样子!
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马