1樓:網友
73 / 8 = 9 ..1
所以73對應八進位為111
進位數的轉換,各位大俠幫我算算這個八進位數值轉為二進位是怎麼算的,73(八進位)轉為二進位
2樓:網友
方法一:八進位轉化為二進位 採用一位拆三位的方法很簡單呀!以後別那樣麻煩轉化了,你看:
拆下來是111麼拆下來是011麼。所以八進位73轉化為二進位就是111011呀!
方法二:您是先把八進位數73轉成十進位,7*8+3=59
而十進位59轉成二進位就是111011
3樓:網友
演算法沒什麼問題,是你的除法有問題,八進位的除法中怎麼會有8和9呢,八進位數與2的乘法表是這樣的:
因此,上面的除法正確的是這樣的:
不過八進位與二進位的相互轉換通常並不這麼算。
1位八進位的數對應3位二進位的數,即:
八進位 二進位。
類似的,1位十六進位的數對應4位二進位的數。
4樓:網友
因為你的73是八進位的,好像不能直接這樣算。
十進位轉八進位演算法
5樓:網友
首先分兩個部分,整數部分要除8取餘數,小數部分要乘以8取整數。
的話 整數部分就是0 小數部分就是=(
從此開始迴圈了。
所以換成8進位就是。
6樓:網友
用該數初以8商,最後一位再加上餘數(包括0)
十進位轉換成八進位的轉換方法
7樓:你愛我媽呀
方法1:採用除8取餘法。
例:將十進位數115轉化為八進位數。
結果:(115)10 = (163)8
方法2:先採用十進位化二進位的方法,再將二進位數化為八進位數例:(115)10 = (1110011)2 = (163)8
8樓:一克拉夢想
有兩種方法:直接法與間接法。
一、直接法。
分整數部分轉換和小數部分轉換。
1.整數部分,除8取餘法,每次將整數部分除以8,餘數為該位權上的數,商繼續除以8,餘數又為上乙個位權上的數,然後以此類推一直下去,直到商為零,最後從最後乙個餘數向前排列就可以了。
2.小數部分,與轉二進位相同,這裡是乘八取整法,也就是說小數部分乘以8,然後取整數部分,再讓剩下的小數部分再乘以8,再取整數部分,……以此類推,一直乘到小數部分為零為止。
二、間接法。
1.把十進位轉換為二進位。
2.由二進位轉換為8進位。
例如:將十進位轉為八進位。先轉為二進位為**換方法這裡就不再累述了哦,不知道的看教程介紹吧):(二進位再轉為八進位為(
三、十進位轉八進位注意事項:整體順序、小數點不變,整數部分除8,餘數倒著從左向右排,小數部分乘8,整數自左向右排。
9樓:
整數部分除8取餘,再倒過來讀;小數部分乘8取整2347 / 8
--8 = 3 (個位)--8 = 5 (十位)--8 = 4 (百位)由於最後整數位小於8,不在進行往下除了,所以最後的八進位的結果:4453
10樓:網友
就是十進位數直接除以8,得出得整數就是八進位的十位以前的數,餘數是八進位個位數,看圖。
按箭頭方向排列,4453就是八進位的2347
八進位73轉換成二進位,十進位,十六進位怎麼算呢
11樓:網友
二進位:111011
十進位:59
十六進位:3b
資料結構演算法數制轉換十進位,轉換為八進位!!
12樓:網友
例項:假設十進位數為1000,則八進位數位1750,過程如下:
1000/8=125,餘數為0;
125/8=15,餘數為5;
15/8=1,餘數為7;
1/8=0,餘數為1;
你從下往上看這些餘數,順序寫出,就是答案1750,要注意的是最後一定要除到0為止,也就是最後一步1/8=0,一定要除到0.
再示範乙個數,比如十進位的534,八進位為1026,過程為:
534/8=66,餘數為6;
66/8=8,餘數為2;
8/8=1,餘數為0;
1/8=0,餘數為1;
仍然是從下往上看這些餘數,順序寫出,答案為1026
你可以自己歸納一下,大進位數轉小進位數都可以用這個方法,比如十六進位轉10進位,如果你不知道答案,可以用windows自帶的計算器來驗證,要用科學型的(在計算器——檢視——科學型)
如果是八進位轉十進位的,可以用下述方法:
還是上面的例子1026八進位轉十進位。
1*8^3+0*8^2+2*8^1+6*8^0=534 (8^3指的是8的立方)
上式各項的意義:1*8^3中的1是1026的千位;八進位時,第二個數為8;3是指4-1,這個4是指1026是4位數。
0*8^2意義同上。0是1026的百位;八進位時,第二個數為8;2是指4-2(8後面的指數是遞減的形式)。
一直寫到8^0一項即可。
所以求anan-1……a1八進位的n位數轉十進位時(比如八進位的1026,對應的a4=1,a3=0,a2=2,a1=6),總結出公式為:
an*8^n+an-1*8^(n-1)+an-2*8^(n-2)+…a1*8^0=對應的十進位數。
所以小進位數轉大進位數都可以用這個方法。
最後說一下,你的十進位的10轉為八進位的數,應當是12,而不是。
本人是複製的 懶得打字了。
十進位轉換成八進位
13樓:毓人
(25)十=((0*1010+10)*1010+101)二=(10*1010+101)二。
10100+101)二。
11001)二。
11 001)二。
31)八。十進位數25的八進位形式為_ d、31_。
14樓:卡卡多多
多進位的轉化 告訴你的訣竅 都統統的轉化成二進位。
c語言的十進位數轉換八進位演算法有哪些?
15樓:可旎瑞茂才
題目:數制轉換問題1.需求分析將十進位數n轉換成八進位數是計算機實現計算的基本問題,解決方案很多,其中最簡單的方法是除8取餘法。
1)本方案採用順序棧的方式模擬整個過程。其原理如下:例子:
1348)10=(2504)8nndiv8nmod8134816841682102125202從中可以看出,最先產生的餘數4是轉換加過的最低位,這正好符合棧的「後進先出」的特性。2)功能:從鍵盤輸入任意乙個非負十進位整數,輸出與其等值的八進位數;若輸入乙個負數,則顯示輸入錯誤,請重新輸入。
3)測試資料:(1348)10=(2504)8,(0)10=(0)8,(-1234)10輸入資料錯誤。2.
概要設計定義順序棧型別,由鍵盤輸入非負十進位整數n,執行以下迴圈操作:n%8入棧,n=n/8,直至n=0。主要函式由建立空棧initsqstack()、入棧push()、出棧pop()和main()函式組成。
過程中函式呼叫關係圖如下:3.詳細設計1)資料型別定義structsqstack;2)系統主要子程式詳細設計a.建立空棧。
16樓:幸運的小李菲刀
方法一:直接使用控制字串 %o 八進位%x方法二:
求餘來算,比如求十進位數 x(x>100) 的8進位,先通過 x%8 可以得到個位(末位)上的數,當十進位數等於8時,必然會進位,求餘的結果正好是不能進位的部分,x=x/8(這就像位移,x的8進位數向右移了一位),這樣已經求出來的 個位 位移後沒有了,原來的十位變成了個位,繼續把得到的x按上面的方式求末位,就能求出來十位,按照這種方式得到的 8進位數 是反的(先得到個位,再十位。。。這樣很適合放到棧中,取得時候又會反過來,偽**可以這樣寫:
while(x)lnode,*lstack;
lstack pushstack(lstack top,int x)lstack p;
p=(lstack)malloc(sizeof(lnode));
if((x)!=-1)
return top;
lstack outstack(lstack top,int *x)lstack p=top;
x=p->data;
top=p->next;
free(p);
return top;
main()
int x,n;
lstack top=null;
printf("請輸入原數及要轉換的進位:");
dowhile(x>35||x<0||n<2);
while(x)
17樓:風風風姬姬姬
#include
int main()
printf("輸入乙個十進位數:");
int num1,num2=0,i=0;
scanf("%d",&num1);
while(num1)
int temp = num1%8;
for(int j=0;jtemp *= 10;
num1 /= 8;
i++;num2 += temp;
printf("轉為八進位為:%d",num2);
return 0;
#include
void dec2oct(int x)
if(x>1)dec2oct(x/8);
printf("%d",x%8);
int main()
int x;
scanf("%d",&x);
dec2oct(x);
return 0;
十進位制負數轉換成二進位制 八進位制 十六進位制希望能在11 10之前解答
十進位制整數轉換為二進位制數的方法 除2取餘 把十進位制數15轉化成二進位制數 15 2 7 餘1 7 2 3 餘1 3 2 1 餘1 1 2 0 餘1 結果 1111 二進位制轉換為八進位制的方法 將二進位制數從右到左,三位一組,高位不夠補0 例 二進位制數1110111011轉換為八進位制數 0...
將1011101101轉換成十進位制,八進位制,十六進位制
十進位制 1011101101 1 2 9 0 2 8 1 2 7 1 2 6 1 2 5 0 2 4 1 2 3 1 2 2 0 2 1 1 2 0 512 128 64 32 8 4 1 749 八進位制 1,011,101,101 1355 十六進位制 10,1110,1101 2ed 749...
把54321十進位轉換為八進位的過程?
將十進位數轉換為八進位數的過程如下 .先將十進位數除以,得到商和餘數,餘數為最低位的數。即 餘數為 .將第一步的商再次除以,同枝衝樣得到商和餘數,餘數為次低位的數。即 餘數為 .將第二步的商再次除以,同樣得到商和餘數,餘數為次高位的數。即 餘數為 .將第三步的商再次除以,同樣得到商和餘數,餘數為最高...