python题目集,源于学校老师布置在pta上的题目,博主用来复习的
7-1 进制转换
输入一个十进制的整数。将它转换为二进制数、八进制数和十六进制数。
输入格式:
输入一个不超过100的十进制整数。
输出格式:
在一行内输出对应的二进制数、八进制数和十六进制数,以空格隔开。
输入样例:
在这里给出一组输入。例如:
8
输出样例:
在这里给出相应的输出。例如:
1000 10 8
思路:
使用python进制转换的内置函数, 二进制数bin()、八进制数oct()和十六进制数hex(), 但要注意输出样例的格式, 又因为进制数是str类型, 可以采取切片得到答案
代码:
a = int(input())
a1, a2, a3 = bin(a), oct(a), hex(a)
print("{} {} {}".format(a1[2:], a2[2:], a3[2:]))
7-2 成绩转换
百分制成绩转换为五级计分制时,90分以上为A,80~89分为B,70~79分为C,60~69分为D,0~59分为E。请把输入的百分之成绩转换为五级计分制输出。
输入格式:
测试数据有多组,处理到文件尾。每组测试输入一个整数score。
输出格式:
对于每组测试,在一行上输出百分制成绩score对应的字符等级。若score超出百分制范围,则输出“error!”。引号不必输出。
输入样例:
1
61
102
输出样例:
E
D
error!
思路:
基本的if-else判断语句加输出,注意点是如何处理到文件尾结束,我采用了异常处理模块try、except
代码:
while True:
try:
s = eval(input())
if 90 <= s <= 100:
print("A")
elif 80 <= s < 90:
print("B")
elif 70 <= s < 80:
print("C")
elif 60 <= s < 70:
print("D")
elif 0 <= s < 60:
print("E")
else:
print("error!")
except:
break