數論之十進位轉二進位

2020-12-04 ITBegin

一、實驗目標

輸入一個正整數,轉換為二進位輸出。

輸入樣例1:

14

輸出樣例1:

1110

數據範圍:

* n <= 2^31

二、分析

1、思路

循環%2求餘,剩下商,直到商為0退出。

2、方案和步驟

用一個數組a[100]來保存二進位,用last表示當前存儲的位,last=1表示二進位的個位數。

while(n>0) {

a[++last] = n % 2;

n /= 2;

}

注意數組的存儲和輸出順序是相反的,輸出的循環要反著來。

三、參考代碼

#include <iostream>

using namespace std;

int n;

int a[100], last;

int main() {

int n;

cin>>n;

while(n>0) {

a[++last] = n % 2;

n /= 2;

}

for(int i=last; i>=1; i--)

cout<<a[i];

cout<<endl;

return 0;

}

如果你對數論編程感興趣,可以到itbegin網站上,輸入短碼100701,就可以看到今天的知識,跟著老師學習,也可以自己練習。

相關焦點

  • 二進位轉換為十進位和十進位轉換為二進位的方法
    各位小夥伴們大家好,在之前的文章中小編也介紹了關於二進位轉十進位的方法,這次小編知道了一個更簡單的方法,具體如下:比如我們要把28轉為二進位:,從左往右把二進位數字湊在一起,11100就是28的二進位了。
  • scratch+程小奔機器人實現「進位轉換」(十進位轉二進位)
    >【原創】文章全部內容皆為作者原創,如有轉載請註明出處我們人類有十根手指,通常情況下我們在生活中的計數方式為「十進位」(即0-9),也就說滿十進一;而在計算機的世界裡,基礎電路只有「開/關(通/斷)」(即0/1)兩種情況,這與誕生幾千年的二進位不謀而合;例如:二進位數字
  • 如何實現二進位轉十進位的設計
    設計背景: 二進位轉十進位在設計應用中十分的廣泛。尤其在AD轉化中是必須所用到的一個小知識點,學習二進位轉十進位的方法顯的非常的重要。今天就和筆者來學習二進位轉十進位的方法,通過簡單的學習來掌握這麼一門知識。
  • 二進位、十進位、八進位、十六進位間的相互轉換函數
    二進位、十進位、八進位、十六進位間的相互轉換函數1、輸入任意一個十進位的整數,將其分別轉換為二進位、八進位、十六進位。{int num;char a[39];//定義一個字符數組,用於存儲字符串cout<<"Entre num:"<<endl;cin>>num;cout<<"二進位
  • 關於二進位、十進位、八進位、十六進位數據轉換計算方法詳細總結
    ) 注意他們的讀數方向 因此,我們從上面的方法,我們可以得出十進位數168.125轉換為二進位為10101000.001,或者十進位數轉換為二進位數約等於10101000.0111。(2) 二進位轉換為十進位 不分整數和小數部分 方法:按權相加法,即將二進位每位上的數乘以權,然後相加之和即是十進位數。例 將二進位數101.101轉換為十進位數。
  • 你可能不知道,二進位比十進位更簡單
    在世界各文明獨立發展的數學中,出現過二十進位、六十進位、十六進位、十進位等,其中最廣泛採用的數制是十進位。亞里斯多德曾對此分析,可能是因為人有十個手指頭的緣故。直到現在,小朋友們學算術時還經常掰著手指頭算簡單的加減運算。
  • C/C+編程筆記:C語言進位詳解,二進位、八進位和十六進位!
    例如表示 5+8 的結果,一個數字不夠,只能」進位「,用 13 來表示;這時」進一位「相當於十,」進兩位「相當於二十。 因為逢十進一(滿十進一),也因為只有 0~9 共十個數字,所以叫做十進位(Decimalism)。十進位是在人類社會發展過程中自然形成的,它符合人們的思維習慣,例如人類有十根手指,也有十根腳趾。
  • 清晰說明十進位如何快速轉二進位,助力考生
    關於二進位、十進位、八進位、十六進位數據轉換計算方法詳細總結>今天之所以又寫這篇文章,一是補充上文中的缺憾,沒有分享十進位到二進位最快的方法;再就是響應平臺號召,助力高考。我想這可能會是一個趨勢,現在的編程教育不斷向前提,所以不好說,而且小編在某處看到這樣一句話:【高考】考綱二 數值的概念、二進位整數、十進位整數和十六進位整數的相互轉算也算是一個偏門的預測了吧,何況,進位的轉換在我們日常的編程中也經常會用到,對於十進位到二進位的轉換更多的是在初級的考試中。掌握了今天的方法,可謂兩個字吧,快!準!
  • 二進位與計算機
    現在國際通用的主要進位制有十進位、二進位、二十進位和六十進位。其中的二進位是計算機通用的進位制。 八卦:最早提出的二進位思想 中國古人很早就開始使用十進位的計數方法,其數字符號有:一、二、三、四、五、六、七、八、九、十、百、千、萬、億、兆等。此外,還有與中國的傳統思想、文化和生活有密切關係的符號體系——天幹、地支和八卦。
  • 四位二進位轉十進位計算顯示程序
    k1-k4是板子上的4個鍵 用來進行二進位輸入,因為按鍵只有按下和沒有按下兩種狀態,十進位的數值就顯示在數碼管上.
  • 嵌入式,單片機編程基礎-二進位
    涉及到比特位當然以二進位表示最為自然。其次,我們在編寫或閱讀底層代碼時,如果涉及到寄存器的配置或是有關比特位的操作也是離不開二進位的影子。那就來介紹下一些比較常用的的有關二進位的東西。二進位的表示方法。比如我們要給一個char型變量a賦值一個二進位數100。如果我們寫成a=100,那麼a就是100。
  • 如何進行進位轉換
    >   1、十進位轉二進位   方法為:十進位數除2取餘法,即十進位數除2,餘數為權位上的數,得到的商值繼續除2,依此步驟繼續向下運算直到商為0為止。(具體用法如下圖)      2、二進位轉十進位   方法為:把二進位數按權展開、相加即得十進位數。
  • 基於單片機的四位二進位轉十進位計算顯示程序
    本文引用地址:http://www.eepw.com.cn/article/170906.htmk1-k4是板子上的4個鍵 用來進行二進位輸入,因為按鍵只有按下和沒有按下兩種狀態,十進位的數值就顯示在數碼管上.
  • 易經八卦和二進位的關係
    一、 二進位要說二進位,我們先從熟悉的十進位說起吧:1、 十進位(0→9)十進位有0到9這十個數字,大家知道這個阿拉伯數字是誰發明的嗎?它和十進位不同,十進位是可以進到十,然後還可以從十後再進一,比如說報數8、9、10、11,但二進位沒有2,二進位它只有0和1兩個數字。
  • 加法器電路原理_二進位加法器原理_與非門二進位加法器
    加法器可以用來表示各種數值,如:BCD、加三碼,主要的加法器是以二進位作運算。由於負數可用二的補數來表示,所以加減器也就不那麼必要。   加法器電路原理   在計數體制中,通常用的是十進位,它有0,1,2,3,…,9十個數碼,用它們來組成一個數。但在數字電路中,為了把電路的兩個狀態(1態和0態)和數碼對應起來,採用二進位較為方便,二進位只有0和1兩個數碼。
  • 十進位和二進位之間的轉換
    例題 1.3.3 將(25)D轉換為二進位數。  解:該題的解題思想是,不斷地用2分解十進位整數,並將餘數按得到的順序由低位到高位排列,即可得到對應的二進位數。:當要將一個很大的十進位數轉換成二進位數時,採用例題1.3.3的做法很費時 ,我們可以採用另外一種方法。
  • 跟我學解Python題-二進位轉換
    實現:輸入十進位正整數,輸出相應的二進位數字輸入樣例1:6輸出樣例1:110輸入樣例2:27輸出樣例2:11011解題過程:1、新建變量num,用於存儲輸入的十進位數字,num=int(input("請輸入想要轉換的十進位數字(十轉二)"))
  • 什麼是二進位,這裡讓你通俗易懂
    關於計算機的二進位,首先來想想我們日常使用的十進位。那麼為什麼我們日常要使用十進位呢?其實看看你的雙手,一共有幾根手指?是不是一共十根?那麼10 代表的就是一雙手的手指的數量。但是到了計算機裡這種數值表述方式就麻煩了,如果我們要在計算機保存十進位數值那麼,計算機得有能力用某種形式描述出至少10種狀態才行也就是0到9。那麼想像一下要是我們每隻手只有3個手指,那麼如果10 依舊代表一雙手(六根手指),此時12相當於一雙手加兩個手指 也就是「八」。這種計數方式我們可以稱為6進位。
  • 十二進位,二十進位,六十進位 | 數學與生活
    十 進 制如果以一個人的手指和腳趾數為基礎,就能產生二十進位。從前是用以下十進位的數詞80——octante90——nonante卻特意變為使用20(vingt)的二十進位,可以看出法國人相當喜歡二十進位。
  • MySQL涉及二進位的運算符:位運算符
    所以我們先要把參與操作的數字轉化為二進位形式。如下:【結論】3|8就是兩個二進位數0011與1000進行按位或的計算,對應的二進位位有一個或兩個為1,運算結果為1,否則為0。所以,3|8的結果是1011,轉化為十進位就是11。