欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

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']