4

問題を切り分けることができません。このプログラムは、2 つの整数を取り、それらを科学表記法に変換してから乗算することになっています。ただし、科学的概念を 2 回出力します。ただし、情報は 2 回出力されます。

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()
4

1 に答える 1

3

次の行で convert を呼び出しています。

u=str(int(convert(s))*int(convert(t)))

そして、数値に対して convert を再度呼び出しています。

convert(s)
convert(t)

そして、変換機能は印刷です。したがって、デュアルプリントがあります。

于 2012-10-21T02:37:40.713 に答える