华为OD机试“HJ5 进制转换”Java编程解答

news2024/11/25 22:28:24

描述

写出一个程序,接受一个十六进制的数,输出该数值的十进制表示。

数据范围:保证结果在  1≤n≤231−1 

输入描述:

输入一个十六进制的数值字符串。

输出描述:

输出该数值的十进制字符串。不同组的测试用例用\n隔开。

示例1

输入:

0xAA

复制输出:

170

答案1

import java.util.*;

// 注意类名必须为 Main, 不要有任何 package xxx 信息
public class Main {
    public static void main(String[] args) {
        Scanner in = new Scanner(System.in);
        String input=in.nextLine();
        int num = 0;
        int j=0;
        for(int i=input.length()-1;i>1;i--){
            if((int)input.charAt(i)>=65)
                num+=((int)input.charAt(i)-55)*Math.pow(16,j++);
            else
                num+=((int)input.charAt(i)-48)*Math.pow(16,j++);
        }
       System.out.println(num);
    }
}

详解1

十六进制转换为十进制方法

  1. 将十六进制数的每个数字与对应的权重相乘。

    例如,对于十六进制数1A3F,分别将1A3F与权重相乘。
  2. 将这些乘积相加。

  3. 注意权重的变化。

    从右到左,权重依次为16的0次方、16的1次方、16的2次方,以此类推。

本方法有点投机,是已知字符ASCII码而且需要传入的字母全是大写情况下的做法

Math.pow(x,n)函数

在 Java 中,要计算一个数的几次方,您可以使用 Math.pow() 函数。这个函数接受两个参数,第一个参数是底数,第二个参数是指数。它会返回底数的指数次幂的结果。

例如,要计算 xn 次方,可以使用以下方式:

double result = Math.pow(x, n);

这将返回 xn 次方的结果。请注意,Math.pow() 返回一个 double 类型的结果,如果需要将其转换为整数,可以使用强制类型转换或者其他适当的方式进行处理。

答案2

import java.util.Scanner;
public class Main {
    public static void main(String[] args) {
        Scanner scanner = new Scanner(System.in);
        while (scanner.hasNext()) {
            String hexString = scanner.next();
            // 去除十六进制字符串的前缀(如果有)
            if (hexString.startsWith("0x") || hexString.startsWith("0X")) {
                hexString = hexString.substring(2);
            }
            // 将十六进制字符串转换为十进制数值
            int decimalValue = Integer.parseInt(hexString, 16);
            // 输出十进制数值
            System.out.println(decimalValue);
        }
        scanner.close();
    }
}

详解2 

 hexString.startsWith()函数用法

hexString.startsWith("0x") 是 Java 字符串的一个方法调用。它用于检查字符串 hexString 是否以指定的前缀 "0x" 开头。如果是,它将返回 true,否则返回 false

 Integer.parseInt()函数用法

Integer.parseInt() 是 Java 中的一个静态方法,用于将字符串解析为整数类型。它的作用是将给定的字符串表示的数字转换为整数值。

这个方法有两种重载形式:

  1. parseInt(String s): 接受一个字符串参数,将其解析为十进制的整数。
  2. parseInt(String s, int radix): 接受两个参数,第一个参数是要解析的字符串,第二个参数是解析时使用的基数(进制)。可以指定 2 到 36 之间的值作为基数,表示解析时使用的进制,如 2 表示二进制,8 表示八进制,16 表示十六进制。

在我们的例子中,我们使用 parseInt(String s, int radix) 方法的第二种形式,将十六进制字符串转换为十进制整数。我们使用基数参数设置为 16,表示解析时使用十六进制。这样,十六进制字符串中的字符会被解析为对应的十进制数值。

 

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1494220.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

OpenAI高管联名回击:马斯克曾提议并入特斯拉,认为OpenAI注定失败

丨划重点 ① OpenAI周二发文回应马斯克提起的诉讼,称对双方走到这一步感到很难过。 ② 这篇博文的作者包括了OpenAI五位高管,其中首席科学家苏茨凯弗已经久违露面。 ③ OpenAI证实,只从马斯克处获得不到4500万美元资金,其他支持者…

