JS基础_质数练习的改进,提高程序执行效率

 1 <!DOCTYPE html>
 2 <html>
 3     <head>
 4         <meta charset="UTF-8">
 5         <title></title>
 6         <script type="text/javascript">
 7             
 8             
 9             //测试如下的程序的性能,在程序执行前,开启计时器,注意用外部浏览器测试,因为HBuilder内置的浏览器打印不出时间
10             
11             //-----------------------------------------------------------------------------------------
12             
13             //console.time("计时器的名字")可以用来开启一个计时器
14             //它需要一个字符串作为参数,这个字符串将会作为计时器的标识
15             console.time("test");
16             
17             //打印2-100之间所有的数
18             for(var i=2 ; i<=10000 ; i++){
19                 var flag = true;
20                 for(var j=2 ; j<=Math.sqrt(i) ; j++){
21                     if(i%j == 0){
22                         //如果进入判断则证明i不是质数,修改flag值为false
23                         flag = false;
24                         //一旦进入判断,则证明i不可能是质数了,此时循环再执行已经没有任何意义了
25                         //使用break来结束循环
26                         break;
27                         
28                         //不加break            215ms
29                         //加break              25ms
30                         //改为j<=Math.sqrt(i)  2.6ms
31                     }
32                 }
33                 //如果是质数,则打印i的值
34                 if(flag){
35                     console.log(i);
36                 }
37             }
38              
39             //终止计时器
40             //console.timeEnd()用来停止一个计时器,需要一个计时器的名字作为参数
41             console.timeEnd("test");
42             
43             
44             /*
45              * 36
46              * 
47              * 1 36
48              * 2 18
49              * 3 12
50              * 4 9
51              * 6 6
52              * 
53              */
54             
55             
56             //可以通过Math.sqrt()对一个数进行开方
57             var result = Math.sqrt(97);
58             
59             console.log("result = "+result)
60             
61             
62         </script>
63     </head>
64     <body>
65     </body>
66 </html>

 

转载于:https://www.cnblogs.com/ZHOUVIP/p/7678989.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值