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 相关文章推荐
JS模拟的QQ面板上的多级可展开的菜单
Oct 10 Javascript
基于jquery的滑动样例代码
Nov 20 Javascript
JS获取页面input控件中所有text控件并追加样式属性
Feb 25 Javascript
一个简单的JS鼠标悬停特效具体方法
Jun 17 Javascript
文本框(input)获取焦点(onfocus)时样式改变的示例代码
Jan 10 Javascript
express的中间件basicAuth详解
Dec 04 Javascript
js clearInterval()方法的定义和用法
Nov 11 Javascript
js轮盘抽奖实例分析
Apr 17 Javascript
javascript 实现动态侧边栏实例详解
Nov 11 Javascript
javascript验证香港身份证的格式或真实性
Feb 07 Javascript
Vue.js项目部署到服务器的详细步骤
Jul 17 Javascript
jQuery实现火车票买票城市选择切换功能
Sep 15 jQuery
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
解析yahoo邮件用phpmailer发送的实例
2013/06/24 PHP
浅析Apache中RewriteCond规则参数的详细介绍
2013/06/30 PHP
ThinkPHP的Widget扩展实例
2014/06/19 PHP
跟我学Laravel之快速入门
2014/10/15 PHP
PHP连接MYSQL数据库实例代码
2016/01/20 PHP
PHP 序列化和反序列化函数实例详解
2020/07/18 PHP
PHP生成推广海报的方法分享
2018/04/22 PHP
代码生成器 document.write()
2007/04/15 Javascript
javascript 对象比较实现代码
2009/04/27 Javascript
Jquery插件之多图片异步上传
2010/10/20 Javascript
jQuery插件开发全解析
2012/10/10 Javascript
js Date概念详细介绍
2013/11/22 Javascript
ListBox实现上移,下移,左移,右移的简单实例
2014/02/13 Javascript
采用call方式实现js继承
2014/05/20 Javascript
JQuery Tips相关(1)----关于$.Ready()
2014/08/14 Javascript
javascript继承的六大模式小结
2015/04/13 Javascript
在nginx上部署vue项目(history模式)的方法
2017/12/28 Javascript
vue.js-div滚动条隐藏但有滚动效果的实现方法
2018/03/03 Javascript
详解webpack4之splitchunksPlugin代码包分拆
2018/12/04 Javascript
vue 根据选择条件显示指定参数的例子
2019/11/09 Javascript
[00:42]《辉夜杯》—职业组预选赛12月3日15点 正式打响
2015/12/03 DOTA
Django应用程序中如何发送电子邮件详解
2017/02/04 Python
用Python实现BP神经网络(附代码)
2019/07/10 Python
Ubuntu+python将nii图像保存成png格式
2019/07/18 Python
seek引发的python文件读写的问题及解决
2019/07/26 Python
详解python中index()、find()方法
2019/08/29 Python
python xlwt如何设置单元格的自定义背景颜色
2019/09/03 Python
Python assert关键字原理及实例解析
2019/12/13 Python
逼真的HTML5树叶飘落动画
2016/03/01 HTML / CSS
全球最大的生存食品、水和装备专用在线市场:BePrepared.com
2020/01/02 全球购物
4s店机修工岗位职责
2013/12/20 职场文书
党的群众路线对照检查材料
2014/08/27 职场文书
Mysql中 unique列插入重复值该怎么解决呢
2021/05/26 MySQL
maven依赖的version声明控制方式
2022/01/18 Java/Android
Python正则表达式中flags参数的实例详解
2022/04/01 Python
pytorch分类模型绘制混淆矩阵以及可视化详解
2022/04/07 Python