基础练习 十进制转十六进制

时间限制:1.0s   内存限制:512.0MB

问题描述

十六进制数是在程序设计时经常要使用到的一种整数的表示方式。它有0,1,2,3,4,5,6,7,8,9,A,B,C,D,E,F共16个符号,分别表示十进制数的0至15。十六进制的计数方法是满16进1,所以十进制数16在十六进制中是10,而十进制的17在十六进制中是11,以此类推,十进制的30在十六进制中是1E。

给出一个非负整数,将它表示成十六进制的形式。

输入格式

输入包含一个非负整数a,表示要转换的数。0<=a<=2147483647

输出格式

输出这个整数的16进制表示

样例输入

30

样例输出

1E 分析数据规模在long范围之内,因此,直接调用封装好的方法实现。

import java.util.Scanner;

public class Main{

public static void main(String[] args) {

Scanner sc = new Scanner(System.in);

long number = sc.nextLong();

String arry = Long.toHexString(number);//十进制转十六进制

arry = arry.toUpperCase();

System.out.println(arry);

}

}

之后自己写了算法实现:16进制可理解为逢16进1,因此在循环中对十进制数进行 mod 16(十进制数不断累除16,产生新的十进制数),获取余数,再对余数进行判断,若<10,则该位为此余数。否则,10->A,11->B,12->C,13->D,14->E,15->F。通过建立StringBuilder对象 和append()方法,连接每位16进制数,其中获取到的16进制字符串为逆序的16进制字符串,需要进行逆序操作,最终转换为16进制字符串

import java.util.Scanner;

public class Main{

public static void main(String[] args) {

Scanner sc = new Scanner(System.in);

long number = sc.nextLong();

int remainder = 0;

int len;

StringBuilder st = new StringBuilder();

do{

remainder = (int) (number % 16);

number = number / 16;

switch (remainder) {

case 10:

st.append("A");

break;

case 11:

st.append("B");

break;

case 12:

st.append("C");

break;

case 13:

st.append("D");

break;

case 14:

st.append("E");

break;

case 15:

st.append("F");

break;

default:

st.append(remainder);

break;

}

}while(number >= 1);

len = st.toString().length();

char [] arry = st.toString().toCharArray();

st = new StringBuilder();

for(int i = len - 1; i >= 0; i--){

st.append(arry[i]);

}

System.out.println(st);

}

}

c语言蓝桥十进制转十六进制,蓝桥杯:基础练习 十进制转十六制相关推荐

  1. 蓝桥杯 基础练习 十进制转十六进制(C++)

    蓝桥杯 基础练习 十进制转十六进制(C++) 最近自己在练习,将正确的代码分享同时也是记录便于查看.但有的可能写的太复杂,不一定是最简便的代码. 这个是我最近学习了一点关于栈的算法,利用栈来写的 问题 ...

  2. 蓝桥杯 基础练习 十进制转十六进制(水题,进制转换)

    基础练习 十进制转十六进制 时间限制:1.0s   内存限制:512.0MB 问题描述 十六进制数是在程序设计时经常要使用到的一种整数的表示方式.它有0,1,2,3,4,5,6,7,8,9,A,B,C ...

  3. c语言蓝桥十进制转十六进制,蓝桥杯 基础练习 十进制转十六进制

    友情提示:此篇文章大约需要阅读 2分钟23秒,不足之处请多指教,感谢你的阅读. 问题描述 十六进制数是在程序设计时经常要使用到的一种整数的表示方式.它有0,1,2,3,4,5,6,7,8,9,A,B, ...

  4. 蓝桥杯 基础练习 十进制转十六进制

    import java.util.*;public class Main {public static void main(String[] args) { Scanner sc = new Scan ...

  5. 蓝桥杯 基础练习 十进制转换为16进制

    资源限制 内存限制:512.0MB   C/C++时间限制:1.0s   Java时间限制:3.0s   Python时间限制:5.0s 问题描述 十六进制数是在程序设计时经常要使用到的一种整数的表示 ...

  6. 蓝桥杯基础练习合集一(C语言) 1.A+B问题2.数列排序3.十六进制转八进制4.十六进制转十进制5.十进制转十六进制

    目录 1.A+B问题 2.数列排序 3.十六进制转八进制 4.十六进制转十进制 5.十进制转十六进制 1.A+B问题 问题描述 输入A.B,输出A+B. 输入格式 输入的第一行包括两个整数,由空格分隔 ...

  7. 蓝桥杯试题 基础练习 十进制转十六进制

    蓝桥杯试题 基础练习 十进制转十六进制 C/C++ 资源限制 时间限制:1.0s 内存限制:512.0MB 问题描述 十六进制数是在程序设计时经常要使用到的一种整数的表示方式.它有0,1,2,3,4, ...

  8. 蓝桥杯——基础练习——十六进制转十进制

    package com.study.蓝桥杯.基础练习;/* 问题描述从键盘输入一个不超过8位的正的十六进制数字符串,将它转换为正的十进制数后输出.注:十六进制数中的10~15分别用大写的英文字母A.B ...

  9. 【蓝桥杯】基础练习 十进制转十六进制

    试题 基础练习 十进制转十六进制 资源限制 时间限制:1.0s 内存限制:512.0MB 问题描述. 十六进制数是在程序设计时经常要使用到的一种整数的表示方式.它有0,1,2,3,4,5,6,7,8, ...

最新文章

  1. Struts2 Cannot create a session after the response has been committed 一个不起眼的错误
  2. 一个没有意义的宇宙我们很难想象
  3. leetcode 43. 字符串相乘(Multiply Strings)
  4. 【WSN同步捕获】无线传感器网络的同步捕获和跟踪误差的MATLAB仿真
  5. 多对多关联查询sql语句
  6. 获取某个日期是一年中的第几周
  7. 我的技术回顾那些与ABP框架有关的故事-2017年
  8. JDK动态代理和CGLib动态代理简单演示
  9. 为Pokémon Go而生的聊天软件GoChat,坐拥百万用户却快要破产
  10. vue根据屏幕大小适配表格高度
  11. 【leetcode】sort list(python)
  12. php i方法和get的区别,浅析PHP中的i++与++i的区别及效率
  13. logging日志模块 , 序列化json pickle , 随机数random
  14. 海康威视工业相机使用
  15. Justice 「未见系列 2」随夏而至,总有一款让你心动的配色!
  16. python重复import_Python 中循环 import 造成的问题如何解决?
  17. Linux网络管理18:DHCP服务器
  18. 王者荣耀英雄分析--孙悟空
  19. 六边形2048小游戏
  20. ArcGis将2000国家大地坐标系转WGS84

热门文章

  1. HTML(Hyper Text Markup Language)
  2. 河北四方承建大数据中心
  3. CCF CSP 数据中心
  4. golang web开发
  5. vue 设置动态 ref
  6. 严厉!32篇硕士论文“不合格”,同门论文将被重点抽查!
  7. 关于windows11下,如何解决不小心把user用户名设置为中文的问题
  8. 推荐一本有关嵌入式系统事件驱动编程的图书
  9. 游戏人工智能AI会议
  10. thoughtworks 笔试题及答案