企业对接Walmart平台API流程 On-request Reports API(二)

对接On-request Reports API 1、对接指南1.1 报告生成时间1.2 报告保留期1.3 请求限制1.4 报告请求工作流如何申请报告第 1 步:申请取消报告第 2 步:获取报表可用性状态第 3 步:下载报告 URL 2、代码实现2.1、获取访问API的token2.2、构建公共…

【记录】IDA|IDA设置text view为默认,并解决IDA7.6打开新固件卡顿的问题

版本:IDA Pro 7.6 Graph View(控制流视图)其实我真的看得很少,因为遇到分析难题时总是是因为间接调用,它根本分析不出来。但是一开IDA它就自动分析这个特别卡。所以今天想彻底解决一下,让默认打开为Text V…

day7-网络编程

1>基于UDP的网络聊天室 Ser.c #include <myhead.h> #define SER_IP "10.211.55.9" // 服务器IP #define SER_PORT 9999struct user {char usrName[20];struct sockaddr_in cin; }; int main(int argc, char const *argv[]) {// 1.创建用于监听的套接字int…

2024-3-6-数据库作业

作业&#xff1a;数据库操作的增、删、改完成 &#xff08;目前只能实现静态管理&#xff09; 源代码&#xff1a; #include <myhead.h> void do_add(sqlite3 *ppDb) {char *errmsg NULL;char sql[128] "insert into Worker values(1001,小张,15000);";//…

《中学综合素质》黄金卷(二)

2.对下图漫画描述不正确的是&#xff08;A &#xff09;。 A.忽视了平等待生 B.忽视了学生的个性发展 C.忽视了学生的差异性 D.违背了素质教育观 8.“任何组织或者个人不得隐匿、毁弃、非法删除未成年人的信件、日记、电子邮件或者其 他网络通讯内容”&#xff0c;对照《中华…

离散数学例题——3.计数和集合论(集合与二元关系)

幂集与子集数目 集合运算 集合的证明 集合构建符号证明 用集合成员表证明 用集合运算定律证明 无限集、等势、无限可数集和无限不可数集的基数 关系的定义、个数 关系的表示 关系的运算 使用矩阵运算实现关系的运算 关系的证明 关系的性质 自反性和反自反性&#xff08;矩阵对…

大唐杯学习笔记:Day5

1.1 小区搜索 搜索流程 PLMN选择 自动模式&#xff1a;UE根据NAS的请求或自主地向NAS报告可用的PLMN 手动模式&#xff1a;通过手动选择一个可用的VPLMN获取正常服务 频点选择 5G NR中,3GPP主要指定了两个频率范围,一个是6GHZ以下,另一个是毫米波,分别称之为FR1和FR2。 N…

CorelDRAW Graphics Suite2024订阅版费用与永久版的区别

CorelDRAW Graphics Suite的订阅版是一种按周期付费的软件使用模式&#xff0c;允许用户以一定的费用在一段时间内访问和使用CorelDRAW Graphics Suite的全部或部分功能。这种模式通常不涉及软件的所有权转让&#xff0c;而是提供使用权。 CDR2024绿色版下载链接: https://pan…

显示高考天数倒计时——vba实现

以下代码实现高考倒计时&#xff1a; Sub 高考倒计时() 高考日期 CDate("06,07," & Year(Date)) If Date > 高考日期 Then高考日期 CDate("06-07-" & Year(Date) 1) End If 年月日 Year(Date) & "年" & Month(Date) &am…

【OpenGL的着色器03】内置变量和函数(gl_Position等)

目录 一、说明 二、着色器的变量 2.1 着色器变量 2.2 着色器内置变量 三、最常见内置变量使用范例 3.1 常见着色器变量 3.2 示例1&#xff1a; gl_PointSize 3.3 示例2&#xff1a;gl_Position 3.4 gl_FragColor 3.5 渲染点片元坐标gl_PointCoord 3.6 gl_PointCoo…

