00:00
好,接下来我们来看一下我们的这个练习啊,这个九九乘法表,这个练习我们来新建一个文件。保存一下。11我们的一个九九乘法表。那这个练习呢,如果是第一次接触的同学呢,可能还。哎,没有什么思路对吧,那这种东西其实如果这样我跟你说的话,你会发现其实这道题特别简单,哎,我们来看一下啊,之前我们分析过它的这个这个公式了,那其实我们会发现什么呢?要稍微调整一下格式。这个乘法表其实它非常简单,简单在哪呢?你看啊,它第一行是一乘以一是一个式子,对吧,第二行是一乘以二,二乘以二是两个式子,第三行是什么呀?是三,哎,一乘以三,二乘以三,三乘以三是三个式子,你会发现实际上我们所谓的九九乘法表。
01:04
是不是也是这样一个三角形啊,哎,也是这样一个三角形,第一行一个,第二行两个,第三行三个,然后四个,然后五个,最后一行是不是九个,以此类推啊,哎,以此推,所以注意了,这个九九乘号表其实也是这样一个三角形,只不过它这里边的三角形不是用星号,而是用我们这几个什么呀,哎,这个公式来代替吧,哎,公式来代替,那至于现在它用什么来代替,我们先不管,我们能不能尝试着先把这个三角形给打出来,哎,那非常简单了,那这样啊,我们来干嘛呢?哎,我们来先创建一个外层循环,哎创建一个外层循环来控制我们这个循环的,控制我们这个图形的一个高度啊,图形高度直接啊,还是我们来一个I等于零,然后这来一个Y,来一个I小于,哎,I小于九,因为我们一共是九层对吧,所以这是小于九。
02:04
然后这里呢,注意了,我先写A加等于一,为什么这要先写A加等于一,因为我们九九乘号表是从一到九的,对吧,如果我不写它,我要我要是在把它写到后边,那我们这个结果应该是从零一直到八啊,零到八,而我们实际结果是应该是从一到九啊,所以我先加,先加就是从一到九了啊先咱们这样可以看一下我们这样啊,我们先普润一下,普一下这个A,我把A加等于写到前边,这就是一到九,如果把A加等于一写到后边就变成什么了,哎,就变成了零到八了啊,零到八了,所以把它写前边啊,写前边。好,这写好了以后,我们接下来再看,呃,接下来再看什么呢?哎,我们再写一个高度已经有了,那接下来我们是不是该定宽度了,哎,定宽度定宽度我们这儿来,诶创建一个内层循环来控制我们这个图形的一个宽度,内层循环我们这来一个接也是等于零,然后Y来一个这个接小于什么呀?哎,接我们应该还是小于我们这个I加一啊,小于I加一,然后在这儿我们来print一下,我们还是先拿我们这个星号来代替加空格吧,然后我们这儿不要忘了来一个什么呢?诶来一个这个end等于空串,先不要换行,然后在这儿不要忘了接,诶我们还它是不是也应该先加呀,诶接加等于一啊,接加等于一,然后再往下,最后我们不要忘了再打印一个什么呀。
03:46
哎,打印一个换行啊,这个时候我们一执行来看效果,哎,是不是就出现这么一个呀,哎就出现这么一个,但是这里边明显出现问题了,第一行是不是出现了两个星号啊,哎出现了两个星号,所以我应该是这写错了,我这就不应该写什么了,哎不应该写这个I加一了,应该就是什么呀,就是I是不是这样就没问题了,为什么这时候写I就行了,因为我们的I在这儿是不是加过了,哎在这已经加过了,所以在这就没有必要加了,不像我们之前那I是在在下边加了,你这就得加一,而这个我们在上边加过了,所以这就不用再加了啊大家再稍微看一下,好,那现在我们这个图形已经出来了啊,我们这么一个三角形就已经出来了,那接下来我们要做的事就简单了,我们要的是什么?是不是把每一个星号我们都要换成一个公式啊,第一个星号我要换成一乘以一,第二个换成一乘以二,二乘以二,然后是一乘以三,二乘以三,是不是以此类。
04:46
对呀,哎,以此类推,那现在的问题是我这一乘以一,一乘以二也好,那这里边有两个数对吧?有两个数我们这有两个变量,一个是I,还有一个是阶,I实际上是代表的我们图形的一个高度,而阶是代表我们每层的一个宽度,对吧?那这两个数到底哪个是高,哪个是宽呢?哪个是高哪个是宽呢?我们来看一下,我们来看第二,我们先看第二个数123,你看啊,第一行第二个数就是一,第二行第二个数是不是就是二啊?第三行第三个数是不是就是第二个数就是三啊,第四行应该是不是就是四啊,到第九行是不是就是九啊,你会发现它每一行的第二个数都是固定的,都是固定的实际上就是行高是几,第二个数是不是就是几啊?哎,行高是几,第二个数就是几,那第二个数实际上就是,哎,第二个数实际上就是我们图形的一个。
05:46
高度也就是什么呀,哎啊,第二个数也就是A,那你就知道第一个数就是谁呀,哎,就是接,所以这我们在打印的时候,我们要怎么去打印啊,怎么打印,我们这样用我们的一个这个诶占位符来给它填充一下,或者用我们的这个什么呀,诶格式化字符串好久没用了,对吧?比化字符串我这应该是什么?应该是我们的阶去乘以,哎,啊,应该是用我们的阶去乘以,哎因为我们第一个数,第一个数是宽度,你看1112123,是不是第一个在变呀,这个是阶,而第二个数是不变的,这应该是我们的I,然后阶乘以I,我们要等于什么呀?哎,等于个I乘阶,这这就无所谓了,它俩税就无所谓了,这样我们再一直行是不是就出来了,哎,一乘以一等于一,一乘以二等于二,然后最后到九角81啊就是八一,但是这块可能它们之间间距有点大是吧,我们这样吧,把它们间距给它调没不要这间距。
06:48
然后呢,我在它后边加一个空格啊,让每一个式的跟每个式的这样一个空格,那这样我们这个九九乘号表是不是就出来了,哎,一一得一,一二得二二得四,一三得三,二三得六,三三得914得四,二四得八三四十二,四四十六等等等等一系列的我们这乘号表出来了啊,所以这个九九乘号表你刚上来的时候,你看他会觉得有点没思路,但是实际上当你把它看明白了以后,你会发现其实它就是一个什么呀?哎,它就是一个这么一个三角形啊,就是一个三角形有高度还有宽度啊,我们通过这个什么呀?哎,通过这个外层循环来控制高度,通过内层循环来控制宽度,你把这图形打出来,然后把那个图形里边的星号换成这种公式,是不是就完事了,那就完事了啊,这个就是我们说的一个九九差表啊,就OK了,好,那这个东西说完了,然后再来说一下我们下边一个质数的一个练习啊,还是来创建一个新的文件吧。
07:45
啊,我们来一个12。质数的一个练习,质数的练习呢,在这儿我们来粘过来啊,它是什么练习啊,让我们求100以内所有的质数,求100以内所有的质数,那这道题之前我们做过类似的,我们是什么呀?给你一个数来判断它是不是质数对吧?给你一个数判断它是不是质数,那这道题跟我们之前这个题实际上是一样的,只不过这个时候不是给你任意一个数了,是给你一到100这么几个数吧,所以这个时候其实就是在我们之前那个练习的外边,我再套一个循环就行了,我们来一块儿做一下啊,这题跟那个是一样的啊,我们来整一下,我先来创建一个这个循环,求什么呢?求一到100以内,哎,所有的数啊,所有的数,那这块我直接来一个什么呢?哎,我先来整一个,I等于几呢?I等于二,我I要从二开始,为什么从二开始?因为我们知道一不是质数,也不是合数,所以。
08:52
啊,E没有意义对吧,所以在这儿我们从二开始,然后我们来一个Y循环,Y要什么呢?I小于100啊,I小于100,或者呢,这其实更合适,应该是I小于等于100啊,I小于等于100,因为我们要包括100啊,包括100,然后在这儿我们在最后来一个I加等于一啊,每一次自增一啊,每一次增一,然后在这里边我们就要写了,那现在我们这个循环,我这直接补润一下I,这个I的值就是一直从二一直到什么呀,到100,也就说现在我们已经获取到二到100之间所有的数,那接下来我们是不是要判断什么,判断我们这个I是否是质数啊,哎,判断我们这个I是否是质数,那在判断之前我们说了,我们这里边是不是需要把所有可能成为I的因数的数,我是不是都要获取到啊,哎,都要获取到,那所以这个时候我。
09:52
要写一个循环,在循环里我是不是要判断呀,所以在这里边我先创建一个变量,创建一个变量,记录我们这个I的一个状态,也就是我要记录I是否是质数,我默认认为I是质数啊,默认认为I是质数,所以这来一个这个flag等于什么呢?等于处默认情况下我认为I是质数啊好,然后在这我再来判断,怎么判断呀,我先来获取I的哎,获取所有可能成为I的这个什么呢?因数的这些数啊,直接来一个这个等于谁呀,阶也是从二开始啊,接也是从二开始,然后这来一个YY,我们应该是阶小于,哎,这就没有等于了啊,但是没有等于小于I,因为你阶必须比I小,不能包括什么呀,一和I本身对吧,所以阶要比。
10:48
A小,并且它是从二开始的啊,从二开始的,那现在这儿不要忘了再来一个接加等于一啊接加等于一好,那在这我们是不是货就要接了,哎,我们要货就要接了,来我们来看一下,我们来判断我们这个I能否被这个什么呀?哎,被揭整除,直接来一个if I摩已接干嘛呢?等等于零,如果膜已接等等于零,是不是证明I能被阶整除,哎,I能被阶整除。
11:22
整除,哎,证明什么,证明我们这个I不是什么呀,哎,I不是质数,我们要干嘛修改flag为false,诶为false,直接来一个。Flag。哎,等于一个false啊等于一个false,好,这改完了,是不是跟我们之前那个代码是不是一模一样的呀,哎在这在我们这个while循环的外边,我们要验证什么呀?哎,验证我们这个结果,哎验证结果并输出啊验证结果并输出在这里我直接来一个if什么呢?If我们这个flag啊if flag,然后在这我们来一个这个print。
12:07
Print print什么呀,Print一个,哎,也就说什么意思呀,如果在这儿I是质数,我是不是就把I输出啊,不是质数,我是不是就不理他了,哎,不理他了,就这样一个,我们来看效果啊,来看效果这样一直行走一个哎。这看来结果肯定不对呀,因为出100都出来了,对吧,100都出来了,我们来看一下啊,23456。一个。哎,我们来看一下啊,二十三四五六七八九十,它这个位置是不是等于把我所有的数从二到100是不是全都输出了,哎全都输出了,我们来看一下这块肯定是哪写的有问题啊,哪写有啊,哪写的问题啊,这flag这F我是不是写成大写的了,哎写成大写的等于这跟这压根是不是一点关系都没有啊,哎,所以注意这个位置我应该写成什么呀,小写F啊小写F那注意了,我们在开发的时候也很容易犯这种错误啊,变量名写错了,而且差的不多啊,一个小写,一个大写,但是我们拍子里边严格全大写,是不是大小写不一样啊,哎,不一样,但是这里边就带来一个问题,这种问题你在执行的时候,它不是什么呀,不是我们语法的错误,它是业务逻辑的错误,所以这种错你排的时候相对来说比较难排一点,所以你要自己能找到这种错误啊好,我把这F改成小写,这时候我们再看走一个,诶再来看235 71,十三十,79 23 29 31,诶这个是不是就是我们这几个质数,哎,就是。
13:32
有一个质数啊,那这里我们就求出了100以内所有的质数啊,100以内所有质数其实跟我们之前,你像这个代码跟我们之前那是基本上是一样的,只不过我们在外层又套了一个循环获取到什么呀,二到100之间所有的这些数啊,二到100之间所有的这些数,好那这个两个练习我们就做完了啊,一个是我们这个乘法表,还有一个是质数练习,都是比较典型的这个位置,其实用我们这个while循环做的时候会稍微有点麻烦,但是呢,我希望你也好好去认真的去给它做一下啊,好好体会一下这个练习,好这里我们先停一下。
我来说两句