2022年9月1日 星期四

Python a740: 质因数之和

 a740: 质因数之和


print ('a740: 质因数之和')


def reduceNum(n):

    ssum=0

    print ('{} = '.format(n), end=" ")

    if not isinstance(n, int) or n <= 0 :

        print ('请输入一个正确的数字 !')

        exit(0)

    elif n in [1] :

        print ('{}'.format(n))

    while n not in [1] : # 循环保证递归

        for index in range(2, n + 1) :

            if n % index == 0:

                n //= index # n 等于 n//index

                if n == 1: 

                    print (index )

                    ssum=ssum+index

                else : # index 一定是素数

                    print ('{} *'.format(index), end=" ")

                    ssum=ssum+index

                break                


        

    return (ssum)



b=int (input('輸入 正整數 n  (EOF 為止)  -->'))

a=reduceNum(b)

print('质因数',b,'之和=',a)


>>> %Run a740.py

a740: 质因数之和

輸入 正整數 n  (EOF 為止)  -->24

24 =  2 * 2 * 2 * 3

质因数 24 之和= 9

>>> 

沒有留言:

張貼留言

113 學年度第 1 學期 RFID應用課程 Arduino程式

113 學年度第 1 學期 RFID應用課程 Arduino程式 https://www.mediafire.com/file/zr0h0p3iosq12jw/MFRC522+(2).7z/file 內含修改過後的 MFRC522 程式庫 (原程式有錯誤) //定義MFRC522...