如何阅读“计算机界三大计算思维神书”之一 ——SICP

《计算机程序的构造和解释》&#xff08;Structure and Interpretation of Computer Programs&#xff0c;简记为SICP&#xff09;是MIT的基础课教材&#xff0c;出版后引起计算机教育界的广泛关注&#xff0c;对推动全世界大学计算机科学技术教育的发展和成熟产生了很大影响。…

【ESP32 IDF】I2C层次结构、I2C协议

文章目录 前言一、I2C的结构层次1.1 怎样在两个设备之间传输数据1.2 I2C如何传输数据1.3 硬件框图1.4 软件层次 二、IIC协议2.1 硬件连接2.2 I2C 总线的概念2.3 传输数据类比2.3 I2C信号2.4 I2C数据的含义 总结 前言 I2C&#xff08;Inter-Integrated Circuit&#xff09;是一…

可访问性使命:Facebook构建无障碍社交空间

在当今数字化时代&#xff0c;社交媒体已成为人们日常生活的重要组成部分&#xff0c;而Facebook作为全球最大的社交平台之一&#xff0c;其使命不仅在于连接世界&#xff0c;还在于构建一个无障碍的社交空间&#xff0c;让每个人都能参与其中。本文将深入探讨Facebook在可访问…

Flask入门三(Flask-session的使用、数据库链接池、wtforms、Flask定制命令、Flask-Cache)

文章目录 一、Flask-session使用1.使用方式一2.使用方式二3.读RedisSessionInterface源码4.flask-session补充 二、数据库连接池1.flask中使用mysql2.上述问题解决 使用数据库连接池1.第三方数据库连接池2.操作数据库不带池版3.池版和非池版压测 三、wtforms四、Flask定制命令1…

2024作品集流行封面设计技巧

本期不是关于如何安排作品集&#xff0c;而是关于目前国内市场上流行的作品集封面风格有哪些&#xff1f;如何实现&#xff1f;今天给大家带来了 5 种作品集设计风格&#xff0c;毛玻璃、弥散光、3D、插画、其他&#xff0c;一起往下看吧&#xff01; 毛玻璃 目前许多设计师都…

map和set(一)——关联式容器的常用接口使用及区别

一、关联式容器 在初阶阶段&#xff0c;我们已经接触过STL中的部分容器&#xff0c;比如&#xff1a;vector、list、deque、forward_list(C11)等&#xff0c;这些容器统称为序列式容器&#xff0c;因为其底层为线性序列的数据结构&#xff0c;里面 、存储的是元素本身。 那什么…

基于ACM32 MCU的两轮车充电桩方案,打造高效安全的电池管理

随着城市化进程的加快、人们生活水平的提高和节能环保理念的普及&#xff0c;越来越多的人选择了电动车作为代步工具&#xff0c;而两轮电动车的出行半径较短&#xff0c;需要频繁充电&#xff0c;因此在城市中设置两轮车充电桩就非常有必要了。城市中的充电桩不仅能解决两轮车…

NFTScan :什么是 ERC-404?深入解读 NFT 协议的未来

上月初&#xff0c;ERC-404 成为最首要热门的话题&#xff0c;ERC-404 是由 Pandora 团队在 2 月初为创作者和开发者等开源的实验性代币标准&#xff0c;其混合 ERC-20 / ERC-721 实现&#xff0c;具有原生流动性和碎片化等特点。伴随着早期的发展&#xff0c;越来越多参与者开…

Java基于微信小程序的旅游出行必备小程序,附源码

博主介绍&#xff1a;✌程序员徐师兄、7年大厂程序员经历。全网粉丝12w、csdn博客专家、掘金/华为云/阿里云/InfoQ等平台优质作者、专注于Java技术领域和毕业项目实战✌ &#x1f345;文末获取源码联系&#x1f345; &#x1f447;&#x1f3fb; 精彩专栏推荐订阅&#x1f447;…