算法提高 P0102

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

提交此题

  用户输入三个字符,每个字符取值范围是0-9,A-F。然后程序会把这三个字符转化为相应的十六进制整数,并分别以十六进制,十进制,八进制输出,十六进制表示成3位,八进制表示成4位,若不够前面补0。(不考虑输入不合法的情况)

输入

  1D5

输出

(注意冒号后面有一个空格)

  Hex: 0x1D5

  Decimal: 469

  Octal: 0725

import java.util.Scanner;

public class P0102 {
public static void main(String[] args) {
Scanner s = new Scanner(System.in);
String x = s.next();//输入字符串
String t = Integer.valueOf(x, 16).toString();//将其转化为16进制
/**将字符串类型t转化为整型ten*/
char[] tt = new char[4];
int[] ttt = new int[4];
int ten = 0;
for (int i = 0; i < t.length(); i++) {
tt[i] = t.charAt(i);//先将字符串转化为字符
ttt[i] = tt[i] - '0';//将字符转化为整型
ten = ten * 10 + ttt[i];
}
/**判断字符位数,若不够前面补0。*/
if (x.length() == 1)
System.out.println("Hex: 0x00" + x);
else if (x.length() == 2)
System.out.println("Hex: 0x0" + x);
else if (x.length() == 3)
System.out.println("Hex: 0x" + x); System.out.println("Decimal: "+t);//输出十进制数
String e = Integer.toOctalString(ten);//将十进制转化为8进制
/**判断字符位数,若不够前面补0。*/
if (e.length() == 1)
System.out.println("Octal: 000" + e);
else if (e.length() == 2)
System.out.println("Octal: 00" + e);
else if (e.length() == 3)
System.out.println("Octal: 0" + e);
if (e.length() == 4)
System.out.println("Octal: " + e); }}

最新文章

  1. Y-TDC 的一些函数
  2. dubbo入门示例
  3. HTTPS 和 HTTP
  4. MongoDB释放磁盘空间
  5. Java 设计模式泛谈&amp;装饰者模式和单例模式
  6. windows环境下局域网内无法访问apache站点
  7. EntityValidationErrors
  8. 安装配置tomcat
  9. 插入到Mysql数据库中的汉字乱码
  10. 在图层上使用CATransform3D制做三维动画-b
  11. Unty3D动态加载图片
  12. 更换centos源
  13. Unity 接MM横屏闪退的原因
  14. cocos2d-x3.6 连连看完整源代码
  15. dede内容页调用图片集下所有图片方法!
  16. MacOS和iOS开发中异步调用与多线程的区别
  17. [20181226]简单探究cluster table.txt
  18. 2018. first week now at home
  19. SQL-1 选取表中某一属性最大值的所有信息 查找最晚入职员工的所有信息
  20. php-- orther

热门文章

  1. Python爬虫丨大众点评数据爬虫教程(2)
  2. 【编程之美】常用于单片机的接口适配器模式C语言实现
  3. [csu1603]贪心
  4. Python --函数学习3 (将函数存储在模块中)
  5. CSS学习—day1
  6. dokcer入门
  7. 关于python中第三方库安装方法和问题解决
  8. 流复制-pg_basebackup (有自定义表空间)
  9. oracle的操作-表空间
  10. 你真的了解负载均衡中间件nginx吗?