ICode9

精准搜索请尝试: 精确搜索
首页 > 编程语言> 文章详细

pta python 第三周

2021-03-28 22:30:07  阅读:1518  来源: 互联网

标签:输出 10 python 样例 第三周 pta print 格式 输入


pta


7-1 逆序输出

输入一行字符串,然后对其进行如下处理。

输入格式:
字符串中的元素以空格或者多个空格分隔。

输出格式:
逆序输出字符串中的所有元素。
然后输出原列表。
然后逆序输出原列表每个元素,中间以1个空格分隔。注意:最后一个元素后面不能有空格。

输入样例:
a b  c e   f  gh
输出样例:
ghfecba
['a', 'b', 'c', 'e', 'f', 'gh']
gh f e c b a

strr = list(input().split())
#print(strr[::-1])
print(''.join(strr[::-1]))
print(strr)
print(*strr[::-1])

7-2 计算各对应位乘积之和

读入两个整数a和b,输出绝对值a和绝对值b的各对应位乘积之和,如a=1234,b=608,则输出值为:“1×0+2×6+3×0+4×8“的值,即44。

输入格式:
在一行中输入两个数

输出格式:
在一行中输出对应位乘积之和

输入样例:
在这里给出一组输入。例如:

1234 608
输出样例:
在这里给出相应的输出。例如:

44
a,b = input().split()
a,b = int(a),int(b)
a = abs(a)
b = abs(b)
sum = 0
while True:
    if a == 0 & b == 0:
        break
    sum += (a % 10) * (b % 10)
    a //= 10
    b //= 10
print(sum)

7-3 大于身高的平均值

中小学生每个学期都要体检,要量身高,因为身高可以反映孩子的生长状况。现在,一个班的身高已经量好了,请输出其中超过平均身高的那些身高。程序的输入为一行数据,其中以空格分隔,每个数据都是一个正整数。程序要输出那些超过输入的正整数的平均数的输入值,每个数后面有一个空格,输出的顺序和输入的相同。

输入格式:
在一行输入中一个班的身高值,以空格分隔。

输出格式:
在一行输出超过输入的平均数的输入值,以空格分隔。

输入样例:
在这里给出一组输入。例如:

143 174 119 127 117 164 110 128
输出样例:
在这里给出相应的输出。例如:

143 174 164 
a = input().split()

avg = 0
for i in a:
    avg += int(i)
avg = 1.0 * avg / len(a)
for i in a:
    if avg < int(i):
        print(int(i),end=' ')

7-4 身份证校验

中国居民身份证校验码算法如下:

将身份证号码前面的17位数分别乘以不同的系数。从第一位到第十七位的系数分别为:7-9-10-5-8-4-2-1-6-3-7-9-10-5-8-4-2。 将这17位数字和系数相乘的结果相加。用加出来和除以11,取余数。 余数只可能有0-1-2-3-4-5-6-7-8-9-10这11个数字, 其分别对应的最后一位身份证的号码为1-0-X-9-8-7-6-5-4-3-2。余数和校验码的对应关系可以用公式:m=(12-n) mod 11计算,其中mod为求余运算,m为校验码,n为之前计算出来的余数。如果之前计算出的余数是3,第18位的校验码就是9。如果余数是2那么对应的校验码就是X,X实际是罗马数字10。 例如:某男性的身份证号码为【53010219200508011x】, 我们看看这个身份证是不是合法的身份证。首先我们得出前17位的乘积和【(57)+(39)+(010)+(15)+(08)+(24)+(12)+(91)+(26)+(03)+(07)+(59)+(010)+(85)+(08)+(14)+(1*2)】是189,然后用189除以11得出的结果是189/11=17----2,也就是说其余数是2。最后通过对应规则就可以知道余数2对应的检验码是X。所以,可以判定这是一个正确的身份证号码。

请编写一个程序,输入身份证前17位后,计算并输出最后的校验码,

输入格式:
前17位的每个数字分别输入,中间用空格间隔

输出格式:
输出校验码,如果校验码是10,不必转成X

输入样例:
5 3 0 1 0 2 1 9 2 0 0 5 0 8 0 1 1
输出样例:
10
ind = [7,9,10,5,8,4,2,1,6,3,7,9,10,5,8,4,2]
ans = [1,0,10,9,8,7,6,5,4,3,2]
n = input().split()
check = 0
for i in range(17):
    check += int(ind[i]) * int(n[i])
    check %= 11
print(ans[check])

7-5 列表去重

输入一个列表,去掉列表中重复的数字,按原来次序输出!

输入格式:
在一行中输入列表

输出格式:
在一行中输出不重复列表元素

输入样例:
在这里给出一组输入。例如:

[4,7,5,6,8,6,9,5] 
输出样例:
在这里给出相应的输出。例如:

4 7 5 6 8 9
lst = eval(input())
# print(type(lst))
new_list = list(set(lst))
# print(new_list)
new_list.sort(key=lst.index)

print(*new_list)

7-6 裁判打分

体操比赛中,评委会给参赛选手打分。选手得分规则为去掉一个最高分和一个最低分,然后计算平均得分,请编程输出某选手的得分。

输入格式:
第1行包含一个整数n (2<n<100),表示评委的人数, 第2行包含n个整数,表示n个评委的打分。每个整数之间用空格分隔。

输出格式:
输出选手的得分,结果保留2位小数。

输入样例:
4 
100 99 98 97
输出样例:
98.50
n = eval(input())
lst = input().split()
lst = [int(x) for x in lst]

# print(lst)
avg = 0
for i in lst:
    avg += i
avg -= max(lst) + min(lst)
avg /= 1.0 * (n - 2)
print('%.2f' % avg)

7-7 人民币与美元汇率兑换程序

按照温度转换的设计思路,设计人民币与美元汇率兑换程序,按照1美元=7人民币的汇率 编写一个双向兑换程序。

输入格式:
输入美元或者人民币的金额,币种在前,金额在后,如:$20、¥100。每次输入一个金额。

输出格式:
输出经过汇率计算的美元或人民币的金额,格式与输入一样,结果保留两位小数。

输入样例1:
$20
输出样例1:
¥140.00
输入样例2:
¥100
输出样例2:
$14.29
输入样例3:
#120
输出样例3:
输入格式错误
n = input()
money = int(n[1:])

if n[0] == '$':
    print('¥{:.2f}'.format(money * 7))
elif n[0] == '¥':
    print('${:.2f}'.format(money / 7))
else:
    print("输入格式错误")

标签:输出,10,python,样例,第三周,pta,print,格式,输入
来源: https://blog.csdn.net/xcfkaixin/article/details/115286486

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有