【PTA python程序设计题库】第2章(多种写法)

7-1 计算 11+12+13+…+m

【PTA python程序设计题库】第2章(多种写法)_第1张图片

print("sum = {}".format(sum([i for i in range(11, int(input())+1)])))
i=int(input())
print("sum =",sum([ number for number in range(11,i+1)]))
m=int(input())
i=0
for number in range(11,m+1):
    i=number+i
print('sum =',i)

7-2 计算分段函数
【PTA python程序设计题库】第2章(多种写法)_第2张图片

a = float(input())
print("g({:.3f}) = {:.3f}".format(a, 0 if a == 0 else 1/(2*a)))
a=float(input())
if(a==0):
    print("g(0.000) = 0.000")
else:
    print("g({:.3f}) = {:.3f}".format(a,1/(2*a)))

7-3 阶梯电价
为了提倡居民节约用电,某省电力公司执行“阶梯电价”,安装一户一表的居民用户电价分为两个“阶梯”:月用电量50千瓦时(含50千瓦时)以内的,电价为0.53元/千瓦时;超过50千瓦时的,超出部分的用电量,电价上调X元/千瓦时。请编写程序计算电费。

【PTA python程序设计题库】第2章(多种写法)_第3张图片

a,x = map(float,input().split())
print("cost = {:.2f}".format(a*0.53 if a<=50 else 26.5+(a-50)*(0.53+x)))
a,x = map(float,input().split())
if a<=50:
    print("cost = {:.2f}".format(a*0.53))
else:
    print("cost = {:.2f}".format(26.5+(a-50)*(0.53+x)))

7-4 求奇数分之一序列前N项近似和
本题要求编写程序,计算序列 1 + 1/3 + 1/5 + … 的前N项近似和(提示:用ceil函数)。

【PTA python程序设计题库】第2章(多种写法)_第4张图片

import math
a=int(input())
sum,x=0,-1
for i in range(1,a+1):
    x=x+2
    sum=sum+1/x
print("sum ≈ {}".format(math.ceil(sum)))

7-5 求交错序列前N项和

【PTA python程序设计题库】第2章(多种写法)_第5张图片

a=int(input())
sum =0
x,y=1,1
flag=1
for i in range(1,a+1):
    sum=sum+x/y*flag
    x= x+1
    y= y+2
    flag=-flag
print("{:.3f}".format(sum))

7-6 产生每位数字相同的n位数
【PTA python程序设计题库】第2章(多种写法)_第6张图片

#看成字符串
a,b=input().split(',')
print(int(str(int(a))*int(b)))
#看成整数
a,b=input().split(',')
a,b=int(a),int(b)
x=0
for i in range(b):
    x+=a*10**(b-1)
    b-=1
print(x)

7-7 转换函数使用
【PTA python程序设计题库】第2章(多种写法)_第7张图片
NzZG4ubmV0L3dzbHNwcw==,size_16,color_FFFFFF,t_70#pic_center)

a,b=input().split(',')
b=int(b)
print(int(a,b))

7-8 比较大小
【PTA python程序设计题库】第2章(多种写法)_第8张图片

a,b,c=map(int,input().split())
d=[chr(a),chr(b),chr(c)]
print(*sorted(d),sep="<")
a,b,c=input().split()
a,b,c=int(a),int(b),int(c)
if a<b<c:
    print("{}<{}<{}".format(chr(a),chr(b),chr(c)))
elif a<c<b:
    print("{}<{}<{}".format(chr(a),chr(c),chr(b)))
elif b<a<c:
    print("{}<{}<{}".format(chr(b),chr(a),chr(c)))
elif b<c<a:
    print("{}<{}<{}".format(chr(b),chr(c),chr(a)))
elif c<a<b:
    print("{}<{}<{}".format(chr(c), chr(a), chr(b)))
else:
    print("{}<{}<{}".format(chr(c), chr(b), chr(a)))

7-9 输出摄氏-华氏温度转换表
输入2个正整数lower和upper(-20<=lower<=upper<=50),表示摄氏范围。请输出一张取值范围为[lower,upper]、 且每次增加2摄氏度的摄氏-华氏温度转换表。温度转换的计算公式: F=C×1.8+32 其中:C表示摄氏温度,F表示华氏温度。
【PTA python程序设计题库】第2章(多种写法)_第9张图片

a,b=map(int,input().split())
if(a<=-20 or a>b or b>=50):
    print("Invalid.")
else:
    print("celsius    fahr")
    i = a
    while i <= b:
        print("{:}          {:.1f}".format(i,i*1.8+32))
        i += 2

7-10 偶数位特殊序列和
给定不超过9的正整数a,给定正整数n,n是偶数,4<=n<=18,要求编写程序求aa+aaaa+aaaaaa+⋯+aa⋯a(n个a)之和。

【PTA python程序设计题库】第2章(多种写法)_第10张图片

字符串运算后转为整数

a,b=input().split()
sum=0
for i in range(2,int(b)+2,2):
    sum=sum+int(str(int(a))*int(i))
print(sum)

7-11 求平方与倒数序列的近似和
【PTA python程序设计题库】第2章(多种写法)_第11张图片
运用列表推导式

import math
m, n = map(int,input().split())
print("sum ≈ %.f"% math.floor(sum([m*m+1/m for m in range(m,n+1)])))
import math
a,b=input().split()
a,b=int(a),int(b)
sum=0
for i in range(a,b+1):
    sum=sum+i*i+1/i
print("sum ≈ {}".format(math.floor(sum)))

7-12 计算函数f(x)
【PTA python程序设计题库】第2章(多种写法)_第12张图片

import math
a=float(input())
b=math.sin(35*math.pi/180)+(math.pow(math.e,a)-15*a)/math.sqrt(math.pow(a,4)+1)-math.log(7*a, math.e)
print("f({})={:.3f}".format(a,b))

7-13 分段计算居民水费
为鼓励居民节约用水,自来水公司采取按用水量阶梯式计价的办法,居民应交水费y(元)与月用水量x(吨)相关:当x不超过15吨时,y=4x/3;超过后,y=2.5x−17.5。请编写程序实现水费的计算。
【PTA python程序设计题库】第2章(多种写法)_第13张图片

a=int(input())
print("{:.2f}".format(4*a/3 if a<=15 else 2.5*a-17.5))
a=int(input())
if(a<=15):
    print("{:.2f}".format(4*a/3))
else:
    print("{:.2f}".format(2.5*a-17.5))

7-14 输出指定图形
输入正整数(1<=n<=7),输出指定图形。(提示:用*运算符)

【PTA python程序设计题库】第2章(多种写法)_第14张图片

n=int(input())
for i in range(n):
    print("* "*(i+1))

你可能感兴趣的:(浙江大学MOOC,Python程序设计)