scratch3.0圖形化編程軟體解決「進位轉換(二進位)」問題

2020-12-14 大於小澍
網友互動留言

收到網友的評論,我前幾天發的「十進位轉二進位」的文章,網友表示沒有程小奔機器人,是否可以做一個scratch版本的,放心!這就安排!

二進位的故事我們這裡就不科普了哈!想要回顧的請移步「百度百科」,嘻嘻

首先 我們來看一下1~16 的一個二進位與十進位的對照表格:

以上表格就是0-16的表達對照

這種方法就是我之前文章的「思路1」,感興趣的網友們可以去看一下我之前的文章

連結→scratch+程小奔機器人實現「進位轉換」(十進位轉二進位)

這次我們主要說一下「短除法」思路解決十進位轉換為二進位

舉兩個例子:23和35

上面這個符號大家可以理解為「23除以2等於12寫在下面,餘1寫在左邊」

這是我們將最下面的1和右側的「餘數」自下向上的連接起來,23轉換為二進位寫成「10111」。這樣的道理可以理解麼?後面兩道題大家在有這種方法試著轉換一下,是不是簡單多了?嘻嘻

這時我們將最下面的1和右側的「餘數」自下向上的連接起來,35轉換為二進位寫成「100011」。

接下來我們開始scratch編程部分啦!

建立三個變量:二進位、商、餘數。看看這三個變量名字是不是跟我們的運算過程很是接近?

每一次運算我們都要進行對2的除法運算,那麼就會產生商和餘數,商再進行運算還會產生新的商和餘數……,餘數積累起來就是我們要的結果「二進位」(這裡大家先簡單地理解一下這個三個變量),大家自己在變量命名的時候也要有意義,不能隨便,很多同學在學習初期就是隨便命名變量,最後自己也不知道是什麼。

變量

接著我們使用「詢問」和「回答」語句塊,對使用者輸入的自然數進行讀取

詢問和回答

然後我們使用「重複執行……直到……」語句,對「短除法」的計算進行模擬,

商是使用者輸入的自然數,餘數是除法運算後的結果,二進位初始化為「空」,所以每次的餘數都會在這裡進行連接,接著商再次進行除2運算,等待的1秒是為了減慢運算過程,讓大家看清楚整個計算過程,不然運算一閃而過。

除法運算

完整的腳本:

最後的行語句,搭建一定可以理解

就是說一下「自然數轉換為二進位的值」,之後等待按下「空格」鍵,再開始新的循環(這就是我使用「重複執行」語句的原因,方便使用者多次使用)

完整腳本

運行界面:

輸入19,顯示「19轉化為二進位結果為:10011」

運行界面

這裡我們製作了二進位的轉換,大家通過這次的學習,是不是可以嘗試一下「8進位轉換」、「16進位轉換」(16進位牽扯到ABCDEF字母,所以可以使用列表來做),這次的分享就到這裡了,希望可以讓沒有程小奔機器人的同學也體會到學習二進位的快樂!

