大樂透自動選號- Webduino Blockly 教學

文章推薦指數: 80 %
投票人數:10人

有了包含1~49 數字的陣列後,必須要再建立一個變數result 作為結果的陣列,由於這個陣列只會包含六個數字( 因為大樂透只會取出六個數字),所以一開始同樣用「指定間隔迴圈 ... 大樂透自動選號 在人人都想買大樂透一搏手氣的今天,是否有想過自己做個電腦自動選號程式呢?在這個範例將會使用WebduinoBlockly實作大樂透自動選號程式,讓電腦為你報個名牌吧!(自動選號為邏輯機率產生,是否中獎與教學網站無關) 本篇範例會使用:變數、文字、迴圈、列表、顯示文字和語音朗讀,如果尚未熟悉相關用法,請點選參考閱讀。

步驟1、透過迴圈建立列表 因為大樂透的號碼為1~49,如果要手動建立列表,必須得做重複的動作49次,而這些「重複」的行為,可以透過「迴圈」輕鬆實現。

一開始先使用「建立空列表」,設定變數arr為空列表。

放入「指定間隔迴圈」,設定範圍1~49,間隔為1。

在迴圈內使用「指定列表內容」的列表積木,在每次迴圈執行的時候,就會將數字寫入對應的列表順序內,例如迴圈在第10次的時候,就會在列表第10個位置寫入10的數字,如此一來就能輕鬆完成具有1~49數字的列表。

(迴圈內預設變數為i) 步驟2、隨機從1~49取出六個數字 有了包含1~49數字的陣列後,必須要再建立一個變數result作為結果的陣列,由於這個陣列只會包含六個數字(因為大樂透只會取出六個數字),所以一開始同樣用「指定間隔迴圈」,設定範圍1~6,間隔1,並將迴圈內的變數從i改為j。

不把變數i修改為j也可以,但為了確保變數不會重複影響,還是建議初學者修改。

放入一個變數命名為position,內容從1到arr陣列長度隨機取出一個數字,這個數字表示「陣列arr的位置」,並不是大樂透的號碼。

接著使用「取出列表內容」的積木,依據剛剛隨機取出的陣列位置position,將指定位置的數值「取出並移除」,然後把取出來的數值先暫時放在一個變數num裏,這個數字就是大樂透隨機選號六個號碼的其中一個。

假設arr內容是「11,12,13,14,15」,position從1~5的數字間隨機挑出3(5是arr陣列的長度),在這個積木執行之後,arr就會變成「11,12,14,15」,長度變成4,而下一次的position就會變成從1~4挑一個數字。

此處比較容易搞混「列表長度」與「列表內容」,要花點時間思考。

最後就是把取出的數字,在每次迴圈執行的時候依序存入結果result列表,當迴圈執行六次之後,result就會有六個數字。

步驟3、顯示並朗讀結果 只要使用顯示文字的積木顯示result,執行後就會在網頁上看到六個數字,為了避免字體太大,這邊把字體設定為30的大小。

最後使用語音朗讀積木,唸出大樂透自動選號的結果。

完成結果 執行程式之後,網頁裡會出現六個號碼,電腦同時會朗讀相關的語音。

