第11课 计算思维
从二级考试开始,计算思维基本上以编程题的形式考察。为了避免一看就会,一写就废的情况,需要我们加强编程练习,把学到的知识,通过实战练习,变成自己的本领。
同一道题,一般会有多种解决方法,建议大家多试几种方法,通过对比、分析,选择代码量少、操作简单的解决方法。通过这种方式,能很快的将知识内化。
实战练习:剔除数字
题目要求:
1、编写一段程序,程序运行之后,需要用户随意输入一段包含字母和数字的字符串;
2、程序会自动删除字符串中的数字,然后输出一串剔除数字之后的字符串(纯字母的字符串)或者列表(没有数字);
3、要求输出的非数字字符顺序保持不变。
示例代码:
模拟考题
第1题:(编程题)
数字转汉字:用户输入一个1~9(包含1和9)的任意数字,程序输出对应的汉字。例如输入2,程序输出“二”。可以重复查询。
参考程序1:使用列表
list_c = ['一', '二', '三', '四', '五', '六', '七', '八', '九']
while True:i = int(input('请输入1~9之间的数字:'))print(list_c[i-1])
参考程序2:使用元组
tuple_c = ('一', '二', '三', '四', '五', '六', '七', '八', '九')
while True:i = int(input('请输入1~9之间的数字:'))print(tuple_c[i-1])
参考程序3:使用字典
dic_c = {'1': '一', '2': '二', '3': '三', '4': '四', '5': '五','6': '六', '7': '七', '8': '八', '9': '九'}
while True:i = input('请输入1~9之间的数字:')print(dic_c[i])
第2题:(编程题)
求质数:提示用户输入两个正整数(1除外),编程求出这两个数之间的所有质数并打印输出。显示格式为“*数是质数”。
参考程序1:for循环
a = int(input('请输入开始的整数值:'))
b = int(input('请输入结束的整数值:'))if a > b:a, b = b, afor i in range(a, b+1):for j in range(2, i):if i % j == 0:breakif j == i - 1:print('%d 是质数' % i)
参考代码2:while循环
a = int(input('请输入开始的整数值:'))
b = int(input('请输入结束的整数值:'))if a > b:a, b = b, awhile a <= b:i = 2while i < a:if a % i == 0:breaki += 1if i == a:print('{0} 是质数'.format(a))a += 1
第3题:(编程题)
根据乘坐出租车的里程,计算应该支付的费用。
(1)程序开始之后,提示输入一个数字(整数)作为里程(提示为“请输入里程,单位为千米:”)。
(2)计算乘坐出租车应该支付的费用,保留两位小数。计算方式如下:
3千米内(包含13千米)收费13元;
超出3千米,在15千米内(包含15千米),每千米收费2.3元;
超出15千米,每千米收费3.45元。
参考代码:
kms = int(input('请输入里程,单位为千米:'))
fee = 0if kms <= 0:print("里程数应该大于0.")
elif kms <= 3:fee = 13
elif kms <= 15:fee = 13 + (kms - 3) * 2.3
else:fee = 13 + (15 - 3) * 2.3 + (kms - 15) * 3.45print('应支付费用为:%.2f' % fee)