我无法隔离问题。该程序应该采用两个整数并将它们转换为科学计数法,然后将它们相乘。然而,它打印科学概念两次。但是它会打印两次信息。
def convert(s):
print("You typed " + s)
n=0
for c in s:
n=n+1
if n==1:
print("In scientific notation:"+str(c)+'.', end='')
if n!=1:
print(str(c),end='')
print('X 10^'+str(len(s)-1))
return c
def convert_product(u):
n=0
for c in u:
n=n+1
if n==1:
print("Product in scientific notation "+c+'.', end='')
if n!=1:
print(c, end='')
def main():
s=input("Please input your first number\n")
t=input("Please input your second number\n")
u=str(int(convert(s))*int(convert(t)))
convert(s)
convert(t)
convert_product(u)
print('X 10^' + str(len(s)+len(t)-2))
main()
答案 0 :(得分:3)
您正在此行中调用convert:
u=str(int(convert(s))*int(convert(t)))
你在数字上再次呼叫转换:
convert(s)
convert(t)
转换功能正在打印。因此,您有双重打印。