期中考试将在10月17日星期二举行。考试将涵盖赢博体育内容,包括文件。考试将包括两道题。第一个问题将是循环写入中的一个短问题,而第二个问题将是一个涉及类和从文件读取数据的较长的问题。
期中考试将在课堂上进行。您可以携带一台笔记本电脑和常用的Python开发环境。如果你没有笔记本电脑,你可以用房间里的电脑代替。这些电脑上安装了Anaconda和PyCharm。
1. 编写一个程序,提示用户输入两个正整数a和b,其中a < b,然后打印出a和b之间的赢博体育完全平方数的列表,包括a和b之间的数。
下面是程序应该产生的输出示例。
输入a: 12输入b: 89 16 25 36 49 64 81
2. 编写一个程序,提示用户输入两个正整数a和b,然后计算并输出这两个整数的最小公倍数。最小公倍数是同时是a和b的倍数的最小整数。例如,如果a是120,b是100,你的程序应该输出600。
3. 这是一个关于矩形的问题。每个矩形将由一个类来描述,类的成员变量为width和height。
给你的类一个方法
fitsInside(自我,其他)
如果矩形self可以装入矩形other则返回True,如果不能则返回False。要确定一个矩形是否适合另一个矩形,可能需要旋转其中一个矩形。例如,在将第一个矩形旋转90度后,宽度为20单位,高度为10单位的矩形将适合于宽度为15,高度为25的矩形。使用您编写的类来构建一个程序,该程序可以从文件中读取N个矩形的尺寸,并确定这些矩形是否形成一个嵌套序列,其中每个矩形都适合文件中紧随其后的矩形。您可以假设文件中的第一个数字告诉您N是什么。
例如,给定输入文件
5 10 10 14 20 24 20 24 40 50 30
你的程序应该说文件包含一个嵌套序列。
给定输入文件
4 10 10 20 15 18 18 30 30 30
您的程序应该指出该文件不包含嵌套序列。
4. 构造一个可以表示时间的类。类将有成员变量hours和minutes。为类配备一个成员函数
__add__(自我,其他)
这可以加上两个时间值。使用这个add函数编写一个程序,从文件中读取时间值列表,计算并打印它们的和。例如,给定一个包含内容的文件
3 20 4 15 6 35 2 25
您的程序应该打印总时间值为16小时35分钟。
5. 构建一个Python程序,该程序可以从文件中读取分数列表,并打印文件中找到的最小和最大分数。
例如,给定如下的输入文件:
12/5 94/37 25/3 90/57
您的程序应该打印
最小的分数是90/57。最大的分数是25/3。
首先构造一个可以表示分数的类,并为该类配置两个比较操作符 <和> 的操作符重载。要重载 <操作符,请添加一个名为__lt__的方法。要重载> ,添加一个名为__gt__的方法。 操作符,请添加一个名为__lt__的方法。要重载> 和>
要将输入文件中的每行拆分为分子和分母,请使用以下代码
line.split('/')