十进制数283.8125转化成八进制数?(有没有简便方法)

如题所述

这个没什么简便方法吧,只能按部就班。
就是把十进制数分解为(对本题来说):a*8^2 + b*8 + c*8^0 + d*8^(-1) + e*8^(-2) + ....
那么我们就知道这个十进制数可以转化为8进制数:abc.de....
具体的,尝试283.8125/8^2
我们会得出:283.8125=4*8^2 + 27.8125
然后尝试27.8125/8
我们会得出:27.8125=3*8 + 3.8125
然后尝试3.8125/8^0
我们会得出:3.8125=3*8^0 + 0.8125
然后尝试0.8125/8^(-1)
我们会得出:0.8125=6*8^(-1) + 0.0625
然后尝试0.0625/8^(-2)
我们会得出:0.0625=4*8^(-2)
所以:283.8125=4*8^2 + 3*8 + 3*8^0 + 6*8^(-1) + 4*8^(-2)
所以,十进制数283.8125转化成的8进制数为:433.64
温馨提示:内容为网友见解,仅供参考
第1个回答  2012-07-04
一般的是先换成2进制 再从2进制转8进制
我这里写了个小程序
#include<stdio.h>
int main()
{
int a = 283;
int b = 8125;
printf("a的八进制数值 = %o\n", a);
printf("b的八进制数值 = %o\n", b);
return 0;
}

输出结果:
a的八进制数值 = 433;
b的八进制数值 = 17675;
我不确定这种把整数和小数分开的算法是否可用,你再验算下

十进制数283.8125转化成八进制数?(有没有简便方法)
这个没什么简便方法吧,只能按部就班。就是把十进制数分解为(对本题来说):a*8^2 + b*8 + c*8^0 + d*8^(-1) + e*8^(-2) + ...那么我们就知道这个十进制数可以转化为8进制数:abc.de...具体的,尝试283.8125\/8^2 我们会得出:283.8125=4*8^2 + 27.8125 然后尝试27.812...

计算机中用十进制数283.8125表示对应的八进制数是多少?请说明一下换...
1.如果是整数,则除以8,余数是八进制每一位的数字(由低位到高位),再用商除以8,直到商为0。最后将余数排列成八进制每一位。283÷8=35余3,35÷8=4余3,4÷8=0余4,十进制283换算成八进制433 2.如果是小数,则乘以8,乘积的整数部分是八进制的每一位的数字(由小数点后第一位一直往后)...

谁能把283.8125D转化成八进制数,详细步骤……
(283)D =(((0*1010+10)*1010+1000)*1010+11)B =((10*1010+1000)*1010+11)B =((10100+1000)*1010+11)B =(11100*1010+11)B =(100011000+11)B =(100011011)B (0.8125)D =(((101\/1010+10)\/1010+1)\/1010+1000)\/1010)B =(((0.1+10)\/1010+1)\/1010+1000)\/1010)B =(...

十进制283.8125对应的八进制是多少?
433.64

十进制数283.8125对应的八进制数是?
八进:433 二进:100011011

关于专升本计算机基础的计算题,一共30道,要求要有详细的讲解和解答过...
1、1kb = 1024byte,2个byte等于一个汉字。2、用25除以12去余。3、4个是一位。4、10进制转化成2进制,整数除以2,小数除以2,然后二进制转化成8进制是每三个一位,16进制是每4个一位。太多了,有好多都是一样的,你自己多看看二进制的存储就ok了~...

(填空题)十进制数283.8125对应的八进制数是___。
答案是433.64 整数部分采用“除八倒取余”余数 8∣283………3 8∣35 ………3 ↑取值方向 8∣4...4 小数部分用“乘八取整”0.8125 × 8 取值方向↓ 6……… 6.5000 0.5 × 8 4……… 4.0

(填空题)十进制数283.8125对应的八进制数是___。
只计算小数部分:0.8125*2=1.625 取1 (依然只取小数部分)0.625*2=1.25 取1 0.25*2=0.5 取0 0.5*2=1 取1 运算结束 小数部分答案(自上而下):1101

相似回答