00:04
我们看到在我们刚才这个程序里面啊。这句话。做完之后,他是有两个不同的去向的。他有可能是到了里面做这句话,他也有可能是到了外面去做这句话了。当然我们知道里面这句话做完之后呢,它总是会到外面这句话来的。也就是说程序的运行,程序的执行在这个地方出现了分叉,根据条件age是否小于M,它可能会去做一些分叉。我们之前曾经画过这样一张图啊,来表达我们那个呃,自动售票机的是吧,当时我们说如果OK的,那我们去印票,否则的话呢,我们就出一个什么什么样的提示,对不对,这种画法呢,是比较粗糙的画法,或者说比较原始的画法啊,在计算机界呢,其实我们有成熟的一套,呃,画这种图的一种方式,用来表达程序怎么样的流转,这种图呢,叫做流程图,那在一个流程图当中呢,我们有一些基本的东西,通常呢,一个圆角的矩形呢,表示说开始。
01:14
然后呢?我们如果画一个方框呢,表示说我们要去做什么样的事情。如果画一个平行四边形呢,表示说我们要输入比如说啊input什么AB之类的事情啊,接下来呢,如果我们要比较做比较呢,我们画的是菱形啊,比如说A大于B,那从菱形呢,就可能会有两条不同的出路,是可能会有E。可能会有。那如果yes呢?我们可能会去做一件什么样的事情,然后呢,如果no呢?那接下去又要做什么样的事情?而yes做完,我们还会回到楼下面要做的那个事情去。哎,所以这样子呢,大概就是我们流程图里面基本东西,但是如果最后啊,程序结束了,OK,我们最后还有个ED。
02:07
啊,这样的一种东西就叫做流程图,流程图呢,呃,可以用来表达程序是怎么流转啊,程序里面是一步步是怎么走的,那么如果你程序里面有这种分支啊,啊,将来我们还会学到循环啊,啊有这些东西的时候呢,流程图可以比较清楚的表明你的程序的走向,程序的大致的这个运行的情况,所以呢,我们的刚才的这个,呃,年龄的这个程序呢,它的流程图就可以画成这个样子啊,当然这个流程图上面缺了点东西,缺什么呢?你看在。这个地方。啊,我们应该要有说明这是yes还是no的对吧?啊,显然这里应该是个yes啊,所以呢,流程图一般来说就长成这个样子,我们后面呢,也会比较频繁的看到流程图啊,我们在讲解一些东西的时候,就会把它的流程图拿出来。我们再来看一个问题,现在呢,我们想要去比较两个数的大小。
03:00
我们想要这个,找到其中大的那个。那么按照我们刚才学过的这个if语句,我们可以写出这样的代码,我们读出了,读到了X和Y,然后呢,我们有一个变量叫做max,它用来保存,用来记录哪个是最大的。然后我们用if语句,我们就可以说,如果X是大于Y的,那么那个max就是X。所以如果X是大于Y的,当然这个程序是对的,对不对?我们知道说如果X大于Y,那么X就是X了。反过来。如果X不大于Y。也就是说,如果Y才是那个正确正确答案的话,这个程序没有办法给到我们那个正确的答案。我们应该怎么做呢?那有一个方案是这样,我们写两个判断对不对啊,这个办法总是比困难多嘛。如果X大于Y,那么X就是X。做完之后,我们再来判断一下,如果Y大于X的话,那么max就是Y。这个方法在现在这个程序里头呢,它恰好是可以用的,但是它不是最好的。
04:06
当然,也有聪明的同学说,我们可以这么干啊,我们预先让max等于Y。然后如果X大于Y的话,我们再换过来说,X等于X。这算是一个比较取巧的方案,对不对?但是呢,比较合理的方案,我们应该这么去做,说如果X大于Y的话,那么max是XL。否则的话,Else的意思就是否则,所以else是用来和if连在一起,用来在if语句当中表达如果不是那样的话,我们该怎么做,否则的话我们该怎么做的意思。所以在这个判断里头就是如果X是大于Y的,那么max等于X,否则的话,Max就要等于Y。我们还可以再看个例子,如果hit小于max,那么等于是,否则的话,Gro呢,等于max加hit啊,Max减hit,那么我们画出流程图,就这样子,如果。
05:02
Hate hate小于max,条件为true的,那么等于是else走另外一条路。最后呢,我们都要去执行下面的语句的。所以这是f else,我们可以再看一个例子啊,我们的让用户输入每小时他工作多少小时啊,比如说我们知道一周是40小时的工作时间,那如果他这一周工作的时间大于standard啊,大于standard大于40了,那我们配呢,是有一种计算方案的,如果。不大于40,也就是说没有加班对不对,大于40表明加班了嘛,没有加班,那么我们有另外一种方案去计算配,最后呢,不管怎么算的配,我们都要把这个gross earning啊,就是你啊,应得的收入啊,应付工资给你输出出来,计算出来,这就是if else的例子。我们再看一个例子说如果我们让用户输入一个成绩啊,然后呢,如果这个成绩小于pass,如果pass是60分的话,如果小于pass,那我们说很遗憾你没有及格,否则的话,也就是说大于等于60对不对,否则的话我们不需要再去判断了啊,因为已经判断过一次了嘛,否则的话,那我们说祝贺你这个成绩及格了啊。
06:15
那如果。我们在L那里是有一对大括号的,当然跟if一样,If可以有大括号L,当然也可以有大括号L4,这个大括号说把祝贺你这个成绩再见了和这个成绩及格了和再见放在一起。啊,那么这就意味着如果你没有及格,我就没有跟你说再见对不对,因为这句再见了被放在else里面了,这是如果条件不满足的时候要做的那么一个动作。
我来说两句