最近回顾了下数据结构及算法,以下是用java和js实现的十进制数转换N进制。
java实现
/**
* baseString 递归调用
* @param num 十进制数
* @param base 要转换成的进制数
*/
public static String baseString(int num,int base) {
String str = "", digit = "0123456789abcdef";
if(num == 0){
return "";
}else {
str = baseString(num / base,base);
return str + digit.charAt(num % base);
}
}
js实现
/**
* recursive 递归调用
* @param {Object} num 十进制数
* @param {Object} base 要转换成的进制数
*/
function recursive(num, base) {
var str = "", digit = "0123456789abcdef";
if(num==0){
return "";
}else {
//js除运算不清除小数,用Math.floor清一下
str = recursive(Math.floor(num/base),base);
return str + digit.charAt(num%base);
}
}
分享到:
相关推荐
数据结构,递归实现十进制数转二进制数,C++实现,可多次输入数
描述“这个程序是用来转换数制时用的,可以将任意一个十进制的数转换成n(16以下)进制的数。”表明了程序的主要用途,即将十进制数转换成其他进制数。这个描述也表明了程序的通用性,可以将任意一个十进制数转换成...
十进制转换为二进制可以分为整数部分和小数部分。整数部分使用除2取余法,即每次将整数部分除以2,余数为该位权上的数,而商继续除以2,余数又为上一个位权上的数,这个步骤一直持续下去,直到商为0为止,最后读数...
用递归实现十进制和N进制之间的转换 很好用的
根据给定文件的信息,我们可以提炼出以下相关的IT知识点: ...这段代码实现了将一个十进制正整数N转换为d进制数的功能,其中d的范围为2到9。通过使用循环结构和数组,能够有效地完成进制转换任务。
//base用来保存用户欲转换的进制基数 int len; //衡量arr的长度 double sum=0,a=0; //sum是用户输入的浮点数大小 cout请输入一个浮点型整数的小数部分"; cin>>arr; len=strlen(arr); for(int i=0;i;i++) { ...
在易语言中实现递归算法进行进制转换是一项基础且重要的任务,尤其是将十进制数转换为二进制数,这对于理解和学习计算机底层原理非常有帮助。 递归算法是一种在函数内部调用自身的方法,通过重复执行相同的基本操作...
题目要求通过C语言编程实现从键盘输入一个十进制数,并将其转换为二进制、八进制和十六进制数,最后将这三种不同进制的数值同时输出。 ### 二、基础知识回顾 #### 1. 进制的概念 在计算机科学中,我们经常接触到...
本文将深入探讨如何将一个十进制整数m转换成2至16进制的字符串,重点使用VB6.0(Visual Basic 6.0)编程语言进行源代码编写。VB6.0是微软公司开发的一款面向对象的可视化编程工具,它提供了丰富的控件和函数库,使得...
十进制数转换为二进制数是一个在计算机科学和信息技术中经常使用的基础操作。二进制是计算机内部用于表示数据的数制,它只包含两个数字:0和1。而十进制是我们日常生活中最常用的计数系统,它包含十个数字,从0到9。...
同样,我们可以先将十进制转换为二进制,然后每四位二进制数转换为一位十六进制数。例如,十进制数240(二进制11110000)转换为十六进制是F0,因为1111对应于15(F),0000对应于0。 在C语言中实现这些转换,主要...
// 函数声明:递归方式将十进制转换为二进制 void f(int n); int main() { int n; while (1) { scanf("%d", &n); if (n ) break; // 如果输入负数,则结束循环 if (n == 0) printf("0"); // 特殊处理0的情况 ...
在递归算法中,这些运算可能被用来解决位级别的问题,例如二进制数的比较、转换、提取特定位等。 `content.txt`这个文件很可能是源码的主要部分,包含具体的易语言代码实现。通常,源码会定义一个或多个函数,这些...
这个"改进版"的C++实现不仅提供了将正十进制数转换为二进制的功能,而且还支持负数的转换,这涉及到二进制补码的概念。下面我们将详细探讨这些知识点。 1. **二进制表示**: 二进制是一种只使用0和1的数字系统,是...
C++语言,分别用栈和递归来实现十进制转换为任一进制。
2. **十进制转二进制**:可以使用除2取余法,将十进制数不断除以2,取余数,然后倒序排列这些余数,就得到了二进制表示。递归版本中,每次调用都会处理下一个余数,直到商为0。 3. **其他进制转换**:八进制和十六...
十进制转换二进制计算机是采用二进制存储的,计算机的二进制编码方式也分为原码,反码,补码方法。这是一个把十进制数字转换到它的二进制原码的算法,希望能给大家一些启发吧!这个算法我是用VB6写的,其中用到了...
例如,`十进制数转化为二进制数递归4.cpp`和`十进制转化为二进制递归解法3.cpp`等文件可能就是基于这个原理实现的。 2. **多种进制转换**: - 除了二进制转换,一些程序如`十进制数转化为2、8、16或32进制数.cpp`...
本文主要介绍了C语言用栈实现十进制转换为二进制的方法,结合实例形式分析了C语言栈的定义及进制转换使用技巧。 一、栈的定义 在C语言中,栈是一种特殊的数据结构,它遵循先进后出的原则。栈可以用来存储和处理...