黑马程序员技术交流社区

标题: 这题给绕晕了 [打印本页]

作者: adolph    时间: 2015-3-16 00:13
标题: 这题给绕晕了
        某个公司采用公用电话传递数据信息,数据是小于8位的整数,
        为了确保安全,在传递过程中需要加密,加密规则如下:
        首先将数据倒序,然后将每位数字都加上5,再用和除以10的余数代替该数字,
        最后将第一位和最后一位数字交换。
        请任意给定一个小于8位的整数,
        然后,把加密后的结果在控制台打印出来。


作者: wf111sxwf    时间: 2015-3-17 01:21
  1. package com.itheima.test;

  2. public class NumberTest {
  3.         /**
  4.          * 某个公司采用公用电话传递数据信息,数据是小于8位的整数, 为了确保安全,在传递过程中需要加密,加密规则如下:
  5.          * 首先将数据倒序,然后将每位数字都加上5,再用和除以10的余数代替该数字, 最后将第一位和最后一位数字交换。 请任意给定一个小于8位的整数,
  6.          * 然后,把加密后的结果在控制台打印出来。
  7.          *
  8.          *
  9.          */
  10.         public static void main(String[] args) {
  11.                 // 获取给定的八位数 可以用流对象和Scanner来获取 为了简单 这里写死一个数

  12.                 int num = 12252555;
  13.                 encryptionNumber(num);

  14.         }

  15.         private static void encryptionNumber(int num) {
  16.                 StringBuilder sb = new StringBuilder();
  17.                 sb.append(num);
  18.                 sb = sb.reverse();

  19.                 int sum = 0;
  20.                 for (int i = 0; i < sb.length(); i++) {
  21.                         char c = sb.charAt(i);
  22.                         int j = Integer.parseInt(String.valueOf(c)) + 5;
  23.                         sum += j;
  24.                 }
  25.                 // 这里由于精确度的问题所以讲数强转成double类型
  26.                 double sum1 = (double) sum / 10;
  27.                 System.out.println(sum1);
  28.                 StringBuilder sb1 = new StringBuilder();
  29.                 sb1.append(sum1);
  30.                 System.out.println(sb1);
  31.                 char first = sb1.charAt(0);
  32.                 char last = sb1.charAt(sb1.length() - 1);
  33.                 sb1.setCharAt(0, last);
  34.                 sb1.setCharAt(sb1.length() - 1, first);
  35.                 System.out.println(sb1.toString());

  36.         }

  37. }
复制代码
大概做了一下  可能方法不是最好的 仅供参考




欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2