高一上册信息技术 分支结构 逐字稿-2,479字
师:今天我们继续学习分支结构,先对上节课布置的练习做讲解。第一题,输入一个整数,判断奇偶并输出结果。从数学角度看,一个数除以2余数为0就是偶数,不为0则是奇数。在编程中,要用到取模(取余)运算符——百分号。比如,5除以2的余数可写成5 % 2,结果是1;9除以3的余数写成9 % 3,结果是0。学会取模运算后,这道题就容易了。若输入一个数存到n里,对n % 2取模,结果为0就是偶数,为1就是奇数。
下面看程序。首先用input输入语句输入一个数,存到变量n里,然后判断n取2的余数是否为0,若为0,输出“这是一个偶数”,否则输出“这是一个奇数”。这题虽简单,但大家要记住百分号这个新运算符,它作用很大。
接着讲解水仙花数。水仙花数是三位数,特点是每一位的三次方之和等于它本身。例如153,百位是1,十位是5,个位是3。1的三次方是1,5的三次方是125,3的三次方是27,1 + 125 + 27 = 153,正好等于它本身,这样的数就是水仙花数。
数学里还有很多类似的自幂数,像四位自幂数叫四叶玫瑰数,即一个四位数,它千位、百位、十位、个位分别三次方加起来等于本身;五位自幂数叫五角星数;六位自幂数叫六合数;七位自幂数叫北斗七星数,大家有兴趣可以自己探索。
知道了水仙花数的特点,怎么编写程序判断用户输入的数是不是水仙花数呢?首先要把这个三位数分解出百位、十位和个位,再将各个位上的数三次方加起来,判断是否与本身相同,相同就是水仙花数,不同就不是。难点在于如何分解这个三位数。
分解个位很简单,用取余符号,一个十进制数和10取余就能得到个位数。百位也简单,一个整数整除100,即除以100取商,得到的就是百位数。这里讲讲什么时候取商,什么时候取余。比如除以100,可看成在百位后面划一刀,取商就是取这一刀前面的数,即整除结果;取余就是取这一刀后面的数,即余数。
再看怎么取十位数,它比较难,不能直接取商或取余得到。但如果把三位数掐头或去尾变成两位数,就能用取商或取余的方法得到。先说掐头法,比如153,取除以100的余数,就得到53,再对53取商,因为53里的5在十位,取整除就能得到5。还有去尾法,比如把153的尾巴3去掉,剩下15,得到一个两位数,再对它取整除或取余就能得到5。理解了掐头和去尾的方法,就能分解三位数了。分解个位直接除以10取余,分解百位直接除以100取商,分解十位可以用掐头法或去尾法。得到百位、十位、个位后,就可以判断了。如果百位的三次方加上十位的三次方加上个位的三次方等于本身(这里用两个等号表示等于),条件成立,这个数就是水仙花数,不成立就不是。
讲完水仙花数,来做个有意思的时空穿梭,假设大家高中毕业进入大学。大学校园比中学校园大多了,在校园里没代步工具,比如自行车,上课或办事会不方便。但不是所有路程都适合骑自行车,因为找车、开锁、停车、锁车都要花时间。
假设找车开锁花80秒,停车锁车花60秒,步行每秒1.2米,骑车每秒3米。现在问去不同地方办事,骑车方便还是走路方便?比如从教学楼回宿舍或去食堂,路程不一样,要比较这两种出行方式的时间。