jQuery寻找n以内完全数的方法


Posted in Javascript onJune 24, 2015

本文实例讲述了jQuery寻找n以内完全数的方法。分享给大家供大家参考。具体分析如下:

数的完满取决于它的因数(能整除原数的那些数)。

例如:12的因数是1,2,3,4和6。当一个数的各因数之和大于该数本身时,该数称为“盈”数。于是12是一个盈数,因为它的因数加起来等于16。另一方面,当一个数的因数之和小于该数本身时,该数称为“亏”数。所以10是一个亏数,因为它的因数(1,2和5)加起来只等于8。

最有意义和最少见的数是那些其因数之和恰好等于其本身的数,这些数就是完满数。

-- 《费马大定理》

寻找完全数,首先就要计算数的因数,百度复习一下什么是因数。

因数:假如整数n除以m,结果是无余数的整数,那么我们称m就是n的因数。 需要注意的是,唯有被除数,除数,商皆为整数,余数为零时,此关系才成立。 反过来说,我们称n为m的倍数。

<!DOCTYPE html> 
<html> 
<head> 
 <meta charset="utf-8"> 
 <title>JS Bin</title> 
</head> 
<body> 
 <input type="text" id="num"/> 
 <button id="calc">计算</button> 
 <p id="result"></p> 
</body> 
</html>
/* 
 * 寻找n以内的完美数 
 */ 
function $(id){ 
 return document.getElementById(id); 
} 
//判断是否为正整数 
function isIntNum(number){ 
 var num = number; 
 if((!isNaN(num)) && (parseInt(num) == parseFloat(num))){ 
  return true; 
 }else{ 
  return false; 
 } 
} 
$("calc").addEventListener("click",function(){ 
 var inputNum = $("num").value, 
   $result = $("result"), 
   factorArr = [], 
   resultArr = [], 
   i = 0, 
   j = 0, 
   sum = 0; 
 //检验输入是否为正整数 
 if(isIntNum(inputNum)){ 
  console.log("right"); 
 }else{ 
  $result.innerHTML = "输入错误:请输入正整数"; 
  return false; 
 } 
 //遍历所有数字 
 for(var k = 1;k < inputNum;k++){ 
  //每次计算需重置变量 
  factorArr.length = 0; 
  sum = 0; 
  //寻找当前数字的因数 
  for(i = 1;i < Math.floor(k/2)+1; i++){ 
   if(k % i === 0){ 
    factorArr.push(i); 
   } 
  } 
  //计算因数之和 
  for(var m = 0;m < factorArr.length;m++){ 
   sum += factorArr[m]; 
  } 
  //因素和等于当前数,则符合完全数标准 
  if(sum === k){ 
   resultArr.push(k); 
  } 
 } 
 $result.innerHTML=resultArr; 
});

希望本文所述对大家的jQuery程序设计有所帮助。

Javascript 相关文章推荐
Array.prototype.slice 使用扩展
Jun 09 Javascript
js性能优化 如何更快速加载你的JavaScript页面
Mar 17 Javascript
jquery特效 幻灯片效果示例代码
Jul 16 Javascript
jquery+ajax请求且带返回值的代码
Aug 12 Javascript
TypeOf这些知识点你了解吗
Feb 21 Javascript
JavaScript绑定事件监听函数的通用方法
May 14 Javascript
老生常谈javascript的类型转换
Oct 12 Javascript
浅谈Javascript中的Label语句
Dec 14 Javascript
javascript+css3开发打气球小游戏完整代码
Nov 28 Javascript
Vue实现6位数密码效果
Aug 18 Javascript
深入剖析JavaScript instanceof 运算符
Jun 14 Javascript
js实现文字头像的生成代码
Mar 07 Javascript
js实现仿阿里巴巴城市选择框效果实例
Jun 24 #Javascript
Javascript常用小技巧汇总
Jun 24 #Javascript
js实现的倒计时按钮实例
Jun 24 #Javascript
js实现大转盘抽奖游戏实例
Jun 24 #Javascript
jQuery里filter()函数与find()函数用法分析
Jun 24 #Javascript
举例详解Python中smtplib模块处理电子邮件的使用
Jun 24 #Javascript
jQuery可见性过滤器:hidden和:visibility用法实例
Jun 24 #Javascript
You might like
php数组函数序列之array_slice() - 在数组中根据条件取出一段值,并返回
2011/11/07 PHP
用PHP书写安全的脚本代码
2012/02/05 PHP
CodeIgniter视图使用注意事项
2016/01/20 PHP
php 运算符与表达式详细介绍
2016/11/30 PHP
PHP字符串逆序排列实现方法小结【strrev函数,二分法,循环法,递归法】
2017/01/13 PHP
laravel 事件/监听器实例代码
2019/04/12 PHP
niceTitle 基于jquery的超链接提示插件
2010/05/31 Javascript
javascript 从if else 到 switch case 再到抽象
2010/07/17 Javascript
js之事件冒泡和事件捕获详细介绍
2013/10/28 Javascript
javascript操作excel生成报表示例
2014/05/08 Javascript
JavaScript函数获取事件源的小例子
2014/05/14 Javascript
基于JavaScript实现自动更新倒计时效果
2016/12/19 Javascript
微信小程序 密码输入(源码下载)
2017/06/27 Javascript
尝试自己动手用react来写一个分页组件(小结)
2018/02/09 Javascript
VUE实现自身整体组件销毁的示例代码
2020/01/13 Javascript
vue组件讲解(is属性的用法)模板标签替换操作
2020/09/04 Javascript
微信小程序实现文件预览
2020/10/22 Javascript
详解Java中String JSONObject JSONArray List转换
2020/11/13 Javascript
[36:33]完美世界DOTA2联赛PWL S2 LBZS vs Forest 第二场 11.29
2020/12/02 DOTA
比较详细Python正则表达式操作指南(re使用)
2008/09/06 Python
初步介绍Python中的pydoc模块和distutils模块
2015/04/13 Python
尝试用最短的Python代码来实现服务器和代理服务器
2016/06/23 Python
Python实现句子翻译功能
2017/11/14 Python
Python中用psycopg2模块操作PostgreSQL方法
2017/11/28 Python
详解python使用Nginx和uWSGI来运行Python应用
2018/01/09 Python
pycharm 解除默认unittest模式的方法
2018/11/30 Python
Python3利用print输出带颜色的彩色字体示例代码
2019/04/08 Python
python基于FTP实现文件传输相关功能代码实例
2019/09/28 Python
python使用openpyxl操作excel的方法步骤
2020/05/28 Python
python数据抓取3种方法总结
2021/02/07 Python
2014年党务公开方案
2014/05/08 职场文书
宣传标语大全
2014/07/01 职场文书
七一建党日演讲稿
2014/09/05 职场文书
公证委托书格式
2014/09/13 职场文书
学校2014重阳节活动策划方案
2014/09/16 职场文书
2015年终个人政治思想工作总结
2015/11/24 职场文书