Python實(shí)現(xiàn)簡(jiǎn)單求解給定整數(shù)的質(zhì)因數(shù)算法示例
本文實(shí)例講述了Python實(shí)現(xiàn)簡(jiǎn)單求解給定整數(shù)的質(zhì)因數(shù)算法。分享給大家供大家參考,具體如下:
接著做題遇到求解質(zhì)因數(shù)分解的問(wèn)題,思想很簡(jiǎn)單,就是需要遍歷從1到該整數(shù)本身,并且判斷當(dāng)數(shù)字為質(zhì)數(shù)時(shí)加入列表最后輸出即可,求解這樣的一個(gè)正整數(shù)的質(zhì)因數(shù)分解,關(guān)鍵在于理解,每次得到一個(gè)質(zhì)因數(shù)之后需要更新整數(shù)為:原始整數(shù)除以這個(gè)質(zhì)因數(shù)的值,循環(huán)直至原始整數(shù)的值小于2終止,輸出結(jié)果即可,實(shí)現(xiàn)如下:
#!usr/bin/env python #encoding:utf-8 ''''' __Author__:沂水寒城 功能:求解整數(shù)的質(zhì)因數(shù)分解 ''' num=int(raw_input()) def get_num_factors(num): list0=[] tmp=2 if num==tmp: print num else: while (num>=tmp): k=num%tmp if( k == 0): list0.append(str(tmp)) num=num/tmp #更新 else: tmp=tmp+1 #同時(shí)更新除數(shù)值,不必每次都從頭開(kāi)始 print ' '.join(list0)+' '
結(jié)果如下:
90
2 3 3 5
180
2 2 3 3 5
PS:這里提供一款功能相似的在線工具供大家參考:
在線分解質(zhì)因數(shù)計(jì)算器工具: http://tools.jb51.net/jisuanqi/factor_calc
更多關(guān)于Python相關(guān)內(nèi)容感興趣的讀者可查看本站專題:《Python數(shù)據(jù)結(jié)構(gòu)與算法教程》、《Python函數(shù)使用技巧總結(jié)》、《Python字符串操作技巧匯總》、《Python入門(mén)與進(jìn)階經(jīng)典教程》及《Python文件與目錄操作技巧匯總》
希望本文所述對(duì)大家Python程序設(shè)計(jì)有所幫助。
- Python實(shí)現(xiàn)的質(zhì)因式分解算法示例
- Python實(shí)現(xiàn)正整數(shù)分解質(zhì)因數(shù)操作示例
- Python實(shí)現(xiàn)將一個(gè)正整數(shù)分解質(zhì)因數(shù)的方法分析
- 使用Python判斷質(zhì)數(shù)(素?cái)?shù))的簡(jiǎn)單方法講解
- python實(shí)現(xiàn)挑選出來(lái)100以內(nèi)的質(zhì)數(shù)
- python求質(zhì)數(shù)的3種方法
- Python 判斷是否為質(zhì)數(shù)或素?cái)?shù)的實(shí)例
- Python編程求質(zhì)數(shù)實(shí)例代碼
- python輸出100以內(nèi)的質(zhì)數(shù)與合數(shù)實(shí)例代碼
- Python實(shí)現(xiàn)的對(duì)一個(gè)數(shù)進(jìn)行因式分解操作示例
相關(guān)文章
Python?Jinja2?庫(kù)靈活性廣泛性應(yīng)用場(chǎng)景實(shí)例解析
Jinja2,作為Python中最流行的模板引擎之一,為開(kāi)發(fā)者提供了強(qiáng)大的工具,用于在Web應(yīng)用和其他項(xiàng)目中生成動(dòng)態(tài)內(nèi)容,本文將深入研究?Jinja2?庫(kù)的各個(gè)方面,提供更豐富的示例代碼,能夠充分理解其靈活性和廣泛應(yīng)用的場(chǎng)景2024-01-01Python?multiprocessing?共享對(duì)象的示例代碼
在 Python 中使用 multiprocessing,一個(gè)新的進(jìn)程可以獨(dú)立運(yùn)行并擁有自己的內(nèi)存空間,下面通過(guò)示例代碼講解Python multiprocessing共享對(duì)象的相關(guān)知識(shí),感興趣的朋友跟隨小編一起看看吧2023-07-07Python爬取你好李煥英豆瓣短評(píng)生成詞云的示例代碼
這篇文章主要介紹了Python爬取你好李煥英豆瓣短評(píng)生成詞云,本文給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下2021-02-02Python辦公自動(dòng)化之發(fā)送電子郵件和Outlook集成
Python辦公?動(dòng)化是利?Python編程語(yǔ)?來(lái)創(chuàng)建腳本和程序,以簡(jiǎn)化、加速和?動(dòng)化?常辦公任務(wù)和?作流程的過(guò)程,本文主要介紹一下如何利用Python實(shí)現(xiàn)發(fā)送電子郵件和Outlook集成,需要的可以參考下2023-12-12python新手練習(xí)實(shí)例之萬(wàn)年歷
最近進(jìn)行python基礎(chǔ)培訓(xùn),課下作業(yè)制作萬(wàn)年歷,之前沒(méi)做過(guò),感覺(jué)里面還是有很多需要學(xué)的,下面這篇文章主要給大家介紹了關(guān)于python新手練習(xí)實(shí)例之萬(wàn)年歷的相關(guān)資料,需要的朋友可以參考下2022-05-05python網(wǎng)絡(luò)爬蟲(chóng)之如何偽裝逃過(guò)反爬蟲(chóng)程序的方法
本篇文章主要介紹了python網(wǎng)絡(luò)爬蟲(chóng)之如何偽裝逃過(guò)反爬蟲(chóng)程序的方法,小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過(guò)來(lái)看看吧2017-11-11