Python练习05——上机4,进制转换
程序员文章站
2022-04-06 15:16:19
...
1.念数字,输入一个数,输出每个数对应的拼音
# 数字拼音
num = ['0','1','2','3','4','5','6','7','8','9','-']
pin = ['ling','yi','er','san','si','wu','liu','qi','ba','jiu','fu']
num1 = input('请输入一个数字:')
pin1 = ''
for i in num1:
for x in range(11):
if num[x] == i :
pin1 += pin[x] +' '
print(pin1)
2.特殊数列求和,输入一个小于10正整数的数,求1+12+…的前n项和
# 特殊数列求和
num1 = eval(input('请输入一个数字(小于10)'))
sum = 0
num = ''
if type(num1)==type(2):
if num1 >= 10:
print('date error')
elif 0<num1<10:
for i in range(1,num1+1):
num += str(i)
sum += int(num)
print(sum)
3.打印九九乘法表
# 打印九九乘法表
for i in range(1,10):
for j in range(1,11-i):
print('{}*{}={}'.format(i,j,i*j),end='\t')
print()
4.将十进制的数转为十六进制的数,不使用进制转换函数。
# 十进制转为十六进制
# 方法一
s = '0123456789ABCDEF'
num10 = eval(input('请输入一个十进制的数'))
a = num10//16
b = num10%16
list1 = [b]
num16 = ''
while a>=16:
b = a%16
list1.append(b)
a = a//16
else:
list1.append(a)
list2 = list(reversed(list1))
for i in list2:
num16 += s[i]
print(num16)
# 方法二
# 使用列表存储数据
# 与方法一类似,不做赘述
s = ['0','1','2','3','4','5','6','7','8','9','A','B','C','D','E','F']
上一篇: 练习2-4 温度转换