5-1整型。讲讲Python普通整型和长整型的区别。
普通整型:在32位机器上,取值范围是 -2^31 ~ 2^31 - 1 ,也就是 -2 147 483 647 ~ 2 147 483 647;在64位机器上,取值范围将是64位;八进制整形以 0开始,十六进制则以0x 或 0X 开始。
长整形:Python长整形类型能表达的数值仅仅与机器支持的(虚拟)内存大小有关,可以轻松表达很大的整形。这点和C或其它编译型语言的长整形类型有很大的不同。
5-2操作符。
(a)写一个函数,计算并返回两个数的乘积
(b)写一段代码调用这个函数,并显示它的结果。
5-3 标准类型操作符。写一段脚本,输入一个测验成绩,根据下面的标准,输出他的评分成绩(A~F)。
A:90 ~ 100
B:80 ~ 89
C:70 ~ 79
D:60 ~ 69
F:<60
5-4 取余。判断给定的年份是否是闰年。使用下面的公式。
一个闰年就是指它可以被4整除,但不能被100整除,或者它既可以被4整除又可以被100整除。比如1992年、1996年和2000年是闰年,但1967年和1900年则不是闰年。下一个是闰年的整世纪是2400年。
5-5取余。取一个任意小于1美分的金额,然后计算可以换成最少多少枚硬币。硬币有1美分、5美分、10美分、25美分4种。1美元等于100美分。举例来说,0.76美元换算结果应该是3枚25美分,1枚1美分类似2枚25美分+2枚10美分+1枚5美分+1枚1美分这样的结果都是不符合要求的。
5-6 算术。写一个计算机程序。你的代码可以接受这样的表达式,两个操作数加一个·操作符:N1操作符N2。其中N1和N2为整型或浮点型,操作符可以是+、-、*、/、%、**。计算这个表达式的结果,然后显示出来。提示:可以使用字符串方法split(),但不可以使用内建函数eval().
5-7 营业税。随意取一个商品金额,然后根据当地营业税额度计算应该交纳的营业税。
5-8 几何。计算面积和体积。
(a)正方形和立方体
(b)圆和球
5-9数值形式回答下面关于数值格式的问题:
(a)为什么下面的例子里17+32等于49,而017+32等于47,017+032等于41?
017是八进制数,换算成十进制数为15
032同理
(b)为什么下面这个表达式我们得到的结果是134L而不是1342?
两个长整型数相加,l与数字1相似,提倡长整型用大写L
5-10 转换。写一对函数来进行华氏度到摄氏度的转换。转换公式为C=(F-32)*(5/9)应该在这个练习中使用真正的除法,否则你会得到不正确的结果。
5-11 取余。
(a) 使用循环和算术运算,求出0~20之间所有的偶数
(b)同上,不过这次输出所有的奇数
(c)综合(a)和(b),请问辨别奇数和偶数的最简单的方法是什么?
(d)使用(c)的成果,写一个函数,检测一个整型能否被另一个整型整除。先要求用户输入两个数,然后你的函数判断两者是否有整除关系,根据判断结果分别返回True和False。
(a)
(b)
(c)
看有没有余数
(d)
5-12 系统限制。写一段脚本确认一下你的Python所能处理得整型、长整型、浮点型和复数的范围。
5-13 转换。写一个函数把由小时和分钟表示的时间转换为只用分钟表示的时间。
5-14 银行利息。写一个函数,以定期存款利率为参数,假定该账户每日计算复利·,请计算并返回年回报率。
5-15 最大公约数和最小公倍数。请计算两个整型的最大公约数和最小公倍数。
5-16 家庭财务。给定一个初始金额和月开销数,使用循环,确定剩下的金额和当月支出,包括最后的支出数。Payment()函数会用到初始金额和月额度,输出结果应该类似下面的格式(例子中的数字仅用于演示)
Enter opening balance:100.00
Enter monthly payment: 16.13
Amount Remaining
Pymt # Paid Balance
----- ------ ---------
0 $ 0.00 $100.00
1 $16.13 $ 83.87
2 $16.13 $ 67.74
3 $16.13 $ 51.61
4 $16.13 $ 35.48
5 $16.13 $ 19.35
6 $16.13 $ 3.22
7 $ 3.22 $ 0.00
5-17 随机数。熟读随机数模块然后解下面的题。
生成一个又N个元素的由随机数n组成的列表,其中N和n的取值范围为(1<N<=100)和(0<=n<=2^31 - 1).然再随机从这个列表中取N(1<=N<=100)个随机数出来,对它们排序,然后显示这个子集。