怎么把K进制数化为十进制数呢,还有把一个数X化成K进制,怎么算呢,高一数学求解

作者&投稿:隆都 (若有异议请与网页底部的电邮联系)
如何把某一个k进制的数化为10进制数呢?C++~

#include
#include
#include
using namespace std;

void main()
{
char a[80];
int i,p=1,m,n=0,k;
cout<<"请设定要转化的进制位数:"<<endl;
cin>>k;
cout<<"输入一个"<<k<<"进制数:"<<endl;
cin>>a;
m=strlen(a);
for(i=m-1;i>=0&&k!=16;i--)
{
n+=(a[i]-48)*p;
p*=k;
}
if(!n)
for(i=m-1;i>=0;i--)
{
if(a[i]<65) n+=(a[i]-48)*p;
if(a[i]>=65) n+=(a[i]-55)*p;
p*=k;
}
cout<<"相应的10进制数为:"<<n<<endl;
}

#include
#include
#include
using namespace std;

void main()
{
char a[80];
int i,p=1,m,n=0,k;
cout<<"请设定要转化的进制位数:"<<endl;
cin>>k;
cout<<"输入一个"<<k<<"进制数:"<<endl;
cin>>a;
m=strlen(a);
for(i=m-1;i>=0&&k!=16;i--)
{
n+=(a[i]-48)*p;
p*=k;
}
if(!n)
for(i=m-1;i>=0;i--)
{
if(a[i]<65) n+=(a[i]-48)*p;
if(a[i]>=65) n+=(a[i]-55)*p;
p*=k;
}
cout<<"相应的10进制数为:"<<n<<endl;
}

  怎么把K进制数化为十进制数:
  假设被转换的数字是k进制,需要将其转换为x进制数字;被转换数字一共有n位,每位记作kn位,则有其最低位数字为k1,第二位为k2,第三位为k3……以此类推。那么所有的进制数之间的转换都可以使用公式如下:
  k1 * k^0 + k2 * k^1 + k3 * k^3 + ...... 即x = kn * k^(n-1)的累加
  其中符号k代表x进制中k的表示方法,比如k进制为20进制,那么如果要转换为10进制(即x为10),则k是20;如果要转换为16进制,那么k为14(注意:同时公式的运算全部都要用20进制的运算方式来解,即16进制中14的2次方为190,而不是10进制的400)
  问题一把1234(5)化为十进制数。根据以上公式(k为5、k1为4、k2为3、k3为2、k4为1),列式如下:4 * 5^0 + 3 * 5^1 + 2 * 5^2 + 1 * 5^3=194
  问题二把2进制数11111(2)化为十进制数。根据以上公式(k为2、k1为1、k2为1、k3为1、k4为1、k5为1),列式如下:1 * 2^0 + 1 * 2^1 + 1 * 2^2 + 1 * 2^3 + 1 * 2^4=31
  问题三把89化为四进制、六进制数。
  首先来看4进制数,在4进制数中10表示为22,8表示为20,9表示为21,即这时k为22、k1为21、k2为20,列式如下21 * 22^0 + 20 * 22^1(四进制中22的0次方为1,22的1次方为22,21*1为21,22*20为1100,相加得结果1121;则有十进制89的四进制表示为1121;
  继续来看6进制数,在6进制数种10表示为14,8表示为12,9表示为13,则有k=14、k1=13、k2=12,列式13 * 14^0 + 12 * 14^1 = 13 * 1 + 12 * 14 = 13 + 212 = 225;即十进制89转换为6进制表示为225

首先要理解一个平时没有在意的东西,就是什么是十进制
eg:1234(10)=1x1000+2x100+3x10+4x1
K进制化成十进制同理
1234(5)=1x5^3+2x5^2+3x5+4=125+50+15+4=194
11111=100000-1=2^6-1=31

89/4=22……1 个位
22/4=5……2 十位
5/4=1……1 百位
1/1=0……1 千位
所以89=1121(4)
用上面的方法验算一下
1121(4)=1x4^3+1^4^2+2x4+1=89
其他同理

1234(5)化为十进制数
1234(5)=1×5^3+2×5^2+3×5^1+4×5^0=194
把2进制数11111(2)化为十进制数
11111(2)=1×2^4+1×2^3+1×2^2+1×2^1+1×2^0=31
把89化为四进制、六进制数
89=1×4^3+1×4^2+2×4^1+1×4^0=(1121)4
89=2×6^2+2×6^1+5×6^0=(225)6
由上面的解题过程,相信你已经能看出来K进制和十进制的转化方法了。

1乘5的3次方+2乘5的2次方+3乘5的一次方+4乘5的0次方=194

利用权 比如 1234(5)=1×5^3+2×5^2+3×5^1+4×5^0 一次类推


★★★八进制转换十进制方法
(64)10=1*64+0*8+0=(100)8,进多一位就是了。

了解数量单位:K、M、G、T等,求它们与十进制数和各自转换关系
一般是10³为一个阶,具体单位和转换如图。另外,如果是计算机使用的,相互转换关系就是2^10=1024≈10³

1k=1024bit但是怎么转换为10进制数和16进制数? 我知道1k=1024bit搞...
这怎么转换.0 - 9 是十进制 而 0 - F 是十六进制 如果你需要知道存储单位的进制的话 一般都是使用十进制来表示 1k 是十进制 400 是十六进制 10000000000 是二进制

十进制与十六进制的换算?
结果就行了,得52,即十六进制中的34为十进制中的52)十进制化为十六进制就是除16的办法: 34除以16,得2余2,即为22,即十进制中的34 这十六进制中的22 (即:十六进制化成十进制是乘16,十进制化成十六进制是除16)事实上,k(k是正整数)进制数逢k进一这么个意义,一个十进制数可写成 a(n)*10...

