浙大版《Python 程序设计》题目集第3章-9——第3章-13

第3章-9 字符串转换成十进制整数

输入一个以#结束的字符串,本题要求滤去所有的非十六进制字符(不分大小写),组成一个新的表示十六进制数字的字符串,然后将其转换为十进制数后输出。如果在第一个十六进制字符之前存在字符“-”,则代表该数是负数。

输入格式:
输入在一行中给出一个以#结束的非空字符串。

输出格式:
在一行中输出转换后的十进制数。题目保证输出在长整型范围内。

输入样例:

+-P-xf4+-1!#

输出样例:

-3905

答案样例:

s = input()
judge_s = '0123456789abcdefABCDEF'
new_s = ''
for i in s:
    if i in judge_s:
        new_s += i
if new_s == '':
    print('0')
elif s.find(new_s[0]) > s.find('-'):
    print(-int(new_s,16))
else:
    print(int(new_s,16))

第3章-10 统计大写辅音字母

英文辅音字母是除A、E、I、O、U以外的字母。本题要求编写程序,统计给定字符串中大写辅音字母的个数。

输入格式:
输入在一行中给出一个不超过80个字符、并以回车结束的字符串。

输出格式:
输出在一行中给出字符串中大写辅音字母的个数。

输入样例:

HELLO World!

输出样例:

4

答案样例:

s = input()
count = 0
l = 'AEIOU'
for i in s:
    if i.isupper() and i not in l:
        count += 1
print(count)

第3章-11 字符串排序

本题要求编写程序,读入5个字符串,按由小到大的顺序输出。

输入格式:
输入为由空格分隔的5个非空字符串,每个字符串不包括空格、制表符、换行符等空白字符,长度小于80。

输出格式:
按照以下格式输出排序后的结果:

After sorted:
每行一个字符串

输入样例:

red yellow blue green white

输出样例:

After sorted:
blue
green
red
white
yellow

答案样例:

s = sorted(input().split())
print('After sorted:')
for i in s:
    print(i)

第3章-12 求整数的位数及各位数字之和

对于给定的正整数N,求它的位数及其各位数字之和。

输入格式:
输入在一行中给出一个不超过10
​9
​​ 的正整数N。

输出格式:
在一行中输出N的位数及其各位数字之和,中间用一个空格隔开。

输入样例:

321

输出样例:

3 6

答案样例:

s = input()
sum = 0
for i in s:
    sum += int(i)
print(len(s),sum)

第3章-13 字符串替换

本题要求编写程序,将给定字符串中的大写英文字母按以下对应规则替换:

原字母 对应字母
A Z
B Y
C X
D W
X C
Y B
Z A

输入格式:
输入在一行中给出一个不超过80个字符、并以回车结束的字符串。

输出格式:
输出在一行中给出替换完成后的字符串。

输入样例:

Only the 11 CAPItaL LeTtERS are replaced.

输出样例:

Lnly the 11 XZKRtaO OeGtVIH are replaced.

答案样例:

s = input()
new_s = ''
for i in s:
    if i.isupper():
        new_s += chr(155-ord(i))
    else:
        new_s += i
print(new_s)

# 第3章-14 字符串字母大小写转换 本题要求编写程序,对一个以“#”结束的字符串,将其小写字母全部转换成大写字母,把大写字母全部转换成小写字母,其他字符不变输出。

输入格式:
输入为一个以“#”结束的字符串(不超过30个字符)。

输出格式:
在一行中输出大小写转换后的结果字符串。

输入样例:

Hello World! 123#

输出样例:

hELLO wORLD! 123

答案样例:

print(input()[:-1].swapcase())

猜你喜欢

转载自blog.csdn.net/hmh4640219/article/details/113435310