資訊內(nèi)容
【Scratch工具介紹】控制積木(part 2)

1. 積木功能解釋
如果<? >那么 ? :如果“布爾積木”成立,那么就執(zhí)行包裹的積木;否則,跳過包裹的積木。然后執(zhí)行接下來的積木。
如果<? >那么 ? ,否則?? :如果“布爾積木”成立,那么就執(zhí)行第一塊被包裹的積木;否則,執(zhí)行第二塊被包裹的積木。然后執(zhí)行接下來的積木。
從功能描述可以看出,第二個(gè)積木是在第一個(gè)積木的基礎(chǔ)上增加了一部分的功能,增加的這部分是用來處理?xiàng)l件不成立情況的。
2. 條件判斷的邏輯含義
這兩個(gè)積木的難點(diǎn)在于理解“如果…,否則…”的邏輯含義。
舉一個(gè)現(xiàn)實(shí)中最常見的例子,“父母問小明的語文考試結(jié)果怎么樣?”,我們知道“如果分?jǐn)?shù)小于60分,就是不及格;否則,就是及格”。
用流程圖 描述這段邏輯:

邏輯復(fù)雜時(shí),流程圖是很好的工具
流程圖是表示算法、工作流或流程的一種框圖表示,它以不同類型的框代表不同種類的步驟,每?jī)蓚€(gè)步驟之間則以箭頭連接。這種表示方法便于說明解決已知問題的方法。流程圖在分析、設(shè)計(jì)、記錄及操控許多領(lǐng)域的流程或程序都有廣泛應(yīng)用。
-- 維基百科
在其他編程語言中,這個(gè)積木對(duì)應(yīng)著著名“if…else…”語句。用Python編程語言描述這段邏輯,代碼如下。

3. 積木用法
講解完“如果…,否則…”(“if…else…”),通過實(shí)例了解下這兩個(gè)積木的用法。
如果<? >那么 ? :

如果<? >那么 ? ,否則?? :

4. 更復(fù)雜的條件判斷
上面的“if…else…”是只有一個(gè)條件的情況,如果條件不止一個(gè),應(yīng)該怎么辦呢?
比如,把上面“判斷成績(jī)是否及格”的例子改一下:
當(dāng)成績(jī)60分以下時(shí),表示不及格;
當(dāng)成績(jī)60到80之間時(shí),表示及格;
當(dāng)成績(jī)80到90之間時(shí),表示良好;
當(dāng)成績(jī)90分以上時(shí),表示優(yōu)秀。
用Scratch表述就會(huì)是這個(gè)樣子,只要將 如果<? >那么 ? ,否則?? 積木多嵌套基層就能實(shí)現(xiàn)需求了:

此例只是為了演示需要,涉及參數(shù)、運(yùn)算等未講解內(nèi)容,可以暫不細(xì)究
02 條件等待

等待,直到“布爾積木”條件成立(為“真”),才繼續(xù)執(zhí)行接下來的積木。
舉個(gè)例子:汽車開到路口正好遇到信號(hào)燈是紅燈,汽車要在這里等待,直到“信號(hào)燈變成綠燈”,汽車才能通過路口繼續(xù)行駛或轉(zhuǎn)彎。
03 克隆

創(chuàng)建某角色的克隆、作為克隆體啟動(dòng)、刪除克隆體,是控制積木中較難理解和使用的積木。在某些場(chǎng)景下,克隆很有用,比如飛機(jī)大戰(zhàn)中天上散落的障礙物,但暫時(shí)我們還用不到,所以按下不表,后續(xù)用到的時(shí)候再講解。
聲明:本文章由網(wǎng)友投稿作為教育分享用途,如有侵權(quán)原作者可通過郵件及時(shí)和我們聯(lián)系刪除
