请编写一个长整数相加的函数
时间: 2024-03-14 21:45:12 浏览: 25
好的,以下是一个实现长整数相加的 Python 函数:
```python
def add_long_ints(num1, num2):
# 将两个长整数转换为字符串,方便逐位相加
num1_str = str(num1)
num2_str = str(num2)
# 将两个字符串补齐到相同的长度,不足的部分用 0 填充
max_len = max(len(num1_str), len(num2_str))
num1_str = num1_str.zfill(max_len)
num2_str = num2_str.zfill(max_len)
# 初始化进位值和结果字符串
carry = 0
result = ""
# 逐位相加,注意进位
for i in range(max_len - 1, -1, -1):
digit_sum = int(num1_str[i]) + int(num2_str[i]) + carry
digit = digit_sum % 10
carry = digit_sum // 10
result = str(digit) + result
# 最高位如果有进位,需要加上
if carry > 0:
result = str(carry) + result
# 返回相加后的结果
return int(result)
```
这个函数接受两个长整数 `num1` 和 `num2`,返回它们相加后的结果。函数首先将两个长整数转换为字符串,然后将它们补齐到相同的长度(在这里使用了 `zfill` 函数)。接下来,函数从最低位开始逐位相加,注意进位。最后,如果最高位有进位,需要将它加上。最终,函数返回相加后的结果。