赞
踩
题干:判断一个数是否为完数
完全数(Perfect number),又称完美数或完备数,是一些特殊的自然数。它所有的真因子(即除了自身以外的约数)的和(即因子函数),恰好等于它本身。
例如: 6 除了自身的约数有1 2 3 那么1+2+3=6 6就是一个完数
28 除了自身的约束 有1 2 14 4 7 哪呢1+2+14+4+7=28 28就是一个完数
分析:
①首先输入一个数 定义为:num
②拿到需要进入循环的数字i 也就是除了他自身以外从1开始小于他本身的数 即i的范围在【1,num-1)之间
③拿到约束并且求和
利用判断拿到约束 即被num整除的i就是约束 然后求和
④输出求和的结果(可有可无)
⑤判断是否是完数 即你输入的数字和求和的数字是否相等 相等则是完数 不同则不是
代码如下:
- <script>
-
- //1.输入一个数
- var num = Number(prompt("请输入一个数字"));
- //2.因为要除了自身以外的约束 因此先拿到取值范围
- // 取值范围是1 ~(num-1)
- var sum = 0;
- for (i = 1; i < num; i++) {
- //3.判断i是否为num的约数
- if (num % i === 0) {
- //4.求和
- sum += i;
- }
- console.log("输入的数字是:" + num);
- }
- console.log("除了自身以外所有约束的和:" + sum);
- //5.判断是否是完数
- if (num === sum) {
- console.log("该数是完数" + num);
- } else {
- console.log("该数不是完数" + num);
- }
- </script>
效果如下:(输入完数的效果)
(若不是完数)
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。