目录
81.题目:809*??=800*??+9*?? 其中??代表的两位数, 809*??为四位数,8*??的结果为两位数,9*??的结果为3位数。求??代表的两位数,及809*??后的结果。
82.题目:八进制转换为十进制
81.题目:809*??=800*??+9*?? 其中??代表的两位数, 809*??为四位数,8*??的结果为两位数,9*??的结果为3位数。求??代表的两位数,及809*??后的结果。
分析:假设这个两位数为x, 那它肯定是在range(10,100)中,可用for循环来遍历,综合题目中给定的其他限定条件用if 语句和 and堆叠在一起便可求得这个数
#81
for i in range(10,100):if (809 * i >= 1000) and (8 * i <= 100) and (9 * i >= 100) and (809 * i == 800 * i + 9 * i):print("这个两位数是: {0}, 809乘以这个两位数{0}的结果是: {1}".format(i, 809 * i))
返回:
82.题目:八进制转换为十进制
分析:八进制转换成十进制,用位权相加法,将八进制每位上的数乘以位权,然后将得出来的数再加在一起
#82
n = s = 0
L = []
n = input("请输入一个八进制数: \n")
for i in range(len(n)):L.append(n[i])
L.reverse()
for i in range(len(n)):s += float(int(L[i])*(8**i))
print(s)
返回:
注:在这里,无法进行小数部分的转换