2021-3-7 17:42:21 [显示全部楼层]
536浏览
查看: 536|回复: 0

[Technovation] 【Technovation官方中文教程】 编程7 - If / Else条件语句

[复制链接]
教程地址:https://bit.ly/TGirlsCN-Coding7
返回教程目录:https://mc.dfrobot.com.cn/thread-308465-1-1.html

编程7:If/ Else条件语句
  
使用条件语句是在代码复杂性课题中获得更多分数的一种方法。它还可以帮助应用程序函数和用户体验和设计。
  
  
本课中,您将学会……
  
●        学习条件语句和如何写条件语句
  
●        确保用户在文本框中提出问题,完善您的魔法8号球应用程序。
  
  
关键术语和概念
  
●        条件 -   某个事物正在经历的状态或情况
  
●        条件语句 -   计算机做出决定的一种方式
  
●        If  / Else  -  编程中条件语句的一种常见形式;  告诉计算机,如果(if)条件为真,请执行此操作。 否则(else),如果条件为假,则执行其他操作。
  
灵感 -  条件
  
到现在为止,您已经使用了很多事件处理器了。在过去的几个活动中,当用户按下一个按钮,您的应用程序就会执行某些操作。例如,在《代码6:列表》的魔法8号球应用程序中,输入按钮将项目添加到待办事项列表中。事件是用户按下“输入”按钮,应用程序处理该事件的方式是将用户的文本添加到待办事项列表中。您应用程序代码的运作方式如下:
  
SatMarch-202103066892..png
  
如果您没有机会参加此活动,则可以下载代码并立即尝试
  
您可能也注意到了,我们可以按下输入而不提问(将方框留空),应用程序仍然会给你一个答案。我们一起来解决这个问题吧。我们当然不希望出现用户没有问任何问题,却出现答案的情况。因此,每次用户点击输入,我们希望我们的代码检查 “用户是否输入了任何文本“?如果答案是肯定的,应用程序就会给他们一个答案。如果答案是否定的,应用程序就会要求他们提问。现在您的代码看起来更像这样:
  
SatMarch-202103063022..png
  
在这里,“做这个”表示“给出答案”,“做那个”表示“要求他们提出问题”。 这是解决上述问题的一种好方法,不过需要记住,计算机无法自己思考,因此您不能像问一个人那样直接向它提问。
  
在编码中,当您想问自己的应用程序一个问题时,就得编程让它检查一个条件。条件是计算机用来可以判断对错的东西。“真”就像电脑回答“是”,“假”就像在回答“否”。您可以让应用程序根据条件的真假来做不同的事情。您可以通过以下方式使用条件,询问应用程序用户是否输入了文字:
  
SatMarch-202103068720..png
  
还记得《代码4:数据和函数》中的数据类型布尔值吗?布尔值是一种数据类型,可以为真,也可以为假。当您的应用程序检查一个条件时,它会以布尔值的形式给出答案。
  
  
条件语句
  
  
现在,您学习了什么是条件,但应该如何在编码中使用它呢?在编码中,您要求计算机通过编写条件语句来检查条件。条件语句是计算机做决定的方式。条件语句总是有一个if部分,它告诉应用程序当条件为真时应该做什么。条件语句通常也有一个else部分,它告诉应用程序当条件为假时应该做什么。如果您省略else部分,那么当条件为假时,您的应用将不做任何事情。现在您的输入按钮代码看起来应该是这样的:
  
SatMarch-202103064742..png
  
下面是App Inventor和Thunkable中的条件语句。
  
image009.png
  
这些代码块的运作方式如下。您在if旁边放置一个条件。 如果条件为真,则将代码放置在then(则)旁边,如果条件为假,则将代码放置在else(否则)旁边。 如果条件为真,则仅运行then(则)旁边的代码,而else(否则)旁边的所有代码。 如果条件为假,then(则)旁边的代码将被忽略,if(如果)旁边的代码将运行。 可以认为它说:“if(如果)满足此条件,then(则)做这个,  else(否则)做那个”。
  
让我们回到魔法8号球的例子。下面是条件语句填充后的样子。
  
image011.png
  
在这里,当用户点击“输入”按钮时,应用程序将检查这个条件:“文本框中的字符串不等于一个空白字符串”。如果这个条件为真(字符串不等于空字符串),意味着用户已经输入了文本,所以应用程序将给用户一个答案。如果条件为假(字符串等于一个空字符串),那么then旁边的所有代码都被忽略,并跳到else,就是在告诉用户“先问我一个问题!”
  
编写这种条件语句的方法有好几种。它们都是有用的,是否好用取决于个人看法。下面还有四个示例。看看您是否能理解它们。
  
   
示例1:
   
   
image013.png
   
   
条件:文本框中字符串的长度等于零
示例2:
   
   
image015.png
   
   
条件:文本框不为
示例3:
   
   
image017.png
   
   
条件:文本框中的字符串长度等于
   
(请注意,与示例1相比,thenelse旁边的代码块已对换了)
示例4:
   
   
image019.png
   
   
Condition: the textbox is    empty
   
(notice that the blocks next to then and else are    switched compared to example 1)
   
条件:文本框
   
(请注意,与示例1相比,thenelse旁边的代码块已对换了)
   
  
活动 – 更聪明的魔法8号球
  
到了让您的魔法8号球应用程序变得更好的时候了! 您希望自己的应用程序检查用户在按“输入”时是否真的输入了。看看自己还记不记得如何创建条件语句。
  
image021.gif
  
  
  
  
活动 – 获胜者计数应用程序
  
此活动基于《代码5:变量》中的活动。如果您尚未完成该活动,请立即尝试!
  
现在您已经熟练掌握了魔法8号球的条件,我们来改进另一个旧应用程序吧,即计数应用程序。 我们可以把这个应用程序变成游戏。在用户达到100时,尝试重新开始计数。因此,当用户按下按钮以增加计数时,您将需要检查并确保他们没有超过100。您认为条件陈述应该放在哪里?
  
image022.gif
  
    
您被难住了吗?这里有一些代码几乎写完了,但有一个bug!我们的应用程序有时有用,有时没用。有时候它会告诉用户他们赢了,有时候则会一直计数超过100。为了测试它,通过按10次“增加10”精确地落在100上。接下来按“增加1”,然后按10次“增加10”。您能弄清楚是哪里出了问题吗?
  
  
举一反三
  
在本课程中,您学习了条件语句。 您能想到每天用于决策的一些条件语句吗?示例如下:
  
●        如果正在下雨,则带上雨伞,否则会弄湿
  
●        如果外面很冷,则带一件外套,否则会冻结!
  
●        如果您的手机没电了,则给它充电,否则您将无法使用手机。
  
●        如果您生病了,则就去看医生,否则去上学。
  
●        如果衣服脏了,则洗干净,否则没有干净的衣服穿!
  
●        如果你吃蔬菜,则会得到甜点,否则妈妈不会让你吃!

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

为本项目制作心愿单
购买心愿单
心愿单 编辑
[[wsData.name]]

硬件清单

  • [[d.name]]
btnicon
我也要做!
点击进入购买页面
上海智位机器人股份有限公司 沪ICP备09038501号-4

© 2013-2022 Comsenz Inc. Powered by Discuz! X3.4 Licensed

mail