資訊內容
【Scratch工具介紹】控制積木(part 2)
1. 積木功能解釋
如果<? >那么 ? :如果“布爾積木”成立,那么就執行包裹的積木;否則,跳過包裹的積木。然后執行接下來的積木。
如果<? >那么 ? ,否則?? :如果“布爾積木”成立,那么就執行第一塊被包裹的積木;否則,執行第二塊被包裹的積木。然后執行接下來的積木。
從功能描述可以看出,第二個積木是在第一個積木的基礎上增加了一部分的功能,增加的這部分是用來處理條件不成立情況的。
2. 條件判斷的邏輯含義
這兩個積木的難點在于理解“如果…,否則…”的邏輯含義。
舉一個現實中最常見的例子,“父母問小明的語文考試結果怎么樣?”,我們知道“如果分數小于60分,就是不及格;否則,就是及格”。
用流程圖 描述這段邏輯:
邏輯復雜時,流程圖是很好的工具
流程圖是表示算法、工作流或流程的一種框圖表示,它以不同類型的框代表不同種類的步驟,每兩個步驟之間則以箭頭連接。這種表示方法便于說明解決已知問題的方法。流程圖在分析、設計、記錄及操控許多領域的流程或程序都有廣泛應用。
-- 維基百科
在其他編程語言中,這個積木對應著著名“if…else…”語句。用Python編程語言描述這段邏輯,代碼如下。
3. 積木用法
講解完“如果…,否則…”(“if…else…”),通過實例了解下這兩個積木的用法。
如果<? >那么 ? :
如果<? >那么 ? ,否則?? :
4. 更復雜的條件判斷
上面的“if…else…”是只有一個條件的情況,如果條件不止一個,應該怎么辦呢?
比如,把上面“判斷成績是否及格”的例子改一下:
當成績60分以下時,表示不及格;
當成績60到80之間時,表示及格;
當成績80到90之間時,表示良好;
當成績90分以上時,表示優秀。
用Scratch表述就會是這個樣子,只要將 如果<? >那么 ? ,否則?? 積木多嵌套基層就能實現需求了:
此例只是為了演示需要,涉及參數、運算等未講解內容,可以暫不細究
02 條件等待
等待,直到“布爾積木”條件成立(為“真”),才繼續執行接下來的積木。
舉個例子:汽車開到路口正好遇到信號燈是紅燈,汽車要在這里等待,直到“信號燈變成綠燈”,汽車才能通過路口繼續行駛或轉彎。
03 克隆
創建某角色的克隆、作為克隆體啟動、刪除克隆體,是控制積木中較難理解和使用的積木。在某些場景下,克隆很有用,比如飛機大戰中天上散落的障礙物,但暫時我們還用不到,所以按下不表,后續用到的時候再講解。
聲明:本文章由網友投稿作為教育分享用途,如有侵權原作者可通過郵件及時和我們聯系刪除
