【知识梳理】
【典例分析】
【例题19】
题目:斐波那契数列
1 small = 0 2 big = 1 3 4 for i in range (1,100,1): 5 print(small) 6 temp = small 7 small = big 8 big = small + temp 9
做题心得:print位置可改变数组起点
【例题20】
题目:水仙花(阿姆斯特朗)数
1 num = int(input()) 2 3 a = num // 100 4 b = (num - 100 * a) // 10 5 c = num - 100 * a - 10 * b 6 7 if (a**3 + b**3 + c**3) == num: 8 print("is") 9 else: 10 print("not")
做题心得://取整
【例题21】
题目:十进制转二进制、八进制、十六进制
1 dec = int(input("输入数字:")) 2 3 print("十进制数为:", dec) 4 print("转换为二进制为:", bin(dec)) 5 print("转换为八进制为:", oct(dec)) 6 print("转换为十六进制为:", hex(dec)) 7 8 num = oct(dec) 9 #print(num) 10 print("八转换为十进制为:", int(num,8))
做题心得:int还可以作为转十进制的函数,int(num,啥进制)
【例题22】
题目:ASCII码与字符相互转换
1 char = input() 2 3 print(ord(char)) 4 5 ascii = int(input()) 6 7 print(chr(ascii))
做题心得:ord(char),chr(ascii)
【例题23】
题目:最大公约数算法
1 big = int (input()) 2 small = int (input()) 3 4 def gcd(a,b): 5 while(b>1): 6 if (a%b) == 0: 7 return b 8 else: 9 temp = b 10 b = a%b 11 a = temp 12 else: 13 return 1 14 15 print(gcd(big,small))
做题心得:最大公约数即辗转相除余0的small
【例题24】
题目:最小公倍数算法,略。