某个公司采用公用电话传递数据,数据是四位的整数,在传递过程中是加密的,加密规则如下:每位数字都加上5,然后用 和除以10的余数代替该数字,再将第一位和第四位交换,第二位和第三位交换。

解题思路:写一个转换的函数,用a b c d依次代替每一位的值,求得值之后再进行加5除以10的转换,最后再计算这个数本身的时候再把 ad bc 位置互换


代码:public class Main9 {

    public static void main(String[] args) {
        // TODO Auto-generated method stub
        Scanner input = new Scanner(System.in);
        int n = input.nextInt();
        int sum=transform(n);
        System.out.println("转换后的数字是:"+sum);

    }
    public static int  transform(int n){
        int sum=0;
        int a,b,c,d;
        a=n/1000;
        b=(n/100)%10;
        c=(n/10)%10;
        d=n%10;
        a=(a+5)/10;
        b=(b+5)/10;
        c=(c+5)/10;
        d=(d+5)/10;
        sum=d*1000+a+b*10+c*100;
        return sum;
    }

}

你可能感兴趣的:(算法基础题)