App Inventor學習記錄76,數字照順序排列,由大到小或由小到大排列的寫法

前一篇中,我們介紹了大樂透及威力彩隨機選號的作法,但隨機選號出來的數字,沒有照順序來排列,所以看起來就比較不舒服,所以這一篇要介紹的就是數字照順序排列,由大到小或由小到大排列的寫法

記錄一下:
App Inventor學習記錄76,數字照順序排列,由大到小或由小到大排列的寫法


這裡就直接沿用上一篇的畫面配置,實際的畫面像這樣:

這裡有 3個按鈕,我把按下 3個按鈕後會發生的事情,都截圖到同一張圖片上。
隨機選號按下後,自然就是產出 6個隨機數字。
由小到大以及由大到小按鈕按下後,把就這 6個數字排列一下。


畫面編排的部份如下:(同樣是沿用上一篇的)


全部的程式碼如下:


第 1部份的程式碼說明:

我們把要用的變數給建立起來。


第 2部份的程式碼說明:

這個隨機選出六個號碼,並個別顯示在標組的標籤上的功能,我們在上一篇有介紹過。
這裡就不在多做介紹。


第 3部份的程式碼說明:

建立兩個變數,一個叫前數字,一個叫後數字,它們的預設值都為 0。
這兩個變數,就是拿來比較數字大小之後,然後替換清單中數字的位置用的。


第 5部份的程式碼說明:

這裡就是這一篇的重點了,我們先來建一個叫由小到大的程式。
這隻小程式主要的目的,就是依序拿選出 6個隨機號碼清單中的兩個數字做比較,如果前一個數字的值大於後一個數字的值的話,那麼就把這兩個數字在清單中的位置對調

舉個例來說,假設,我們取得選出 6個隨機號碼清單的值是:[6,5,4,3,2,1]。
當外回圈的值等於1,內回圈的值等於 1時,把前數字的值設定為 6,把後數字的值設定為 5,6大於 5,所以把這兩個的位置對調。選出 6個隨機號碼清單的值就會變成 [5,6,4,3,2,1]。

當外回圈的值等於 1,內回圈的值等於 2的時候,把前數字的值設定為 6,把後數字的值設定為 4,6大於 4,所以把這兩個的位置對調。選出 6個隨機號碼清單的值就會變成 [5,4,6,3,2,1]。以此類推,內回圈會做 5次。

等內回圈的部份做完,選出 6個隨機號碼清單的值就會變成 [5,4,3,2,1,6]。

接著,外回圈的值等於 2的時候,再重覆的做內回圈的程式。
這個用文字說挺麻煩的,幹脆做個表來記錄一下。


第 6部份的程式碼說明:

這部份就跟前面是一樣的,只是改變了比大小的方向。
補充一下,這裡有多拉了一個參數叫,要比的列表。這個參數在這一篇中暫時用不到。


第 7部份的程式碼說明:

當由小大到按鈕被按下之後:
呼叫由小到大的程式,然後用任意元件,把標籤的顯示文字給設定一下。
把數字顯示區這個標籤的文字,設定成數字由小到大排列。


第 8部份的程式碼說明:

這個部份跟上面是一樣的,只是呼叫的程式改成由大到小。


這次介紹的數字照順序排列,由大到小或由小到大排列的寫法很明顯只能用在數字上。如果要改成照字母排列的話,那就是另一種寫法。這個部份我們改天再來寫(等我學會以後……)

這次的 aia檔的下載連結如下:
點我下載 NO_76_Number_by_order.aia

參考書籍如下:
手機應用程式設計超簡單 App Inventor 2零基礎入門班
TQC+ 創意App程式設計認證指南
TQC+創意App程式設計認證指南解題秘笈
手機應用程式設計超簡單:App Inventor 2初學特訓班
手機應用程式設計超簡單:App Inventor 2小專題特訓班
手機應用程式設計超簡單:App Inventor 2資料庫專題特訓班

之前介紹過的一些 appinventor的使用記錄,都整理在下面這個頁面上了。
APP INVENTOR學習記錄及資源整理頁面

發表迴響