您的位置:首页 > 编程语言 > Python开发

浙大版《Python 程序设计》题目集第二章答案(自用)

2020-03-06 16:02 316 查看
第2章-1 计算 11+12+13+…+m (30分)
number = int(input())result = 0for i in range(11,number+1):result += iprint("sum = {0}".format(result))

这里一开始格式错了 漏了 空格

第2章-2 计算分段函数[1] (10分)
number = float(input())result = 0if number != 0:result = 1/numberelse:result = 0print("f({0:.1f}) = {1:.1f}".format(number,result))

第一行如果用int答案是部分正确 不知道为什么

第2章-3 阶梯电价 (15分)
number = int(input())result = 0price1 = 0.53price2 = 0.05 + price1if number < 0:print("Invalid Value!")else:if number <= 50:result = number * price1else:result = 50 * price1 + (number - 50)*price2print("cost = {0:.2f}".format(result))
第2章-4 特殊a串数列求和 (20分)
list1 = input().split()result = 0number1 = list1[0]number2 = list1[1]for i in range(1,int(number2)+1):result += int(i*number1)print("s = {0}".format(result))
第2章-5 求奇数分之一序列前N项和 (15分)
number = int(input())result = 0.0num = 1for index in range (0,number):result += 1/numnum += 2print("sum = {0:6f}".format(result))
第2章-6 求交错序列前N项和 (15分)
number = int(input())result = 0up = 1down = 1for index in range(1,number+1):if index % 2 != 0:result += index/downelse:result -= index/downdown += 2print("{0:.3f}".format(result))
第2章-7 产生每位数字相同的n位数 (30分)
a,b= input().split(',')a = str(int(a))b = int(b)result = ''for i in range(b):result += aprint(result)
第2章-8 转换函数使用 (30分)
a,b= input().split(',')print(int(a,int(b)))

int(‘45’,8) = 37

第2章-9 比较大小 (10分)
list1 = input().split()list2 = []for i in list1:list2.append(int(i))list2.sort()str1 = ""str1 += str(list2[0]) + "->"str1 += str(list2[1]) + "->"str1 += str(list2[2])print(str1)
第2章-10 输出华氏-摄氏温度转换表 (15分)
string1 = input()list1 = string1.split()lower = int(list1[0])upper= int(list1[1])if lower > upper or lower > 100 or upper > 100:print("Invalid.")else:print("fahr celsius")for i in range(lower,upper+1,2):print("{:d}{:>6.1f}".format(i,5*(i-32)/9))
第2章-11 求平方与倒数序列的部分和 (15分)
a,b = input().split()result = 0for i in range(int(a), int(b)+1):result += i*i + 1/iprint("sum = {0:.6f}".format(result))
第2章-12 输出三角形面积和周长 (15分)
import matha,b,c = input().split()a = int(a)b = int(b)c = int(c)result = 0s = (a + b + c)/2if a + b <= c or a + c <= b or b + c <= a:print("These sides do not correspond to a valid triangle")else:print("area = {0:.2f}; perimeter = {1:.2f}".format(math.sqrt(s*(s-a)*(s-b)*(s-c)),s*2))
第2章-13 分段计算居民水费 (10分)
x = int(input())result = 0if x <= 15:result = 4*x/3else:result = 2.5*(x)-17.5print("{0:.2f}".format(result))
数字格式输出描述
3.1415926{:.2f}3.14保留小数点后两位
3.1415926{:+.2f}+3.14带符号保留小数点后两位
-1{:+.2f}-1.00带符号保留小数点后两位
2.71828{:.0f}3不带小数
5{:0>2d}05数字补零 (填充左边, 宽度为2)
5{:x<4d}5xxx数字补x (填充右边, 宽度为4)
10{:x<4d}10xx数字补x (填充右边, 宽度为4)
1000000{:,}1,000,000以逗号分隔的数字格式
0.25{:.2%}25.00%百分比格式
1000000000{:.2e}1.00e+09指数记法
13{:>10d}13右对齐 (默认, 宽度为10)
13{:<10d}13左对齐 (宽度为10)
13{:^10d}13中间对齐 (宽度为10)
第2章-14 求整数段和 (15分)
m, n = input().split()m = int(m)n = int(n)summ = 0count = 0for i in range(m,n+1):summ += icount += 1print("{:>5d}".format(i),end="")if count % 5 == 0 or i == n:print("")print("Sum = {:d}".format(summ))
  • 点赞
  • 收藏
  • 分享
  • 文章举报
小曾不是Steve发布了6 篇原创文章 · 获赞 0 · 访问量 134私信关注
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: