【华为机试】—— 5.进制转换

题目

解法

import java.util.*;
public class Main{
        public static void main(String[] args){
            Scanner sc = new Scanner(System.in);
        
        while(sc.hasNext()){
            String input = sc.nextLine().toUpperCase();
            
            int res = 0;
            int base = 1;
            
            for(int i=input.length()-1;i>1;i--){
                char x = input.charAt(i);
                
                if('0' <= x && x <= '9'){
                    res += (x - '0') * base;
                }else {
                    res += ((x-'A') + 10) * base;
                }
                base *= 16;
            }
            
            System.out.println(res);
        }
     }
}
原文地址:https://www.cnblogs.com/bopo/p/9258894.html