鱼C论坛

 找回密码
 立即注册
查看: 2708|回复: 2

c语言简答题

[复制链接]
发表于 2018-10-24 11:43:56 From FishC Mobile | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能^_^

您需要 登录 才可以下载或查看,没有账号?立即注册

x
1、函数IsPrime的形参类型定为unsigned而不是int,有两个好处是:
2.判断n是否质数时,为什么只需要判断能否被小于n平方根的正整数(从2到√n)整除,而不需要判断能否被小于n-1的数(从2到n-1)整除?
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2018-10-24 11:58:40 | 显示全部楼层
2.对于每个数n,其实并不需要从2判断到n-1,我们知道,一个数若可以进行因数分解,那么分解时得到的两个数一定是一个小于等于sqrt(n),一个大于等于sqrt(n),据此,并不需要遍历到n-1,遍历到sqrt(n)即可,因为若sqrt(n)左侧找不到约数,那么右侧也一定找不到约数。
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2018-10-25 18:18:35 | 显示全部楼层
质数就不是合数。那么怎样的最小组合刚好等于【待判断的数】?就是该数的平方根。用 25 为例好了,其他的太小
2 * 3 = 6      | 3*2 也考虑进去了,排列组合
3 * 3 = 9
3 * 4 = 12
4 * 4 = 16
4 * 5 = 20
5 * 5 = 25
5 * 6 = 30     //超过 25 啦,所以根本就不需要再往下看
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|手机版|Archiver|鱼C工作室 ( 粤ICP备18085999号-1 | 粤公网安备 44051102000585号)

GMT+8, 2024-11-30 14:27

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表