WEB前端 JS(3.25)

水仙花数 (水仙花数就是:个位的立方 +十位的立方+百位的立方=这个数本身)

<!DOCTYPE html>
<html>
    <head>
        <meta charset="utf-8">
        <title></title>
    </head>
    <body>
        <script>
            for(let i=100; i<1000;i++){
                let gewei = i % 10
                let shiwei = parseInt(i / 10) % 10
                let baiwei = parseInt(i / 100)
                if(gewei ** 3 + shiwei ** 3 + baiwei ** 3 == i){
                    console.log(i)
                }
            }
        </script>
    </body>
</html>

判断质数(利用函数)

<!DOCTYPE html>
<html lang="zh">
    <head>
        <meta charset="UTF-8">
        <title>Document</title>
    </head>
    <body>
        <script>
      //判断质数
            function isPrime(num) {
                for (let i = 2; i < num; i++) {
                    if (num % i == 0) {
                        return false
                    }
                }
                return true
            }
            
            for(let i = 2; i < 100; i++){
                if(isPrime(i)){
                    console.log(i,"是一个质数");
                }
            }
        </script>
    </body>
</html>

菱形代码

<!DOCTYPE html>
<html lang="zh">
 <head>
  <meta charset="UTF-8">
  <title>Document</title>
 </head>
 <body>
  <script>
   //    *           
   //   ***            
   //  *****          
   // *******          
   //  *****          
   //   ***           
   //    *       
   // 层 1 2 3 4
   // 空 3 2 1 0
   // 星 1 3 5 7
    
   //上半区
   // star = 上半区当前层数 * 2 - 1
   // up_layer = math.floor(total_layer / 2) + 1
   // space =  up_layer - 上半区当前层数
   //下半区
   // dowm_layer = up_layer - 1
   // space =  下半区当前层数
   // star = total_layer - 下半区当前层数
    
  layer = parseInt(prompt("请输入层数"))
            up_layer = Math.ceil(layer / 2)
            down_layer = up_layer - 1
            //上半区
            for (let i = 1; i <= up_layer; i++){
                str = ""
                space_num = up_layer - i;
                for(let j = 1;j <= space_num; j++){
                 str += " "
                }
                star_num = i * 2 -1
                for(let j = 1; j <= star_num; j++){
                 str += "*"
                }
                console.log(str)
            }
            //下半区
            for (let i = 1; i <= down_layer; i++){
                str = ""
                space_num = i ;
                for(let j = 1;j <= space_num; j++){
                 str += " "
                }
                star_num = layer - (i * 2 )
                for(let j = 1; j <= star_num; j++){
                 str += "*"
                }
                console.log(str)
            }
  </script>
 </body>
</html>

用循环求10!

<!DOCTYPE html>
<html>
	<head>
		<meta charset="utf-8">
		<title></title>
	</head>
	<body>
		<script>
			let fac = 1
			for(let i = 2; i <= 10; i++){
				fac *= i 
			}
			console.log(fac)
		</script>
	</body>
</html>

//若求n的阶乘则 i<=n 即可

用循环求10! +9! +8! ......1! (利用函数)

<!DOCTYPE html>
<html>
	<head>
		<meta charset="utf-8">
		<title></title>
	</head>
	<body>
		<script>
			function getFac(n){
				let fac = 1
				for(let i = 2; i <= n; i++){
					fac *= i 
				}
				console.log(fac)
				return fac
			}
			sum = 0
			for(let i = 1; i <= 10; i++){
				sum += getFac(i)
			}
			console.log(sum)

      let sum = 0
			let fac = 1
			for(let i = 1; i <= 10;i++){
				fac *= i
				sum += fac 
			}
			console.log(sum)
		</script>
	</body>
</html>

假如一次只能走上一阶或者一下子蹦上两阶。现在一共有N阶台阶,请你计算一下从第0阶到第N阶共有几种走法。

(递归求解,斐波那契数列)

<!DOCTYPE html>
<html>
	<head>
		<meta charset="utf-8">
		<title></title>
	</head>
	<body>
		<script>
			n = parseInt(prompt('请输入阶数'))
			function fib(n){
				if ( n == 1 || n == 2){
					return n
				}
				return fib(n-1) + fib(n-2)
			}
			console.log(fib(n))
		</script>
	</body>
</html>

一对小兔子,4个月能长大,长大以后每个月生一对小兔子,求第n个月有多少对兔子?

(递归求解,斐波那契数列)

<!DOCTYPE html>
<html>
	<head>
		<meta charset="utf-8">
		<title></title>
	</head>
	<body>
		<script>
			n = parseInt(prompt('请输入月数'))
			function fib(n){
				if ( n <= 4){
					return 1
				}
					return fib(n-1) + fib(n-4)
				}
				console.log(fib(n))
		</script>
	</body>
</html>
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

RongChuJie

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值