博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
python核心编程-第五章-习题
阅读量:6292 次
发布时间:2019-06-22

本文共 5972 字,大约阅读时间需要 19 分钟。

hot3.png

1.长整型表示数的范围比整型更大。在python中,整型、长整型趋于统一,普通用户不用特别关注两者区别,仅当需引用C语言时需要特别注意。

2.操作符

(a)

def multiply(x,y):    return x * y

(b)

>>> multiply(23,24)552

3.

def result(x):    if 90 <= x <= 100:        return "A"    elif 80 <= x <= 89:        return "B"    elif 70 <= x <= 79:        return "C"    elif 60 <= x <= 69:        return "D"    else:        return "F"

4.

# -*- coding:utf-8 -*-def year_judge(year):    if (int(year) % 4 == 0 and int(year) % 100 != 0) or int(year) % 400 == 0:        return u"该年是闰年!"    else:        return u"该年是平年!"

5.

# -*- coding:utf-8 -*-def exchange(x):    divide_25, mod_25 = divmod(x, 25)[0], divmod(x,25)[1]    if mod_25 == 0:        return u"%d 美分换算结果是:%d枚25美分。" % (x,divide_25)    else:        divide_10, mod_10 = divmod(mod_25, 10)[0], divmod(mod_25, 10)[1]        if mod_10 == 0:            return u"%d美分换算结果是:%d枚25美分,%d枚10美分。" % (x, divide_25, divide_10)        else:            divide_5, mod_5 = divmod(mod_10, 5)[0],divmod(mod_10, 5)[1]            if mod_5 == 0:                return u"%d美分换算结果是:%d枚25美分,%d枚10美分,%d枚5美分。" % (x,divide_25, divide_10, divide_5)            else:return u"%d美分换算结果是:%d枚25美分,%d枚10美分,%d枚5美分,%d枚1美分。" % (x, divide_25, divide_10, divide_5,mod_5)                def cents_exchange(x):    if x < 1:        x = x * 100    else:        x = int(x)        print exchange(x)

6.

# -*- coding:utf-8 -*-def calculator():    global expression    expression = raw_input("请输入一个表达式,可以计算加减乘除取余和幂运算,按Q退出。".decode("utf-8").encode("gbk"))        if expression == "Q":        return u"程序退出,再见"            else:        for i in ["+","-","**","/","%","*"]:                if i in expression:                numbers = expression.split(i)                if "." in expression:                    N1 = float(numbers[0])                    N2 = float(numbers[1])                else:                    N1 = int(numbers[0])                    N2 = int(numbers[1])                            if i == "+":                    return N1 + N2                elif i == "-":                    return N1 - N2                elif i == "*":                    return N1 * N2                elif i == "**":                    return N1 ** N2                elif i == "%":                    return N1 % N2                elif i == "/":                    return N1 / N2    while True:    print calculator()    if expression == "Q":        break

7.

# -*- coding:utf-8 -*-sales = float(raw_input("请输入营业额".decode("utf-8").encode("gbk")))rate = float(raw_input("请输入税率,以两位小数表示".decode("utf-8").encode("gbk")))print u"应缴税额为:%f 元人民币。" % (sales * rate)

8.

# -*- coding:utf-8 -*-def geometry():    prompt = raw_input("计算正方形面积请输入1,立方体体积请输入2,圆面积请输入3,球体积请输入4".decode("utf-8").encode("gbk"))    if prompt == "1":        side = raw_input("请输入边长".decode("utf-8").encode("gbk"))        print u"该正方形的面积是:%d" % (int(side) ** 2)    elif prompt == "2":        side = raw_input("请输入边长".decode("utf-8").encode("gbk"))        print u"该正方体的体积是:%d" % (int(side) ** 3)    elif prompt == "3":        radius = raw_input("请输入半径".decode("utf-8").encode("gbk"))        print u"该圆的面积是:%s" % (float(radius) ** 2 * 3.14)    elif prompt == "4":        radius = raw_input("请输入半径".decode("utf-8").encode("gbk"))        print u"该球的体积是:%s" % (float(radius) ** 3 * 4 * 3.14 / 3)geometry()

9.

a.进制问题  python中0开头的数字表示八进制的数字

b.56l + 78l 代表的是长整数的和

10.

