精华内容
下载资源
问答
  • 十进制转r进制
    2020-11-22 10:18:57

    十进制转R进制

    整数部分

    如果十进制整数转5进制整数,我们可以用“除R法”。

    除R法

    比如说20,
    20/5=4…0
    4/5=0…4
    从下往上的余数 40就是20转5进制后的结果。

    小数部分

    如果十进制小数转2进制小数,我们可以用“乘R法”。

    乘R法

    比如说0.875,
    0.875*2=1.75
    0.75*2=1.5
    0.5*2=1
    从下往上的整数部分 0.111就是20转5进制后的结果。

    小结

    今天我们知道了十进制转R进制。

    更多相关内容
  • c++实现十进制转换成16进制 代码如下://Decimal to hexadecimal number//programming by : Erfan Nasoori//Date of send : 2009/1/11 #include void main(){ int x,y,i; int d,n=1; int * r; char h[16]={‘0...
  • 第一个数代表要进行转换的十进制数。第二个代表要转换的进制R #include<iostream> using namespace std; char arr[105];//因为进制超过10需要用字母来表示,所以用char数组 int main(){ int num,R,n,now...
    一个十进制数M可以表示为多个R次方的和

    (M)R=a1a2...an;

    M=a1*R^n+a2*R^(n-1)+...+an*R^0;

    所以M每次对R取余,可得到从左到右每位次上的数

    输入两个数,第一个数代表要进行转换的十进制数。第二个代表要转换的进制R

    #include<iostream>
    using namespace std;
    
    char arr[105];//因为进制超过10需要用字母来表示,所以用char数组
    
    int main(){
        int num,R,n,now;
        cin>>num>>R;
        if(num<0){
            cout<<"-";
            num=-num;
        }
        n=0;
        while(num){
            now=num%R;
            num/=R;
            if(now<=9){
                arr[n++]='0'+now;
                //char数组转换数字需要加上'0'
            }
            else{
                arr[n++]='A'+now-10;
                //B表示为'A'+(11-10)
            }
        }
        for(int i=0;i<n;i++){
            cout<<arr[n-1-i];
        }
    }

    展开全文
  • 十进制转换R进制;R进制转十进制

    千次阅读 2018-07-31 15:51:49
    十进制转换R进制 (1)直接用C++里的函数,(不建议) itoa函数:它的功能是将一个10进制的数转化为n进制的值、其返回值为char型。 char str[105]; itoa(num, str, R);//num转R进制,存到str中 (2)自定义函数...

    十进制转换R进制

    (1)直接用C++里的函数,(不建议)

    itoa函数:它的功能是将一个10进制的数转化为n进制的值、其返回值为char型。

    char str[105];

    itoa(num, str, R);//num转R进制,存到str中

    (2)自定义函数 

    int to_Other(int n,int r)
    {
    	int s[105],len=0;
    	if(n==0)printf("0");
    	while(n){
    		int t=n%r;
    		n=n/r;
    		s[len++]=t;
    	}
    	char sh[105];
    	for(int k=len-1,j=0;k>=0;k--,j++)
    	{
    		if(s[k]>=10){
    			sh[j]=(char)(s[k]+55);
    			printf("%c",sh[j]);
    		}
    		else {
    			sh[j]=(char)(s[k]+'0');
    			printf("%c",sh[j]);
    		}
    	}
    }

    (3)通过库函数实现八进制、十六进制输出:

    #include <iostream>
    using namespace std;
    
    int main()
    {
    	int test=64;
    	cout<<"DEC:"<<test<<endl;
    	cout<<"OCT:"<<oct<<test<<endl;//八进制
    	cout<<"HEX:"<<hex<<test<<endl;//十六进制
    
    	return 0;
    }
     

    R进制转换十进制

    (1)直接用C++里的函数,(不建议)

    strtol函数:它的功能是将一个任意1-36进制数转化为10进制数,返回是long int型。

    函数为long int strtol(const char *nptr, char **endptr, int base)

    base是要转化的数的进制,非法字符会赋值给endptr,nptr是要转化的字符,例如:

    char buffer[20]="10379cend$3";
    char *stop;
    printf("%d\n",strtol(buffer, &stop, 8));
    printf("%s\n", stop);
    

    输出结果:
    543
    9cend$3

    将一个8进制转化为10进制,读取1037,其他后面的为非法字符,转化结果以int型输出来。

    另外,如果base为0,且字符串不是以0x(或者0X)开头,则按十进制进行转化。如果base为0或者16,并且字符串以0x(或者0X)开头,那么,x(或者X)被忽略,字符串按16进制转化。如果base不等于0和16,并且字符串以0x(或者0X)开头,那么x被视为非法字符。

    最后,需要说明的是,对于nptr指向的字符串,其开头和结尾处的空格被忽视,字符串中间的空格被视为非法字符。

    (2)自定义函数

    int to_Ten(char sh[],int r)
    {
    	int len=strlen(sh),n=0;
    	double sum=0,k;
    	for(int i=len-1;i>=0;i--)
    	{
    		if(sh[i]>='A')k=(sh[i]-'7')*pow(r*1.0,n++);
    		else k=(sh[i]-'0')*pow(r*1.0,n++);
    		sum+=k;
    	}
    	printf("%.0lf\n",sum);
    }

     

    参考:

    https://blog.csdn.net/wangjunchengno2/article/details/78690248

    https://blog.csdn.net/coastline_x/article/details/78975567

    https://www.cnblogs.com/yxwkf/p/4085733.html

    展开全文
  • 进制转换(十进制转R进制)

    千次阅读 2021-07-26 05:32:11
    十进制 → 二进制方法:除2取余法,即每次将整数部分除以2,余数为该位权上的数,而商继续除以2,余数又为上一个位权上的数,这个步骤一直持续下去,直到商为0为止,最后读数时候,从最后一个余数读起,一直到最前面...

    除R取余法,然后从最后的余数向前读。

    十进制 → 二进制

    方法:除2取余法,即每次将整数部分除以2,余数为该位权上的数,而商继续除以2,余数又为上一个位权上的数,这个步骤一直持续下去,直到商为0为止,最后读数时候,从最后一个余数读起,一直到最前面的一个余数。

    例:将十进制的(43)D转换为二进制的步骤如下:

    1. 将商43除以2,商21余数为1;

    2. 将商21除以2,商10余数为1;

    3. 将商10除以2,商5余数为0;

    4. 将商5除以2,商2余数为1;

    5. 将商2除以2,商1余数为0;

    6. 将商1除以2,商0余数为1;

    7. 读数,读数字从最后的余数向前读,101011,即(43)D=(101011)B。

    说明:因为最后一位是经过多次除以2才得到的,因此它是最高位。

    191446019539875.png

    十进制 → 八进制

    方法1:除8取余法,即每次将整数部分除以8,余数为该位权上的数,而商继续除以8,余数又为上一个位权上的数,这个步骤一直持续下去,直到商为0为止,最后读数时候,从最后一个余数起,一直到最前面的一个余数。

    例:将十进制的(796)D转换为八进制的步骤如下:

    1. 将商796除以8,商99余数为4;

    2. 将商99除以8,商12余数为3;

    3. 将商12除以8,商1余数为4;

    4. 将商1除以8,商0余数为1;

    5. 读数,从最后的余数向前读,1434,即(796)D=(1434)O。

    191446033751877.png

    方法2:使用间接法,先将十进制转换成二进制,然后将二进制又转换成八进制;

    191446059386793.png

    十进制 → 十六进制

    方法1:除16取余法,即每次将整数部分除以16,余数为该位权上的数,而商继续除以16,余数又为上一个位权上的数,这个步骤一直持续下去,直到商为0为止,最后读数时候,从最后一个余数起,一直到最前面的一个余数。

    例:将十进制的(796)D转换为十六进制的步骤如下:

    1. 将商796除以16,商49余数为12,对应十六进制的C;

    2. 将商49除以16,商3余数为1;

    3. 将商3除以16,商0余数为3;

    4. 读数,从最后的余数向前读,31C,即(796)D=(31C)H。

    191446083759737.png

    展开全文
  • 此程序是用栈来完成进制的转换,有栈的结构体的构造,该程序是用将十进制任意转换成其他进制,但只限于整数
  • C语言-十进制转r进制(递归)

    千次阅读 2022-03-30 22:28:16
    编写递归函数,实现将一个十进制的整数以r(r=2,8,16)进制的形式输出。 相关知识 设有一个r进制数: 与十进制数的换算关系为: dn是数码,r的i次方是对应数位上的权。例如: 十进制转换成r进制的方法是:...
  • Java进制转换方法整理

    2021-01-20 03:23:09
    一、利用Integer将十进制的数进行进制转换 方法 十进制转换其他进制 ...10进制转 R 进制 Integer.toString(100, 16) 一个R进制字符串 例子 public class Main { public static void main(String[] args)
  • “输入十进制整数和欲转换的进制数r,将十进制转换为r进制数(r>=2)”这是学校的python课的第七次上机题,我们这一届是第一届开python课的。可以看出老师也是下了功夫的,基本上网上找不到一样的题目。简而言之,...
  • 比如如何将一个十进制数转换成二进制数或十六进制数呢?有通用的办法,给定一个整数N和进制K,那么N一定可以表示成以下形式:
  • 十进制R进制之间的转换

    千次阅读 2020-07-23 20:42:38
     如果要表示数值数据,就必须确定进位计数制,通常需要将十进制数据转换成其它进制数据,转换方法如下:    由于小数部分在进行进制转换时,有些小数不能精确转换成二进制,所以C语言中对浮点型数与0进行相等...
  • 74185是用途很广的芯片,它可以将二进制数转换成十进制BCD码。 但是,无论Multism还是Proteus,均没有74185的仿真模型。作者参考74185的Datasheet,利用分立元件制作了74185仿真电路,可将10位二进制数转换十进制BCD...
  • 递归写的十进制转R进制 #include<stdio.h> trans(int num,int R) {int m; if(num<R) {printf("%d",num);} else {m=num%R; num=num/R; trans(num,R); printf("%d",m);} } main() { int R,num; printf...
  • 输入一个十进制数n,把它转化为r进制数输出。输入数据包含多个测试实例,每个测试实例包含两个整数n和r
  • 十进制转其他进制 使用java API实现 十进制转二进制:Integer.toBinaryString(); 十进制转八进制:Integer.toOctalString(); 十进制转十六进制:Integer.tohexString(); class BaseSystemDemo1 { public static ...
  • 程序功能为:输入十进制整数和欲转换的进制数r,将十进制转换为r进制。 编程思想为:调用函数DToR,逐位求模。若该位为大于9的数,则以字母代表(提示:大写字母’A’的ASCII码值等于65);若该位为9以下的数,则...
  • 局限性:只能将10进制转成2、8、16进制,无法实现转成其他进制数。 将十进制decimal system转换成二进制binary system print(bin(10)) 将十进制decimal system转换成八进制Octal print(oct(10)) 将十进制decimal ...
  • 需要把ip地址转换为10进制数,然后也可以把10进制数转化为ip地址,计算机ping这个十进制数可以ping通对应的ip地址,说明已经实现功能 代码如下 # 引用正则来三等分字符串 import re # 转换成二进制数 bi = "{0:b}"....
  • 十进制转换为n进制数

    2018-08-18 18:13:30
    int A,r; struct Node *first; printf("请输入一个十进制整数:"); scanf("%d",&A); printf("请输入转换进制的基数:"); scanf("%d",&r);... first=Transform(A,r);... printf("十进制%d转换为%d进制数",A,r);
  • case 1: printf("请输入十进制的整数值: "); scanf("%d",&m); Conversion(m); printf("\n"); break; case 2: exit(0); default: printf("error\n"); } } }  
  • 十进制小数转换为R进制小数

    千次阅读 2020-12-11 10:53:25
    十进制小数转R进制小数,方法为乘R取整,每次乘以相应之后基数后取结果的整数部分即可。需要注意的是并非所有的十进制小数都能完全转化为R进制小数,这时就需要取近似值。 例: 0.9032D转化成16进制小数 0.9032*16=...
  • 进制转换(十进制转为R进制)

    千次阅读 2020-08-19 11:37:16
    输入一个十进制数N,将它转换成R进制数输出。 Input 输入数据包含多个测试实例,每个测试实例包含两个整数N(32位整数)和R(2<=R<=16, R<>10)。 Output 为每个测试实例输出转换后的数,每个输出占一行。...
  • matlab十六进制转十二进制代码char2hex-hex2char 将十进制整数字符串转换为十六进制表示形式,然后再返回到Matlab中。 版本1.2,2016年4月21日 下载资料库: 返回一个二维字符串数组,其中每行是S行中每个十进制整数...
  • 本代码可支持,10进制转换为任意进制的数 #include<stdio.h> #include<stdlib.h> #include<math.h> #define maxsize 100 typedef int status;//使后面可以使用status类型,用来表示成功或失败...
  • 实现十进制与三十六进制的转换,一个简单实用的php函数代码
  • 十进制形式转R进制形式的方法

    千次阅读 2019-09-26 21:59:39
    十进制形式转R进制形式的方法 你好!这里是将十进制转化为R进制的方法。具体由图片和文字进行讲述。 首先以二进制为例,图中的 2 也就是题目中的 R ,在后期转化其他进制时,可直接将2 变为其他数字。 D十进制 B二...
  • 一个SQL脚本函数,10进制转换为34进制。34进制指以0、1、2、3、4、5、6、7、8、9、A、B、C、D、E、F、G、H、J、K、L、M、N、P、Q、R、S、T、U、V、W、X、Y、Z为基数做累加。

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 196,844
精华内容 78,737
关键字:

十进制转r进制

友情链接: AD_dsp2407.rar