相關焦點

  • scratch+程小奔機器人實現「進位轉換」(十進位轉二進位)
    也就說滿十進一;而在計算機的世界裡,基礎電路只有「開/關(通/斷)」(即0/1)兩種情況,這與誕生幾千年的二進位不謀而合;例如:二進位數字110,表達的就是十進位中的6;二進位數字1111,表達的就是十進位中的15。
  • 【二進位】----十進位數轉換成二進位數
    二進位是現在的計算機系統中廣泛使用的一種數制,計算機中的二進位是一個微小的開關,用「開」來表示1,用「關」來表示0。數據在計算機中主要以這種補碼的形式存儲的。我們今天就來看看十進位的數和二進位的數是如何轉換的。
  • 二進位、八進位和十六進位之間轉換
    十進位有 0~9 共10個數字,基數為10,在加減法運算中,逢十進一,借一當十。我們不妨將思維拓展一下,既然可以用 0~9 共十個數字來表示數值,那麼也可以用0、1兩個數字來表示數值,這就是二進位(Binary)。例如,數字 0、1、10、111、100、1000001 都是有效的二進位。在計算機內部,數據都是以二進位的形式存儲的,二進位是學習編程必須掌握的基礎。
  • 常用的二進位與八進位-十進位-十六進位之間的轉換
    為多數'''# 十進位# 十進位轉二進位:倒除法、餘數逆序# 十進位數19轉換為二進位數,每次除於2,餘數放一旁,得二進位數時從下往上取# 轉換為二進位為 10011a = 19# 倒除法轉換print(        2|19    #餘數         -
  • 二進位與八進位互相轉換
    上節課我們學習了二進位轉換十進位,那二進位與常用的八進位之間是如何互相轉換的呢?下面我們先看看二進位與八進位的轉換方法。
  • 二進位與十六進位之間互相轉換
    通過上節課的學習,我們掌握了二進位與八進位互相轉換的方法(我們介紹的是421法),我們進行知識遷移,二進位數轉換成十六進位數的方法我們用
  • 二進位,八進位,十進位,十六進位轉換詳解~
    ①、數碼:用來表示進位數的元素。                                二進位:0,1。                                八進位:0,1,2,3,4,5,6,7                                十進位:0,1,2,3,4,5,6,7,8,9。
  • 二進位、八進位、十進位、十六進位數的轉換方法
    在計算機中:D7 D6 D5 D4 D3 D2 D1 D0 只有兩種0和18 4 2 1二)、數制轉換不同進位計數制之間的轉換原則:不同進位計數制之間的轉換是根據兩個有理數如相等,則兩數的整數和分數部分一定分別相等的原則進行的。也就是說,若轉換前兩數相等,轉換後仍必須相等。
  • 跟我學java編程—不得不說的二進位和十六進位
    計算機能夠識別的數制是二進位數,二進位數是用0和1兩個數字來表示的數,計算機的指令集也是採用二進位表示,機器語言就是用二進位數編寫程序。可以藉助十進位數來理解二進位數。在十進位中,每一位有0、1、2、3、4、5、6、7、8、9十個數碼,因此基數為10,超過9就必須用多位數來表示,並遵循逢十進一的原則。
  • 二進位、八進位、十進位和十六進位數之間的轉換方法
    常見的數制有二進位、八進位、十進位和十六進位。文字、數字、聲音、圖形與圖像、視頻以及動畫等數據在計算機中是以二進位的形式存儲的。一般情況下,我們在數字後面用特定的字母(下標)表示該數的進位,表示方法為:B表示二進位,D表示十進位(D可省略),O表示八進位,H表示十六進位。如二進位數10101表示為(10101)B。
  • C/C+編程筆記:C語言進位詳解,二進位、八進位和十六進位!
    十進位有 0~9 共10個數字,基數為10,在加減法運算中,逢十進一,借一當十。 二進位 我們不妨將思維拓展一下,既然可以用 0~9 共十個數字來表示數值,那麼也可以用0、1兩個數字來表示數值,這就是二進位(Binary)。例如,數字 0、1、10、111、100、1000001 都是有效的二進位。
  • 二進位與十進位的轉換方法
    二、轉換方法    十進位數轉換為二進位數時,由於整數和小數的轉換方法不同,所以先將十進位數的整數部分和小數部分分別轉換後,再加以合併。1、十進位整數轉換為二進位整數案例1:197/2=98.5 =1 第8位98/2=49 =0 第7位49/2=24.5 =1 第6位24/2=12 =0 第5位12/2=6 =0 第4位6/2=3 =0 第3位3/2=1.5 =1 第2位1/2=0.5 =1 第1位2、十進位小數轉二進位小數
  • 關於二進位、十進位、八進位、十六進位數據轉換計算方法詳細總結
    下面在安靜的音樂中,讓我們開始學習吧在我們接觸編程知識時,總會接觸有關進位轉換的知識,最常見的就是10進位與二進位或十六進位之間的轉換,很多時候我們總會遺忘,雖然現在也出現了很多可以直接使用的網絡在線的進位轉換工具,但考試中,我們就要靠自己通過公式進行運算了。
  • 計算機基礎進位轉換(二進位、八進位、十進位、十六進位)
    1.十進位轉R進位1.1 十進位轉二進位十進位整數轉二進位十進位整數轉換成二進位採用「除2倒取餘」,十進位小數轉換成二進位小數採用
  • python進位轉換:十進位轉二進位的用法
    我們在學習python時候肯定會碰到關於進位轉換,其實這是非常簡單的,這個就像小學學習數學乘法口訣意義,只要記住轉換口訣即可輕鬆應用,一起來看下具體的操作內容吧~一、python進位轉換dec(十進位)—> bin(二進位)dec(十進位)—> oct(八進位)dec(十進位)—> hex(十六進位)二、十進位我們所熟知的十進位,其實是從 0 開始,數到 9 之後,就跳到
  • 【S7-200】二進位、八進位、十進位、十六進位數的轉換方法
    一般計數都採用進位計數,其特點是:(1)逢N進一,N是每種進位計數制表示一位數所需要的符號數目為基數。(2)採用位置表示法,處在不同位置的數字所代表的值不同,而在固定位置上單位數字表示的值是確定的,這個固定位上的值稱為權。
  • 6、計算機進位之二進位、十進位、十六進位之間的轉換
    4、進位之間的轉換4.1、正整數的十進位轉換二進位將一個十進位數除以二,得到的商再除以二,依此類推直到商等於一或零時為止,倒取除得的餘數,即換算為二進位數的結果只需記住要點:除二取餘,倒序排列。由於計算機內部表示數的字節單位都是定長的,以2的冪次展開,或者8位,或者16位,或者32位....。於是,一個二進位數用計算機表示時,位數不足2的冪次時,高位上要補足若干個0。本文都以8位為例。
  • IT挑戰高薪必備硬體常識-進位和進位轉換
    八進位八進位,Octal,縮寫OCT或O,一種以8為基數的計數法,採用0,1,2,3,4,5,6,7八個數字,逢八進1。一些程式語言中常常以數字0開始表明該數字是八進位。八進位的數和二進位數可以按位對應(八進位一位對應二進位三位),因此常應用在計算機語言中。
  • 二進位、十進位、八進位、十六進位間的相互轉換函數
    二進位、十進位、八進位、十六進位間的相互轉換函數1、輸入任意一個十進位的整數,將其分別轉換為二進位、八進位、十六進位。{int num;char a[39];//定義一個字符數組,用於存儲字符串cout<<"Entre num:"<<endl;cin>>num;cout<<"二進位
  • JS十進位轉換二進位
    最近因為需求,要接觸到前端JS的一些東西,遇到需要把十進位數字轉換為二進位,並且補全對應位數,覺得蠻有趣的,所以把它記錄下來。十進位轉二進位方法其實很簡單,一個函數搞定了:var value = parseInt(12).toString(2);//parsetInt裡面是要轉換的數字,toString裡面是要轉換的進位,//如果要轉換為其他進位,替換掉就好了,so easy。