1022 D进制的A+B Python——“优雅,实在太优雅了”
2023-12-22 21:42:25
def convert_to_base(num, base):
if num == 0:
return "0"
digits = []
while num:
digits.append(str(num % base))
num //= base
return ''.join(reversed(digits))
if __name__ == '__main__':
s = input().split(' ')
int_res = int(s[0]) + int(s[1])
print(convert_to_base(int_res,int(s[2])))
-
定义函数
convert_to_base
:- 这个函数负责将一个给定的整数 (
num
) 转换成给定进制 (base
) 的字符串形式。 - 首先检查
num
是否为0,如果是,直接返回字符串"0"
。 - 使用一个循环,不断地将
num
对base
进行求模运算(%
),这会得到当前最低位的数字。然后将num
整除base
(//
),这样num
就减少了一位。 - 每次循环,将求模得到的结果(转换成字符串)添加到列表
digits
中。 - 最后,将
digits
列表反转并连接成一个字符串,这是因为最后添加到列表中的数字实际上是最高位。
- 这个函数负责将一个给定的整数 (
-
主程序流程:
- 首先从标准输入读取一行字符串,然后使用
split
方法分割成一个字符串列表s
。 - 从这个列表中提取前两个元素(
s[0]
和s[1]
),将它们转换为整数并相加,结果存储在int_res
中。 - 提取第三个元素(
s[2]
),这是目标进制,将其也转换为整数。 - 使用
convert_to_base
函数将int_res
转换成目标进制的字符串,然后打印出来。
- 首先从标准输入读取一行字符串,然后使用
文章来源:https://blog.csdn.net/weixin_61958146/article/details/135161122
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。 如若内容造成侵权/违法违规/事实不符,请联系我的编程经验分享网邮箱:veading@qq.com进行投诉反馈,一经查实,立即删除!
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。 如若内容造成侵权/违法违规/事实不符,请联系我的编程经验分享网邮箱:veading@qq.com进行投诉反馈,一经查实,立即删除!