题目内容
5.所有正因子的和大于自身2倍的正整数称为“富裕数”.例如,18的正因子是1,2,3,6,9,18,1+2+3+6+9+18=39>36,18是“富裕数”.设计一个算法,求出1~100中的所有“富裕数”.分析 依次以属于(2,n-1)的整数d为除数去除n,检查余数是否为0,若是,则d是n的因数;若不是,则d不是n的因数,从而可求正因数,设计循环结构实现.
解答 解:第1步,令i=1.
第2步:给定一个正整数n,
第3步:依次以属于(2,n-1)的整数d为除数去除n,检查余数是否为0,若是,则d是n的因数;若不是,则d不是n的因数.
第4步:在n的因数中加入1和n,
第5步:计算并判断n的所有因数的和大于自身2倍吗?,若是,则输出n,否则,执行下一步,
第6步,判断“i>100”是否成立.若是,则结束算法;否则,执行下一步.
第7步,使i的值增加l,仍用i表示.返回第2步.
点评 本题主要考查了设计程序框图解决实际问题,属于基本知识的考查.
练习册系列答案
相关题目
16.已知数列{an}为等差数列,a1=35,d=-2,Sn=0,则n=( )
| A. | 33 | B. | 34 | C. | 35 | D. | 36 |