今天做题遇见,于是就搜了一下,于是就有了这篇文章。(其实我不知道原理....Orz)我觉得分解质因数的最优算法应该不是我这篇文章中的这个.....谁有好的算法可以给我说一下,谢谢。

1.有多少个约数:

先分解质因数

因数的次数分别是4,2,1

所以约数的个数为(4+1)*(2+1)*(1+1)=5*3*2=30个

eg:

先分解质因数

720=24*32*51

因数的次数分别是4,2,1

所以约数的个数为(4+1)*(2+1)*(1+1)=5*3*2=30个

2.所有约数之和:

2004的约数之和为:1, 2, 3, 4, 6, 12, 167, 334, 501, 668, 1002 ,2004  = 4704

如何求一个数所有约数之和呢?

首先,应用算术基本定理,化简为素数方幂的乘积。

X = a1^k1 * a2^k2........an^kn

X的所有素数之和可用公式(1+a1 + a1^2...a1^k1) * (1+a2 + a2^2...a2^k2) * .....(1+an + an^2...an^kn)表示

如:

2004 = 2^2  * 3  *167

2004所有因子之和为(1  + 2 + 2^2) * (1 + 3) * ( 1 + 167) = 4704;

程序实现的时候,可利用等比数列快速求1 + a1 + a1^2 + .....a1^n;

3.分解质因数

我用的算法是这个:

程序分析:对n进行分解质因数,应先找到一个最小的质数k,然后按下述步骤完成:    (1)如果这个质数恰等于n,则说明分解质因数的过程已经结束,打印出即可。  (2)如果n <> k,但n能被k整除,则应打印出k的值,并用n除以k的商,作为新的正整数你n,   重复执行第一步。  (3)如果n不能被k整除,则用k+1作为k的值,重复执行第一步。

质因数 求约数 c语言,【初等数论】 求一个数有多少约数及所有约数之和、分解质因数...相关推荐

  1. c语言10个数如何求最大值,C语言,输入10个数怎样输出10个数中最大值,最小值(大一计算机)...

    可以参考下面的代码: #include int main() { int loop = 10; int min, max, value; do { printf("输入整数:"); ...

  2. 用c语言中的函数来求公约数,C语言中求最大公约数的函数

    满意答案 fzqtDv 2013.11.04 采纳率:42%    等级:12 已帮助:6067人 int g(int m,int n) { int k,p,t; if(m for(k=t; ;k-- ...

  3. c语言求n个数中奇数乘积,C语言:输入N个数 分别统计奇数和偶数之和 之积

    满意答案 a466643979 2016.06.26 采纳率:41%    等级:6 已帮助:107人 123456789101112131415161718192021222324252627282 ...

  4. c语言求最小公倍数_分解质因数、互质数、公因数、最大公因数、公倍数、最小公倍数...

    01 分解质因数 1. 定义: 把一个合数分解成多个质数相乘的形式. 2.求法: 用短除法分解质因数(一个合数写成几个质数相乘的形式). 如:30分解质因数是:(30=2×3×5) 02 互质数 1. ...

  5. 2021-04-09编程求1000以内的所有“完数”。所谓“完数”是指一个数恰好等于它的因子之和。例如,6是完数,因为6=1+2+3

    编程求1000以内的所有"完数".所谓"完数"是指一个数恰好等于它的因子之和.例如,6是完数,因为6=1+2+3 #include"stdio.h&q ...

  6. 数论 - 分解质因数+欧拉函数 - Relatives POJ - 2407

    数论 - 分解质因数+欧拉函数 文章目录 数论 - 分解质因数+欧拉函数 一.分解质因数 二.欧拉函数 三.模板: Relatives POJ - 2407 一.分解质因数 由 算 术 基 本 定 理 ...

  7. python对整数进行因数分解_浅谈将一个正整数分解质因数的逻辑思维和Python开发设计...

    今天讨论的是如何将一个正整数分解质因数.例如:输入36,打印出36=2*2*3*3. 1.首先要清晰两个概念,要知道什么是质数,如何进行分解质因数?质数是指在大于1的自然数中,除了1和它本身以外不再有 ...

  8. c语言用质因数分解法求最大公约数,分解质因数法求最大公约数(javascrip实现)

    //判断是否为质数------------------------------------------------------ function isPrime(n) { for (var i = n ...

  9. c语言用质因数分解法求最大公约数,《分解质因数的方法求最大公约数》数学教案...

    <分解质因数的方法求最大公约数>数学教案 教学内容:教材P/57页内容"用分解质因数的方法求最大公约数",完成P/57"练一练"及P/58-59页练 ...

最新文章

  1. 【J2SE】学习基础
  2. Day-16 面向对象03 类与类之间的关系
  3. Python自动化测试白羊座-week3切片+元组
  4. 《应用时间序列分析:R软件陪同》——2.3 随机游走
  5. import 快捷键 自动调整顺序_一文搞定PPT中的快捷键
  6. mysql root远程访问权限_mysql8.0 Server在Windows平台中的安装、初始化和远程访问设置...
  7. 保存模型后无法训练_模型构建到部署实践
  8. 发送临时文件被服务器拒绝,临时会话说服务器拒绝了您发送离线文件的请求 - 卡饭网...
  9. 有关域索引错误产生的原因及解决办法
  10. css鼠标变成小手_技巧篇:CSS高级技巧详解
  11. 解决BLOB/TEXT column can‘t have a default value query问题
  12. Python操作Redis和Memcached
  13. [转载]Qt之解决中文乱码_vortex_新浪博客
  14. Visual Studio 2013中因Browser Link引起的Javascript错误
  15. win10远程控制+Android,win10实现手机远程控制电脑步骤分享
  16. 士不可以不弘毅,任重而道远
  17. 盘是什么意思计算机网络,hdd网络上什么意思
  18. Ubuntu中禁用触摸板
  19. 算法分析-时间复杂度:大O、大Ω、大θ、小o、小ω
  20. 【图像增强】基于Frangi滤波器实现血管图像增强附matlab代码

热门文章

  1. HTML编辑器自动过滤代码怎么办,KesionCMS X1百度编辑器过滤html代码的修复方法
  2. c++父类调用子类的方法
  3. 李兴华oracle ppt,魔乐科技Oracle笔记超经典李兴华doc.ppt
  4. UWB技术简介通讯载波及带宽基础
  5. 2023年4月的12篇AI论文推荐
  6. Win7安装系统,无猫腻
  7. 可变策略的拟人式三维装箱算法实现-开源
  8. 基于STM32采用CS创世 SD NAND(贴片SD卡)完成FATFS文件系统移植与测试
  9. 工业互联网不能没有“数据智能”心
  10. MBUS系列产品特点(科慧铭远)