技术 | Python从零开始系列连载(二十四)
D进制的A+B 输入两个非负10进制整数A和B(<=2^30-1),输出A+B的D (1 < D <= 10)进制数。 输入格式: 输入在一行中依次给出3个整数A、B和D。 输出格式: 输出A+B的D进制数。 输入样例: 123 456 8 输出样例: 1103 解题思路:先计算A+B(此时为十进制),然后把结果转换为D进制,而十进制转换为D进制的过程可以使用“除基取余法”。 这里的"基",指的是要转换为的进制D,除基取余指的是每次将要转换的数除以D,将余数存储起来,得到的商继续除D,重复操作,直到最后商为零。 将所有的余数从后往前输出就可以得到新的进制数z。 举个栗子: 11除以2,商为5,余数为1 5除以2,商为2,余数为1 2除以2,商为1,余数为0 1除以2,商为0,余数为1 将余数从后往前输出,得到1011就是11的二进制数。 上代码: 注意点: 1.range()的步长、范围和反向输出 2.int的整除 3.列表的索引使用 4.input一次获取多个值与获取数据格式 5.print的默认格式改变 6.考虑特殊输入情况 原文发布时间为:2018-08-24 ...