大整数乘法的实现
重点在于,分开来一位一位的计算,第i位和第j位相乘,就放在i+j-1和i+j位上。
def multy(n1,n2): n1=str(n1) n2=str(n2) n3=[] for i in range(len(n1+n2)): n3.append(0) for i2 in range(len(n1)): for i3 in range(len(n2)): n3[len(n1+n2)-i2-i3-1]+=int(n1[len(n1)-i2-1])*int(n2[len(n2)-i3-1]) print(n3) for i in range(len(n1+n2)): if n3[len(n3)-1-i]>=10 : n3[len(n3)-i-2] += n3[len(n3) - 1 - i] // 10 n3[len(n3)-1-i]=n3[len(n3)-1-i]%10 return n3 print(multy(15,25))