範例解答:https://goo.gl/5g8rA4 針對這篇教學,提出問題或建議 Webduino基礎教學 Webduino開發板 馬克一號(介紹) 馬克一號(初始化設定) WebduinoFly(介紹) WebduinoFly(初始化設定) WebduinoSmart(介紹) WebduinoSmart(初始化設定) 開發板擴充設定 Arduino韌體下載與燒錄 ChromeAPIProxy安裝 使用藍芽操控 使用WebSocket操控 WebduinoBlockly 認識WebduinoBlockly WebduinoBlockly基本操作 WebduinoBlockly特殊功能 連動多塊開發板 腳位偵測設定 WebduinoSmart Smart(三色LED) Smart(光敏電阻) Smart(按鈕開關) 發光元件 LED 三色LED LED點矩陣 輸入輸出 繼電器 蜂鳴器 按鈕開關 震動開關 搖桿 紅外線發射接收 環境偵測 超音波偵測 溫濕度偵測 人體紅外線偵測 聲音偵測 光敏電阻 可變電阻 土壤濕度偵測 三軸加速度計 無線感應 RFID 玩具及馬達 伺服馬達 Webduino綜合應用 元件應用 LED(兩顆交互閃爍) LED(霹靂燈) LED(語音聲控) LED(人臉追蹤) LED(Google表單操控) 三色LED(調色盤) 蜂鳴器(多人協奏) 蜂鳴器(會說話的鬧鐘) 傳感器應用 超音波(改變圖片大小) 超音波(控制LED) 超音波(控制三色LED) 溫濕度(Firebase紀錄) RFID(控制Youtube) 可變電阻(改變Youtube音量) 聲音偵測(吹點矩陣蠟燭) 玩具改造 Smart自走車(組裝步驟) Smart自走車(網頁遙控器操控) Smart自走車(超音波避障) 馬克一號自走車(鍵盤操控) 馬克一號自走車(行動裝置操控) 馬克一號自走車(循跡功能) 百元玩具車大改造 智慧生活 智慧植栽(水泵) 智慧插座(組裝與操控) 智慧追蹤(伺服馬達+攝影機) Webduino雲端平台 基本介紹 註冊與登入 Blockly程式積木 Device裝置管理(裝置認證) Device裝置管理(雲端更新) 發光元件 LCD螢幕 輸入輸出 MP3播放器 環境偵測 PM2.5細懸浮微粒偵測 資料庫 Google試算表(設定) Google試算表(儲存) Google試算表(讀取) 綜合應用 記錄PM2.5(Google試算表) Blockly教學 基本功能 變數 流程 文字 數學式 列表 邏輯 迴圈 進階功能 控制台 等待 數值轉換 鍵盤行為 語音聲控 語音朗讀 行動裝置 網頁互動區 文字、點擊、圖片 顏色、按鈕、拉霸 遙控器 Youtube 影像追蹤 創意應用 抽籤並朗讀姓名 大樂透自動選號 隨機組合朗讀語句 語音朗讀逐字稿 小時鐘 語音報時 九九乘法你問我答 BlocklyGames 迷宮 鳥 烏龜 影片 池塘導師 Dr.Smart教學 開發板元件 三色LED 三色LED(色彩輪播) 光敏電阻 光敏電阻(色彩變化) 按鈕開關 按鈕開關(控制顏色) 按鈕開關(控制Youtube) 元件及傳感器 LED 蜂鳴器 震動開關 LED點矩陣 超音波偵測 溫濕度偵測 綜合應用 蜂鳴器(多人協奏) 超音波(倒車雷達) 超音波(控制Youtube) LED點矩陣(顯示距離) LED點矩陣(顯示溫度) 按鈕開關(控制蜂鳴器) 實戰智慧插座 基本操控 組裝智慧插座 網頁操控智慧插座 傳感器應用 超音波偵測距離 光線偵測 人體紅外線偵測 聲音偵測 電視機遙控器 按鈕開關 電流急急棒 土壤濕度偵測 RFID感應 進階應用 語音辨識 人臉、顏色追蹤 手機陀螺儀 聊天室(原理) 聊天室(前後端實作) Google試算表(原理) Google試算表(前後端實作) Google地圖(原理) Google地圖(前後端實作) Youtube互動 Opendata實作 Node-Red(基礎操作) Node-Red(Twitter) Node-Red(E-mail) 日幣匯率(Node-Red爬蟲) 日幣匯率(Node-js爬蟲) 常見問題 Webduino相關 關於Webduino 購買Webduino產品 技術支援與合作 Webduino開發板 關於Webduino開發板 初始化設定



請為這篇文章評分?