將真分數分解為埃及分數
阿新 • • 發佈:2019-01-23
題目描述
分子為1的分數稱為埃及分數。現輸入一個真分數(分子比分母小的分數,叫做真分數),請將該分數分解為埃及分數。如:8/11 = 1/2+1/5+1/55+1/110。
輸入描述:
輸入一個真分數,String型
輸出描述:
輸出分解後的string
輸入:
8/11
輸出:
1/2+1/5+1/55+1/110
程式碼如下:
while True: try: up,down = list(map(int,input().split("/"))) res = "" while up != 1: if down%(up-1) == 0: res += "1/"+str(down//(up-1))+"+" up = 1 else: res += "1/"+str(down//up+1)+"+" x = up-down%up down = down*(down//up+1) up = x if down%up == 0: down = down//up up = 1 res += "1/"+str(int(down)) print(res) except: break