【Scratch】交換兩個清單資料項目的內容
和上一篇文章中所介紹的交換兩個變數內容不太一樣的地方是,清單變數裡面有許多資料項,要指定到資料項取出內容時要指定其索引值(也就是哪一個位置),並使用清單的專有函數積木才可以,但是在交換過程中需要用來暫存資料的變數則是使用一般的變數就可以了。
資訊技術教材網
和上一篇文章中所介紹的交換兩個變數內容不太一樣的地方是,清單變數裡面有許多資料項,要指定到資料項取出內容時要指定其索引值(也就是哪一個位置),並使用清單的專有函數積木才可以,但是在交換過程中需要用來暫存資料的變數則是使用一般的變數就可以了。
有一些操作(例如在排序的時候)會用到把兩個變數的內容交換的操作,有一些程式語言支援了交換變數內容的命令(例如BASIC的SWAP),也有一些語言直接在語法上操作就可以達成(例如Python的 a, b = b, a),但是如果都沒有這些支援的時候,該如何用變數的操作來達成交換兩個變數內容的目的呢?
有些同學一開始匯入撲克牌的圖形檔時就會以不同花色來給不同的數字,如此就可以從檔案名稱直接看出牌的內容(1~13)。而在我們之前的例子中,是把牌從1號編號到52號,因此想要得知牌的內容大小時,需要經過取模數(餘數)的操作,也就是用13來除除看餘數是多少,其餘數即為牌的內容大小。
同樣都是找出最大值和最小值,但是和前面那個範例不一樣的地方在於,前一個例子是在輸入資料時一邊放入資料,一邊就在判斷最大值以及最小值了,但是在這個例子中,我們假設清單的資料是一開始就已經有的,我們是要透過一個迴圈到清單中去找出最大值和最小值。
接續上一篇文章的內容,在井字棋遊戲已經可以使用陣列(清單)來記錄棋盤的內容時,此時就可以根據清單的內容來判斷是哪一方可以獲得最終的勝利。