JavaScript入门循环嵌套练习题(11)

1.写出1-100之间的质数

首先,什么是质数

质数:在大于一的自然数中,除了1和它本身以外不再有其他的因数。

	<script type="text/javascript">

//      写出1-100之间的质数

		for (var i=2;i<=100;i++) { // 控制数字从2开始到100为止,i是除数
			for (var j=2;j<i;j++) { // 控制被除数,j是被除数
				if(i%j==0){ // 不是质数的条件
					break;  // 跳出当前循环
				}
			}
			    if (i<=j) { // 是质数
			    	document.write(i+"&nbsp;");
			    }
		}

    </script>

2.判断这个数是否为质数

//    判断这个数是否为质数

	<script type="text/javascript">
	
		var i=prompt('请输入数字')
			for (var j=2;j<i;j++) { // 控制被除数,j是被除数
				if(i%j==0){ // 不是质数的条件
					break;  // 跳出当前循环
				}
			}
			    if (i<=j) { // 是质数
			    	document.write(i+"是质数");
			    }else{
			    	document.write(i+'不是质数');
			    }

	</script>

3.用1,2,3,4四位数字组成互不相同的三位数

		<script type="text/javascript">
			
			for (var i=1;i<5;i++) {// 控制第一位数
				for (var j=1;j<5;j++) {// 控制第二位数
					for (var k=1;k<5;k++) {// 控制第三位数
			     	    if (i!=j && i!=k && j!=k) {// 控制条件 互不相同
							    document.write(" "+i+j+k+'<br />');
							    // 输出
					    }
				    }
				}
			}
		
		</script>

4.水仙花数

首先,也要搞清楚什么是水仙花数?

水仙花数:是一种自幂数的一种,严格来说3位数的3次幂数才能称为水仙花数。

其他位数的自幂数字

一位自幂数:独身数

两位自幂数:没有

三位自幂数:水仙花数

五位自幂数:四叶玫瑰数

六位自幂数:五角星数

七位自幂数:北斗七星数

八位自幂数:八仙数

九位自幂数:九九重阳数

十位自幂数:十全十美数

    <script type="text/javascript">
    
    //  水仙花数 
    	for (var i=100;i<1000;i++) { // 控制从100开始,到1000为止
    		a=i%10;  //个位
    		b=parseInt((i/10)%10);   //十位
    		c=parseInt(i/100);   //百位
    		if(i==a*a*a+b*b*b+c*c*c)
    		  document.write(i+"<br />");
    	}
        
    </script> 

5. 1-10的阶乘



1~10的阶乘:(1*1)+(1*2)+(1*2*3)+(1*2*3*4)+···+(1*2*3*4*5*6*7*8*9*10)

例:4! =(1*2*3*4)

		<script type="text/javascript">

//		- 求 1!+2!+3!+···+10!的和 -
			var sum=0;
			for (var i=1;i<=10;i++) {
				var a=1;
				for (var j=1;j<=i;j++) {
					a*=j;
				}
				sum+=a;
			}
			document.write(sum);

		</script>

6. 找出1~1000的完数
完数: 一个数如果恰好等于它的因子之和,这个数就称为 "完数 "。

// 例如6=1+2+3.

编程 找出1000以内的所有完数。

		<script type="text/javascript">
		
			for (i=1;i<1000;i++) {
				sum=0;
				for (j=1;j<i;j++) {
					if (i%j==0) {
						sum+=j;
					}
				}
				if (sum==i) {
					document.write(i+'<br />');
					}
			}
			
		</script>
  • 2
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值