-
2022-03-10 15:21:24
def radix_any(): decimal_number = int(input("请输入10进制数")) asciil = int(input("请输入想转换成的进制")) if asciil <= 0: # 进制为负数时提醒 print("请输入正确进制数") elif decimal_number > asciil: k = "" while decimal_number >= asciil: # 目标数大于进制数时可以进行运算 quotient = int(decimal_number // asciil) # 取整数商 remainder = (decimal_number - quotient * asciil) # 取余 decimal_number = quotient # 将上一步整数商赋值给dacimal_number进行求商取余 k = k + str(remainder) if decimal_number < asciil: result = (k + str(decimal_number)) print(result[::-1]) # 翻转字符串得到结果 elif asciil > decimal_number > 0: # 目标数小于进制数且大于0时,结果为其本身 print(decimal_number) elif decimal_number < 0: # 目标数小于0时(为负数) c = str(decimal_number).replace("-", "") # 将负号“-”减去 k = "" decimal_number = int(c) while decimal_number >= asciil: # 执行正整数进制转换程序 quotient = int(decimal_number // asciil) # 取整数商 remainder = (decimal_number - quotient * asciil) # 取余 decimal_number = quotient # 将上一步整数商赋值给a进行求商取余 k = k + str(remainder) if decimal_number < asciil: result = (k + str(decimal_number)) + "-" # 追加“-”号 print(result[::-1]) # 翻转字符串得到结果
更多相关内容 -
2~62位任意进制转换方法(c++)
2021-01-01 10:10:51考虑好按照16位(short)还是32位(int)抑或64位(long long),先求出二进制补码(这时候就正负数就统一了),将二进制数转换为十进制后在转换为其他进制(如果有小伙伴知道如何直接将二进制转换为任意进制的方法可以留言... -
Java 小数进制转换,实现任意进制转换为任意进制的方法
2021-01-21 16:37:09废话不多上干货! /** * 个人数学工具 * * @author Suage */ class Convert { ... //输入进制 private int sysIn; //输出进制 private int sysOut; //输入实际值 private double actualValue; -
C语言实现十进制向任意进制转换
2018-12-27 11:21:40C语言实现十进制向任意进制转换代码,已经经过调试无问题。可以直接使用 -
Golang如何实现任意进制转换的方法示例
2021-01-21 18:12:02最近因为工作的需要,需要写个短链服务,用到了10->62进制,网上找了一个,可以转换最多76位进制的博客,现在分享出来,下面话不多说了,来一起看看详细的介绍吧。 压缩数据用,无损压缩 示例代码: package main ... -
任意进制转换为10进制,10进制转换成任意进制
2019-05-06 13:36:15任意进制转换为10进制,10进制转换成任意进制, -
C++任意进制转换
2014-12-04 09:54:46我的其他资源都是免费的,是对于c语言初学者的帮助比较大的,其中有单片机,ARM,数据结构,window编程,MFC编程,自己编写的小游戏。 -
Python实现任意进制间的转换 简单通俗易懂版本
2021-01-20 03:16:53写在前面: 最近在学习数据分析方向的课程,开始系统地学习Python,越来越对“人生苦短,故我用python”这句话有感触了,Python在某些方面确实有其过其他语言之处。...此外用Python做进制转换的优势有至少 -
任意进制转换
2021-01-18 14:16:30任意进制转换前言一、十进制转换成任意进制使用短除法即可二、任意进制转换成十进制代码如下: 前言 进制转换是人们利用符号来计数的方法。进制转换由一组数码符号和两个基本因素“基数”与“位权”构成。 基数是指...
前言
进制转换是人们利用符号来计数的方法。进制转换由一组数码符号和两个基本因素“基数”与“位权”构成。
基数是指,进位计数制中所采用的数码(数制中用来表示“量”的符号)的个数。
位权是指,进位制中每一固定位置对应的单位值。
一、十进制转换成任意进制
使用短除法即可
x是十进制的数,b是要转换成什么进制。
//短除法,实现十进制的数,向任意进制转换 string trans(int x,int b) { string r; int y; while(x) { y=x%b; if(y>=10) { r+=(y-10)+'A'; } else { r+=y+'0'; } x/=b; } reverse(r.begin(),r.end()); return r; }
二、任意进制转换成十进制
代码如下:
x任意进制的一个数,b是x是什么进制的数
int transInt(string x,int b) { int r=0; int len=x.size()-1; for(int i=0;i<=len;i++) { r+=(x[len-i]-'0')*pow(b,i); } return r; }
-
十进制与任意进制转换
2016-07-05 08:53:03将十进制与任意进制相与转换,这是用DELPHI程序实现进制转换函数。 -
易语言任意进制转换源码-易语言
2021-06-13 10:02:47易语言任意进制转换源码 -
任意进制转换 Java
2022-01-24 11:40:38另一个是将10进制数转换为任意进制。 需要注意的两点。 1.字符串索引为0的地方是最高位。乘方时要注意。 2.通过append生成的字符串是逆序的。需要reverse()操作。 public class SolutionC { public static void ...为了表达大于10进制的数字的表达。首先定义编码方式。
‘A’-'Z’表示10-35,‘a’-'z’表示36-61。
之后本文使用2个方法。一个是将任意数转换为10进制数。另一个是将10进制数转换为任意进制。
需要注意的两点。
1.字符串索引为0的地方是最高位。乘方时要注意。
2.通过append生成的字符串是逆序的。需要reverse()操作。public class SolutionC { public static void main(String[] args) { } private static String toany(long ten,int n) { StringBuilder sb=new StringBuilder(); while (ten!=0){ long temp=ten%n; if (temp>9&&temp<36){ sb.append((char)('A'+temp-10)); }else if(temp>35){ sb.append((char)('a'+temp-36)); }else { sb.append(temp); } ten=(ten-temp)/n; } return sb.reverse().toString(); } private static long todecimal(String s,int n) { long res=0; int l = s.length(); for (int i = 0; i < l; i++) { char temp=s.charAt(i); if(temp<='z'&&temp>='a'){ res+=(temp-'a'+36)*Math.pow(n,l-i-1); }else if(temp<='Z'&&temp>='A'){ res+=(temp-'A'+10)*Math.pow(n,l-i-1); }else { res+=(temp-'0')*Math.pow(n,l-i-1); } } return res; } }
-
Java 任意进制转换(两种方式)
2021-03-06 04:42:05本文提供两种Java实现任意进制转换的方法:方法一:利用 Integer 实现进制转换1、 Integer类的方法toBinaryString(),Integer.toOctalString(), Integer.toHexString()可实现十进制分别转换成二进制、八进制和十六...本文提供两种Java实现任意进制转换的方法:
方法一:利用 Integer 实现进制转换
1、 Integer类的方法toBinaryString(),Integer.toOctalString(), Integer.toHexString()可实现十进制分别转换成二进制、八进制和十六进制
2、Integer.valueOf(s, radix) 将第一个参数解释为用第二个参数指定的基数表示的有符号整数,换句话说就是将 s 以 radix 进制的形式转换为十进制。
代码:
public class ArbitraryConversion
{
public static void main(String[] args) {
System.out.println("==========十进制776转换到其它进制:==========");
int sjz = 776;
System.out.println("十进制转二进制: " + Integer.toBinaryString(sjz));
System.out.println("十进制转八进制: " + Integer.toOctalString(sjz));
System.out.println("十进制转十六进制: " + Integer.toHexString(sjz));
System.out.println("==========八进制1410转换到其它进制:==========");
String bjz = "1410";
System.out.println("八进制转十进制: " + Integer.valueOf(bjz, 8));
System.out.println("八进制转二进制: " + Integer.toBinaryString(Integer.valueOf(bjz , 8))); //八进制转十进制,十进制转二进制
System.out.println("八进制转十六进制: " + Integer.toHexString(Integer.valueOf(bjz, 8))); //八进制转十进制,十进制转十六进制
System.out.println("==========十六进制308转换到其它进制:==========");
String sljz = "308";
System.out.println("十六进制转十进制: " + Integer.valueOf(sljz , 16));
System.out.println("十六进制转二进制: " + Integer.toBinaryString(Integer.valueOf(sljz , 16))); //十六进制转十进制,十进制转二进制
System.out.println("十六进制转八进制: "+ Integer.toOctalString(Integer.valueOf(sljz, 16))); //十六进制转十进制,十进制转八进制
System.out.println("==========二进制1100001000转换到其它进制:==========");
String ejz = "1100001000";
System.out.println("二进制转十进制: " + Integer.valueOf(ejz, 2));
System.out.println("二进制转八进制: " + Integer.toOctalString(Integer.valueOf(ejz , 2))); //二进制转十进制,十进制转八进制
System.out.println("二进制转十六进制: "+ Integer.toHexString(Integer.valueOf(ejz, 2))); //二进制转十进制,十进制转十六进制
}
}
方法二:利用 BigInteger 实现进制转换。
利用BigInteger 实现进制转换比较简单,注释很详细。
import java.math.BigInteger;
/*
* BigIntegerArbitraryConversion
*/
public class BigIntegerArbitraryConversion {
public static void main(String[] args) {
System.out.println(change("1410", 8, 2)); // 八进制转二进制
System.out.println(change("1410", 8, 10)); // 八进制转十进制
System.out.println(change("1410", 8, 16)); // 八进制转十六进制
}
/**
* number 要转换的数
* from 原数的进制
* to 要转换成的进制
*/
private static String change(String number, int from, int to) {
return new BigInteger(number, from).toString(to);
}
}
-
易语言-任意进制转换任意进制开源 无模块
2021-06-25 19:19:50任意进制转换任意进制开源 无模块 -
C++任意进制转换源代码
2011-11-24 19:14:57源代码来的,经过运行唔错的,想交作业或者懒得去计算的可以下载去玩玩 -
C++实现的任意进制转换(数据结构——栈和队列)
2019-08-10 17:35:07C++语言实现带小数的任意进制转换,使用了数据结构中的栈和队列,在VC++6.0上编译运行通过。对于学习C++和数据结构有一定的参考意义! -
任意进制转换工具.rar
2021-04-09 13:53:33任意进制转换工具,方便快捷 -
Java实现任意进制转换
2021-03-17 12:34:55public class BinaryTest {//设置字符数组//可以添加任意不重复字符,提高能转换的进制的上限static char chs[] = new char[36];static {for(int i = 0; i < 10 ; i++) {chs[i] = (char)('0' + i);}for(int i = ... -
任意进制转换十进制 -- c语言
2020-10-25 11:48:03任意进制转换十进制 – 数据结构c语言队列操作实现 代码也不算是任意进制,最高只能到十六进制。见谅! 代码如下: #include <stdio.h> #include <stdlib.h> #include <string.h> #define MAXSIZE... -
JS任意进制转换.rar
2020-04-05 03:49:57JS任意进制转换.rar -
任意进制转换任意进制开源 无模块
2022-05-07 08:50:49任意进制转换任意进制开源 无模块。@E族x充耳不闻。 -
Java 任意进制整数转换
2016-03-12 19:27:38任意进制整数的转换,用十进制数作为中转,原则上不能超过10进制数能表示的最大整数。 -
Python 任意进制到任意进制转换 的实现代码
2021-01-25 18:15:21将一个数字 从任意进制 转换为 任意进制 的数值。 实现 Python2 def baseconvert(number, fromdigits, todigits): if str(number)[0] == '-': number = str(number)[1:] neg = 1 else: neg = 0 # make an... -
任意进制转换为十进制(十六进制转换为十进制)
2020-02-14 17:10:46三、任意进制转换为十进制 char charToHex( char bChar){ if ((bChar >= 0x30) && (bChar )) bChar -= 0x30; else if ((bChar >= 0x41) && (bChar ))//大写字母 bChar -= 0x37; else if ((bChar >= 0x61... -
Java 实现任意进制转换
2021-08-25 16:01:33(一)进制转换思想 先把任意进制转化为十进制 再把十进制转化为任意进制 本算法结合了十以下进制利用公式转换以及十以上进制调用函数转换 (二)问题分析 1.输入当前数进制 输入当前进制 m ,且保证 m>1 public ... -
任意进制转换(示例代码)
2021-01-29 08:09:201,十进制转二进制#includeintmain(){int i=0,n,a[32];//a[32]表示数组a里面有32个元素 printf("请输入一个十进制整数:");...}printf("十进制整数转换为二进制数是:");for(i--;i>=0;i--)//i自减直到i<... -
任意进制转换(2进制、8进制、16进制等)
2020-08-05 21:07:43今天网络赛有道题涉及进制转换,最后时间不够了,气死我了。还是对进制转换太生疏了,所以决定对进制转换总结一下。 -
python实现十进制转换成十六以内任意进制
2021-01-07 07:03:19十进制转换成二进制 十进制转换成二进制,采用的是“除以2求余数”的计算方法,如下所示: “除以2”的过程,得到的余数是从低到高的次序,而需要的带的输出是从高位到低位(35对应的二进制是100011),因此需要一... -
python实现——任意进制转换
2020-11-11 00:32:45思路:先转换为十进制,再由十进制转换为目标进制。 代码: def scale_transform_decimalism(M, num): # 转换为十进制 str_dict = '0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ' result = 0 j = 0 for i in range... -
非常详细和简洁的任意进制转换(python实现)
2020-06-14 17:26:06任意进制转换为10进制 举例: 二进制:1101 转为十进制为:从最低位(从左到右)开始遍历,1 * 2^0 + 0 * 2^1 + 1 * 2^2 + 1 * 2^3 = 1 +0 + 4 + 8 = 13 三进制:2101 转为10进制为:1 * 3^0 + 0 * 3^1 + 1 * 3^2 + ...