轻松学习E-Prime(二十九):E-Basic的条件语句(if)

If这个单词是什么意思,应该不需要解释吧?Select Case你可以理解为“根据情况来做出反应。”
老实说我有点不太愿意写这几节,因为这都是VB的内容。而且深入解释起来又很复杂,所以我打算只写一些最基本的,在E-Prime中比较有可能用得上的。
现在请翻译一下下面这段话:

if a>5 then
temp="a大于5"
else
temp="a小于5"
end if

里面没有什么难以理解的单词吧?表达式应该也很容易明白。
下面是我的翻译:
如果a大于5,那么就把“a大于5”这个字符串赋给temp,否则把“a小于5赋给”temp,结束if语句。
你可能不像我翻译的那么规(酸)整(臭),但是这段话的作用应该是显而易见的。现在打开“示例程序3-7”看一看,然后自己新建一个文件,进行操作,使其完全和“示例程序3-7”一样。
那么下面这两段,也非常好理解:

if a>5 and b>5 then
temp="a和b都大于5"
else
temp="a和b不全都大于5"
end if

if a>5 or b>5 then
temp=”a和b至少一个大于5”
else
temp=”a和b都不大于5”
end if

一样地,打开“示例程序3-8”看一看,然后自己新建一个文件,进行操作,使其完全和“示例程序3-8”一样。尝试理解一下。
查看代码后,你会发现Chr(13)这个东西,这个意思是回车。运行看看,现在明白了什么了吗?如果不明白,试着删掉它,看看不同。
当然,我们也可以在if语句里加入if语句,比如看下面这个:

if a>5 and b>5 then
temp="a和b都大于5"
else

if a>5 then
temp="a大于5,但是b不大于5"
else
temp="a一定不大于5,b不一定。"
end if

end if

相信仔细查看后你也能明白它的意思,简单来说就是判断a和b是否都大于5,如果并没有都大于5,那就看看a是不是大于5。
仔细看,我们看到了两个if then,还有后面是end if的格式。end if的意思是声明一个if语句的结束,想想看,这两个end if 分别是对应哪个if?没错,最底下一行是对应开头的if,而倒数第三行的end if是对应中间的if。
这种if里又有if语句,被称为嵌套语句。因此内层的end if 对应的是内层的if,外层的自然对应的是外层的。
一样地,打开“示例程序3-9”看一看,然后自己新建一个文件,进行操作,使其完全和“示例程序3-9”一样。尝试理解一下。
那么下面这句,没有了else,应该更好理解了吧:

if a>5 then
temp="a大于5"
end if

像“a>5”这种表达式被称为条件表达式,除此之外,还有:

名称 表达式 例子 例子的作用
大于 > a>5 检查a是否大于5
小于 < a<9 检查a是否小于9
大于等于 >= a>=7 检查a是否大于等于5
小于等于 <= a<=3 检查a是否小于等于5
等于 = str=”ss”
str=””
检查str是否是字符串”ss”,数字当然也可以检查。
第二个例子检查str是否是空的,如果是空的,则运行then和end if之间的语句。
不等于 <> a<>5
str<>””
检查a是不是不等于5,如果不等于5,才运行then和end if之间的语句。
第二个例子检查str是否是空的,如果不是空的,则运行then和end if之间的语句。

阶段练习

①我们刚才上上一节的各种示例实验中,已经尝试根据比较读取的数据来显示不同的内容了。现在,如果我们要做到准确地显示a和b哪个大于5哪个没有,应该怎么做呢?如果我们删除List1中的num这一列,应该做什么才能实现相同的功能?
②自己编写一些实例,尝试使用其他的一些条件表达式,熟悉它们的作用。
③做这么一个实验:在屏幕上显示数字,当显示数字在10到50之间的时候,在显示的数字底下加上一行:“这是个重要的数字。”显示的次数由你来定,但是呈现的在10到50之间的数字,和不是在这之间的数字的数量要相同。
④编写这么一个实验:在屏幕上同时呈现两个数字,一个是事先准备好的一列数字,从当中读取其中一个数字x来呈现;另一个数字是当前刺激呈现的次数n,且当n大于10的时候,让n又变成0。当x和n同为奇数或者同为偶数,按f键;否则,按j键。
⑤随意打开一个实验程序,查看它生成的代码,分析出现的if语句的作用。
⑥上网查询VB的Select Case语句,或者到官方自带教程的“E-Basic.chm”这个文件中查询,努力理解怎么使用,并且亲自尝试使用。


此为开源免费教程。教程所用资源等请访问目录或专题,或者Github页面:
https://www.jianshu.com/p/5bbf1c274370
https://github.com/zkx654321/Learn-E-Prime-Easily

你可能感兴趣的:(轻松学习E-Prime(二十九):E-Basic的条件语句(if))