# -*- coding:utf-8 -*-from __future__ import divisiondef F_to_C(F):    print u"%.2f°F等于%.2f摄氏度℃"  % (F, (F - 32) * 5 / 9)

11.(1)

#Even numberfor i in range(0, 21):    if not i % 2:        print i,       print#Odd numberfor i in range(0,21):    if i % 2:        print i,

(2)对2进行取余运算,余数0是偶数,否则是奇数

(3)

# -*- coding:utf-8 -*-def judge_divide(x,y):    if x % y == 0:        print u"%d可以被%d整除!" % (x,y)    else:        print u"%d不能被%d整除!" % (x,y)def judge():    number1 = int(raw_input("请输入第一个整数".decode("utf-8").encode("gbk")))    number2 = int(raw_input("请输入第二个整数".decode("utf-8").encode("gbk")))    if number1 < number2:        judge_divide(number2,number1)    else:        judge_divide(number1,number2)judge()

12.

# -*- coding:utf-8 -*-import sysprint sys.maxintprint -sys.maxint - 1print sys.float_info.maxprint sys.float_info.minprint sys.long_info

13.

# -*- coding:utf-8 -*-time = raw_input("请输入时间,英文冒号:前为小时数,英文冒号:后为分钟数".decode("utf-8").encode("gbk"))hour = int(time.split(":")[0])minute = int(time.split(":")[1])print u"%d:%d等于%d分钟。" % (hour, minute,hour * 60 + minute)

14.

# -*- coding:utf-8 -*-def Annual_return_rate(rate):    per_day_rate = rate / 365.0    investment = 1    interest = round(1 * (1 + per_day_rate) ** 365 - 1, 4)    print u"年回报率为: ",interest * 100,"%"

15.

# -*- coding:utf-8 -*-def greatest_common_divisor(x, y):    divisor = min(x, y)    while divisor >= 1:        if not x % divisor and not y % divisor:            print u"%d和%d的最大公约数是%d。" % (x, y, divisor)            break        else:            divisor -= 1def least_common_multiple(x, y):    multiple = max(x, y)    while multiple <= x * y:        if multiple % x == 0 and multiple % y == 0:            print u"%d和%d的最小公倍数是%d。" % (x, y, multiple)            break        else:            multiple += 1

16.

# -*- coding:utf-8 -*-def Payment(balance = 100, monthly_payment = 16.13):            month, remain = divmod(balance, monthly_payment)        print "\t\tAmount Remaining"    print "pymt#\t", "Paid\t", "Balance"    print "-" * 5, "\t", "-" * 5, "\t", "-" * 8        print "0\t$%.2f\t$%.2f" % (0.00, balance)    for i in range(1, int(month+1)):            print i, "\t$%.2f\t$%.2f" % (round(monthly_payment, 2), round(balance - monthly_payment * i, 2))      print "%d\t$%.2f\t$0.00" % (month + 1,remain)

17.

# -*- coding:utf-8 -*-import randomN = random.randint(2,100)i = 1random_list1 = []while i <= N:    random_list1.append(random.randint(0,2 ** 31 - 1))    i += 1h = 1N2 = random.randint(1,100)random_list2 = []while h <= N2:    random_list2.append(random.choice(random_list1))    h += 1print sorted(random_list2)

 

转载于:https://my.oschina.net/u/2297516/blog/532118

你可能感兴趣的文章
docker centos环境部署tomcat
查看>>
JavaScript 基础(九): 条件 语句
查看>>
Linux系统固定IP配置
查看>>
配置Quartz
查看>>
Linux 线程实现机制分析
查看>>
继承自ActionBarActivity的activity的activity theme问题
查看>>
设计模式01:简单工厂模式
查看>>
项目经理笔记一
查看>>
Hibernate一对一外键双向关联
查看>>
mac pro 入手,php环境配置总结
查看>>
MyBatis-Plus | 最简单的查询操作教程(Lambda)
查看>>
rpmfusion 的国内大学 NEU 源配置
查看>>
spring jpa 配置详解
查看>>
IOE,为什么去IOE?
查看>>
Storm中的Worker
查看>>
dangdang.ddframe.job中页面修改表达式后进行检查
查看>>
Web基础架构:负载均衡和LVS
查看>>
Linux下c/c++相对路径动态库的生成与使用
查看>>
SHELL实现跳板机,只允许用户执行少量允许的命令
查看>>
SpringBoot 整合Redis
查看>>