4*13=100是几进制呢?2*2=10又是几进制的啊?
4*13=100是六进制,2*2=10是四进制,可以由以下方法解:设是K时制,可列出方程:4*(1*K+3)=1*K^2+0*K+0,解关于K的方程,可得K=6或K=-2,K=-2舍去,即K=6,为六进制(列和方程理由:因为在K进制中把数化为十进制有:,13=1*K^1+3,100=1*K^2+0*K+0,同理可以列出第二个题中方程...

二进制和十进制转换怎么算?
二进制转为十进制从右到左用二进制的每个数去乘以2的相应次方 例如二进制的1101转化成十进制 1101(2)=1*2^0+0*2^1+1*2^2+1*2^3=1+0+4+8=13 十进制转为二进制 用十进制的13除以2 每除一下将余数就记在旁边 最后按余数从下向上排列就可得到1101 例如302 302\/2 = 151 余0 151\/...

将8进制数314 706(8)转化为十进制数,并编写出一个实现算法的程序...
706(8)化为十进制数是104 902.8进制数314 706中共有6位,因此可令a=314 706,k=8,n=6.程序如下:INPUT a,k,n i=1 b=0 WHILE i<=n t=GET(a[i])b=b+t*k^(i-1)i=i+1 WEND PRINT b END 方法归纳 在上述程序中,输入a,k,n的值分别为314 706,8,6即可转换为十进制数b.将其...

了解数量单位:K、M、G、T等,求它们与十进制数和各自转换关系;
Byte(字节)是信息存储的基本单位,一个Byte可以存储一个西文字符,存储一个汉字一般需要2个字节。1KB(千字节)=1024Byte 1MB(兆字节)=1024KB 1GB(吉字节)=1024MB 1TB(太字节)=1024GB 之 所以这里采用1024而不是整数1000,是因为在计算机中都是采用二进制的,2的10次方已经等于1024。

将8进制数314706(8)化为十进制数,并编写出一个实现算法的程序._百度...
104902 解析:314706(8)=3×85+1×84+4×83+7×82+0×81+6×80=104902.所以,化为十进制数是104902.点评:利用把k进制数转化为十进制数的一般方法就可以把8进制数314706(8)化为十进制数,然后根据该算法,利用GET函数,应用循环结构可以设计程序.

K.M.G.T.m.u.n的二进制十进制的表示方法?
您好,对于你的遇到的问题,我很高兴能为你提供帮助,我之前也遇到过哟,以下是我的个人看法,希望能帮助到你,若有错误,还望见谅!。展开全部 磁盘容量单位:由于计算机是二进制,k习惯上称作千。k=10的3次方 千m=10的6次方 百万b=10的9次方 十亿t=10的12次方 万亿 计算机硬盘存储容量通常使用...

鄂托克前旗17516101430: 怎么把K进制数化为十进制数呢,还有把一个数X化成K进制,怎么算呢,怎么把K进制数化为十进制数呢,比如:把1234(5)化为十进制数;把2进制数11111(2... -
朱滕岑连:[答案] 首先要理解一个平时没有在意的东西,就是什么是十进制 eg:1234(10)=1x1000+2x100+3x10+4x1 K进制化成十进制同理 1234(5)=1x5^3+2x5^2+3x5+4=125+50+15+4=194 11111=100000-1=2^6-1=31 89/4=22……1 个位 22/4=5……2 十位 5/4=1……...

鄂托克前旗17516101430: 把k进制数化为十进制数的方法是什么 -
朱滕岑连: 概括说就是:从右至左,第n位的数字*k的(n-1)次方比如Oxad74:16^0*4+16^1*7+16^2*14+16^3*11=……

鄂托克前旗17516101430: 如何把某一个k进制的数化为10进制数呢?C++数的进制转换(1) 将输入的2进制数(一个非“0”即“1”的字符串)化为10进制数. 提示:用字符数组a盛... -
朱滕岑连:[答案] #include #include using namespace std; void main() { char a[80]; int i,p=1,m,n=0,k; cout cin>>k; cout cin>>a; m=strlen(a); for(i=m-1;i>=0&&k!=16;i--) { n+=(a[i]-48)*p; p*=k; } if(!n) for(i=m-1;i>=0;i--) { if(a[i] if(a[i]>=65) n+=(a[i]-55)*p; p*=k; } cout}

鄂托克前旗17516101430: 怎么吧K进制转化为10进制 -
朱滕岑连: 把K进制数的各位数值分别乘以对应的权重后,相加即可.

鄂托克前旗17516101430: 如何把某一个k进制的数化为10进制数呢?C++ -
朱滕岑连: #include #include using namespace std;void main(){ char a[80]; int i,p=1,m,n=0,k; cout<<"请设定要...

鄂托克前旗17516101430: 表示把K进制A(共有N位)转化为十进制数B的过程 -
朱滕岑连: 假设,A是111,K进制的意思就是,从右边开始计数,第一位代表1*K^0,第二位代表1*K^1,第三位代表1*K^2,以此类推,第N位代表几个N的N-1次,表示成K^(N-1),所以可以假设A1是A从右边数起的第一位,AN是最左边那位,那么 B=A1*1+A2*K+A3*(K^2)+……AN*(K^(N-1)) 这个是所有进制都可以换算的,备注K^0表示K的零次幂,任何数的零次幂都是0 可以给你举个实例,2进制下的数字1011换算成10进制就是1*1+1*2^1+0*2^2+1*2^3=1+2+0+8=118进制555表示成十进制就是5*8^0+5*8^1+5*8^2=5+40+320=365

鄂托克前旗17516101430: 若k进制数175(k)化为十进制数是125,那么k=___. -
朱滕岑连:[答案] 175(k)=1*k2+7*k1+5*k0=k2+7k+5=125, 化为k2+7k-120=0,0
鄂托克前旗17516101430: 数制转换.将一个K进制(k<=10)数x转换成十进制数可采用如下方法:主要方法是从右向左,依次取数x大神们帮 -
朱滕岑连: // kTO10.cpp : Defines the entry point for the console application. // #include "stdafx.h" #include "math.h" int hex2(long n, int j) // 2进制数转换成十进制数 { int s=0,k=0; while(n>0) { s=s+(int)(n%10*pow(2,k)); //k表示取的是第几位,应该乘上2的k...

鄂托克前旗17516101430: 十六进制怎样化为十进制? -
朱滕岑连: 十进制就是逢十进一(0,1,2,3,4,5,6,7,8,9,后面就要进位才能表示了) 十六进制就是逢十六进一(0,1,2,3,4,5,6,7,8,9,A,B,C,D,E,F,后面就要进位才能表示了) 所谓进制就是单个数不能表示时要用二位数及二位数以上的数表示的处理办法.其实可...

鄂托克前旗17516101430: ★★★★★★八进制转换十进制方法 -
朱滕岑连: (64)10=1*64+0*8+0=(100)8,进多一位就是了.

本站内容来自于网友发表,不代表本站立场,仅表示其个人看法,不对其真实性、正确性、有效性作任何的担保
相关事宜请发邮件给我们
© 星空见康网