10进制转化成其他进制

2024-09-02 15:08
文章标签 进制 转化成

本文主要是介绍10进制转化成其他进制,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

10进制转化成其他进制

 

 

public class RadixChange {
public static void main(String[] args) 
{
Scanner sc=new Scanner(System.in);
int num=sc.nextInt();
//转化成二进制
toBinary(num);
//转化成八进制
toOctal(num);
//转化成十六进制
toHex(num);
sc.close();
}
/**
* 十进制转十六进制第一种方法
* @param num 一个十进制数
*/
public static void toShiLiu(int num)
{
int[] arr = new int[8];
int index = arr.length;
while(num!=0)
{
arr[--index] = num&15;
num = num>>>4;
}
for(;index<arr.length;index++)
{
if(arr[index]>9)
System.out.print((char)(arr[index]-10+'a'));
else
System.out.print(arr[index]);
}
}
/**十进制转十六进制第二种方法----查表法
* @param num 一个十进制数
*/
public static void shiLiu(int num)
{
char[] ch={'0','1','2','3','4','5','6','7','8','9','a','b','c','d','e','f'};
char[] arr = new char[8];
int index = arr.length;
while(num!=0)
{
int n = num&15;
arr[--index] = ch[n];
num = num>>>4;
}
for(;index<arr.length;index++)
{
System.out.print(arr[index]);
}
}
/**十进制转8进制
* @param num 一个十进制数
*/
public static void ba(int num)
{
char[] ch={'0','1','2','3','4','5','6','7'};
char[] arr = new char[11];
int index = arr.length;
while(num!=0)
{
int n = num&7;
arr[--index] = ch[n];
num = num>>>3;
}
for(;index<arr.length;index++)
{
System.out.print(arr[index]);
}
}
/**十进制转2进制
* @param num 一个十进制数
*/
public static void er(int num)
{
char[] ch={'0','1'};
char[] arr = new char[32];
int index = arr.length;
while(num!=0)
{
int n = num&1;
arr[--index] = ch[n];
num = num>>>1;
}
for(;index<arr.length;index++)
{
System.out.print(arr[index]);
}
}
/**提取出一个通用的进制转换方法
* @param num 一个十进制数
* @param base 
* @param off
*/
public static void toAny(int num,int base,int off)
{
char[] ch={'0','1','2','3','4','5','6','7','8','9','a','b','c','d','e','f'};
char[] arr = new char[32];
int index = arr.length;
while(num!=0)
{
int n = num&base;
arr[--index] = ch[n];
num = num>>>off;
}
for(;index<arr.length;index++)
{
System.out.print(arr[index]);
}
}
public static void toBinary(int num)
{
toAny(num,1,1);
}
public static void toOctal(int num)
{
toAny(num,7,3);
}
public static void toHex(int num)
{
toAny(num,15,4);
}
}


 

这篇关于10进制转化成其他进制的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/1130295

相关文章

usaco 1.2 Palindromic Squares(进制转化)

考察进制转化 注意一些细节就可以了 直接上代码: /*ID: who jayLANG: C++TASK: palsquare*/#include<stdio.h>int x[20],xlen,y[20],ylen,B;void change(int n){int m;m=n;xlen=0;while(m){x[++xlen]=m%B;m/=B;}m=n*n;ylen=0;whi

uva 10061 How many zero's and how many digits ?(不同进制阶乘末尾几个0)+poj 1401

题意是求在base进制下的 n!的结果有几位数,末尾有几个0。 想起刚开始的时候做的一道10进制下的n阶乘末尾有几个零,以及之前有做过的一道n阶乘的位数。 当时都是在10进制下的。 10进制下的做法是: 1. n阶位数:直接 lg(n!)就是得数的位数。 2. n阶末尾0的个数:由于2 * 5 将会在得数中以0的形式存在,所以计算2或者计算5,由于因子中出现5必然出现2,所以直接一

Unity数据持久化 之 一个通过2进制读取Excel并存储的轮子(4)

本文仅作笔记学习和分享,不用做任何商业用途 本文包括但不限于unity官方手册,unity唐老狮等教程知识,如有不足还请斧正​​ Unity数据持久化 之 一个通过2进制读取Excel并存储的轮子(3)-CSDN博客  这节就是真正的存储数据了   理清一下思路: 1.存储路径并检查 //2进制文件类存储private static string Data_Binary_Pa

Unity数据持久化 之 一个通过2进制读取Excel并存储的轮子(3)

本文仅作笔记学习和分享,不用做任何商业用途 本文包括但不限于unity官方手册,unity唐老狮等教程知识,如有不足还请斧正​​ Unity数据持久化 之 一个通过2进制读取Excel并存储的轮子(2) (*****生成数据结构类的方式特别有趣****)-CSDN博客 做完了数据结构类,该做一个存储类了,也就是生成一个字典类(只是声明)  实现和上一节的数据结构类的方式大同小异,所

itoa()函数,10进制转换到(2~36)进制

先看下itoa()的函数说明吧: 功 能:把一整数转换为字符串   用 法:char *itoa(int value, char *string, int radix);    详细解释:itoa是英文integer to array(将int整型数转化为一个字符串,并将值保存在数组string中)的缩写.    参数:  value: 待转化的整数。            radix:

Unity数据持久化 之 一个通过2进制读取Excel并存储的轮子(2) (*****生成数据结构类的方式特别有趣****)

本文仅作笔记学习和分享,不用做任何商业用途 本文包括但不限于unity官方手册,unity唐老狮等教程知识,如有不足还请斧正​​ Unity数据持久化 之 一个通过2进制读取Excel并存储的轮子(1)-CSDN博客 本节内容 实现目标 通过已经得到的Excel表格数据,生成对应类对象(不赋值),一张表就是一个对象,其中包含了如下的字段  就像这样子  实现思路 上

在VB.net中,如何把20240906转化成日期格式

==标题== vb.net中,如何把20240906转化成日期格式 ==正文== 在 VB.NET 中,将一个数字字符串(如 "20240906")转换为日期格式,你可以使用 `DateTime.Parse` 或 `DateTime.TryParse` 方法。这些方法可以将符合日期格式的字符串解析为 `DateTime` 对象。以下是如何将 "20240906" 这样的字符串转换为日期格式的示

[C/C++入门][进制原理]31、求分数序列和

题目来自于信息学奥赛 1078 分析: 这道题看起来比较复杂,实际上只需要通过两个公式,一次性求出分母和分子,然后把这个求出来的数加入到变量和中。甚至都不需要知道总共游哪些数。数组都用不上。循环就能解决。 #include <iostream>#include <iomanip> // 用于格式化输出using namespace std;int main() {double s

【自然语言处理 词库建设】怎样将搜狗的细胞词库scel格式转化成txt格式

搜狗词库:https://pinyin.sogou.com/dict/ 1、先下载搜狗词库到本地,文件格式为.scel后缀 2、利用python3 自动转换成txt python3版本: # -*- coding:utf-8 -*-import structimport os# 由于原代码不适用python3且有大量bug# 以及有函数没有必要使用且一些代码书写不太规范或冗余#在原有

Java生成随机数工具类,进制之间的转换工具类,获取指定时间,时间格式转换工具类

废话不多说,贡献一下code 1.编号生成工具 import org.apache.commons.lang3.StringUtils;import java.math.BigInteger;import java.text.SimpleDateFormat;import java.util.Date;import java.util.Random;/*** 编号生成工具*/@