[算法]分解質因數


  今天偶然知道計算機還有作業,遂作之。一大堆表達式什么的很是麻煩,最后是一道編程題,本想大展身手,但是着實不會分解質因數,上網搜索到了相應算法。

  感覺到自己的漏洞還是在數學,數學基礎的不扎實一定會是一大隱患。算法的重要性也許在一些應用型的程序上體現不出來,但是算法的地位還是無可撼動的。要好好學了。

  下面分享一下算法

#include<stdio.h>
#include<math.h>
int main()
{
        int n,i;
        scanf("%d",&n);
        printf("%d=",n);
        for(i=2;i<=sqrt(n);i++)          #對半取值
        {
           if(n%i==0) {            #確保是因數
              n/=i;
              printf("%d*",i--);      #確保是質數,后綴++
                 }
         }
       printf("%d\n",n);
        return 0;
}

  應該還有更好的算法,我之后再更新。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM