數字翻轉

    題目:對於一個整數X,定義操作rev(X)爲將X按數位翻轉過來,並且去除掉前導0。例如:
    如果 X = 123,則rev(X) = 321;
    如果 X = 100,則rev(X) = 1.

    現在給出整數x和y,要求rev(rev(x) + rev(y))爲多少?

    輸入一行兩個長度相同的數字字符串,中間用空格隔開;經過翻轉過後相加,最後再對和進行翻轉,輸出輸入字符串的相加結果(不涉及數字進位,如果反轉後的數字相加需要進位那麼相加後的結果會不同)。

def Flip(strin):
    """
    簡單的對輸入數字進行翻轉
    如果 X = 123,則rev(X) = 321;
    如果 X = 100,則rev(X) = 1.
    :param strin:輸入待翻轉的字符串
    :return:輸出翻轉後的字符串
    """
    strin=strin
    List,countsum=[],0
    rev=0
    for i in range(len(strin)):
        List.append(int(strin[i]))
        countsum+=List[i]
    if countsum==List[0]:
        # print(List[0])
        rev=List[0]
    else:
        # print(strin[::-1])
        rev=strin[::-1]
    return rev
#輸入
strin = input("Please Input Number:")
List,countsum=[],0
str1,str2=0,0
#輸入字符串的切分
splitstr=strin.split(" ")
List1,List2=splitstr[0],splitstr[1]
#對輸入字符串進行翻轉
rev1=Flip(List1)
rev2=Flip(List2)
#相加求和
rev=int(rev1)+int(rev2)
print("Flip:",rev1,rev2)
print("FlipSum",rev)
#翻轉輸出輸入數字相加和的結果
result=Flip(str(rev))
print("Flip Result:",result)
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章