高悬赏求数学题

记正整数n的因数个数为an,因数和为Sn,求所有满足Sn<2an^2的n如果是手动计算的,请写出计算过程,如果是编程的,请写出编程过程楼主昨天算出来是36个,其中n最大是... 记正整数n的因数个数为an,因数和为Sn,求所有满足Sn<2an^2的n
如果是手动计算的,请写出计算过程,如果是编程的,请写出编程过程
楼主昨天算出来是36个,其中n最大是240,不知道对不对
展开
Gwjwantjob
2014-08-02 · TA获得超过117个赞
知道答主
回答量:91
采纳率:33%
帮助的人:32.3万
展开全部

大概看了下目测不好手算

某只的VB一知半解水平。。。。

给个逻辑的建议吧~


生成数列1到某个比较大的数N,然后从1开始一个个跑程序(循环),在每一次循环里面(至于N应该用多大后面说)


  1. 找出他的所有因数 

    这个嘛,你有现成思路最好。没有的话,我想的是挨个把小于他的除一遍,如果结果为整数就把这个保存为因数Ax(x是序号) 同时另一个设置以0为初值的数据an,让其加一

  2. 把Ax求和获得Sn,同时算出2an^2,然后比较大小,如果小于,就在某个起始为空的字串写上这个数加一个空格什么的,然后进行下一个,大于等于的话即为false,啥都不写直接进行下一个循环。


N的取值,对应某特定an的Sn的最小值是可求的就是等差数列求和嘛。比如有8个因数的数,他的Sn最小值是1+2+3+4+5.。。+8=36(这个思路没错吧。。),即n(1+n)/2。让他小于2n^2 的话来求n的区间,这个时候我们发现右边对于全体正数n都大于左边(坑爹啊!)那就是说随便一个无穷大的N也总有比他更大的数符合题设要求。。。那N随便设置一个比较大的就好了,跑程序的时候先从小点的开始。。。。


这个思路应该可行吧。。。

追问
昨天我利用放缩法算了一下,是36个(最大的n是240),不知道对不对
N不必很大,当N很大时,Sn必然大于2an^2
追答
诶。。。。我数学推错了 不好意思。n个因数的Sn最小值不是等差数列那种求法。。。。所以我关于N取值的判断无视好了。
尹六六老师
2014-08-02 · 知道合伙人教育行家
尹六六老师
知道合伙人教育行家
采纳数:33774 获赞数:147215
百强高中数学竞赛教练, 大学教案评比第一名, 最受学生欢迎教

向TA提问 私信TA
展开全部
(1)一个质因数:由表格,2、4、8、16、32、3、9、5
共有8个;
(2)两个质因数:由表格,6、12、24、48、96、18、36、72、144、54、108、10、20、40、80、14、28、56
共有18个;
(3)三个质因数:由表格,30、60、120、240、90、180、42、84、168、
共有9个
综上,总共有8+18+9=35(个)
更多追问追答
追问
1为什么不算?
追答
还真的,只考虑质因数分解了,没有考虑没有质因数的情形
本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
匿名用户
2014-08-02
展开全部
喷。。。。。。。。。。。。。。。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(1)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式