JS常见基础题

递归写法

1、在控制台输出1~1000之中,所有能被5整除,或者被6整除的数字

function fun (i) {
        if(i == 0) return i = 1
        if(i % 5 == 0 || i % 6 == 0) {
            console.log(i);
        }
        fun(i - 1)
    }
    fun(1000)

2、用户输入一个数字n,计算1+2+3+4····n的和

 function checktype(n) {
        if(n == 1) return 1
        return n + checktype(n -1)
    }
    var num = checktype(3)
    alert(num)

 3、用户输入一个数字n,计算3/2 + 4/3 + 5/4 ···· +n+1/n

(这块要注意,在递归中,return不会停止,依然会执行)

var p = parseInt(prompt("请输入一个值"))
    function fun(n) {
        if(n == 1) return n = 0
        return (n+1)/n + fun(n - 1)
    }
    var yy = fun(p)
    console.log(yy);

Js

1、计算下列算式,并将结果输出:

 

var num = ([(45*78+123) / (34 + 543)] - [9 * (324 - 34)])
    console.log(num);

2、

表示气温有两种方法:摄氏度和华氏度。两者的关系是:华氏度=9/5*摄氏度+32 ,编写程序,让用户输入摄氏度,弹出对应的华氏温度。

var she = prompt("请输入摄氏度")
    var hua = ( 9 / 5 * she + 32)
    alert(hua)

3、用JS计算下列算式,并将结果在弹出: 

 

var num = ([23 + (5*5*5*5*5*5*5)] / 45)
    var rum = (num * num)
    console.log(rum);

4、编写程序,提示用户输入六边形的边长,然后弹出它的面积,计算六边形面积的公式是:

var num = prompt("请输入六边形的边长")
    var rum = 3*Math.sqrt(3)/2*Math.pow(num,2)
    alert(rum)

5、如果今天是星期二,那么1000天后是星期几?用户输入一个天数,计算这个天数后是星期几。

/**
 * 方法一、
*/

<body>
    <input type="text" name="" id="">
        <button>点击</button>
</body>
<script>
var input = document.querySelector("input")
var button = document.querySelector("button")
button.onclick = function () {
    var now = 2;      //现在星期二
    var val = parseInt(input.value)
    var remainDay = val % 7      //取余之后剩余的天数

    if (remainDay == 6) {
        now = 1;
    } else {
        now = now + remainDay
    }

    switch (now) {
        case 1:
            alert("星期一")
            break;
        case 2:
            alert("星期二")
            break;
        case 3:
            alert("星期三")
            break;
        case 4:
            alert("星期四")
            break;
        case 5:
            alert("星期五")
            break;
        case 6:
            alert("星期六")
            break;
        default:
            alert("星期日")
    }

}


</script>

/**

     * 方法二、

    */

    var rum = prompt("请输入天数")

    var num = (rum % 7)

    if (num == 0) {

        alert("星期二")

    }

    if (num == 1) {

        alert("星期三")

    }

    if (num == 2) {

        alert("星期四")

    }

    if (num == 3) {

        alert("星期五")

    }

    if (num == 4) {

        alert("星期六")

    }

    if (num == 5) {

        alert("星期天")

    }

    if (num == 6) {

        alert("星期一")

    }

6、

 用户输入一个三位数,弹出各个数位的和。

比如:

用户输入155,就弹出11

用户输入316,就弹出10

用户输入989,就弹出26

用户输入678,就弹出21

 /**
   * 方法一、
  */

<body>
    <input type="text" placeholder="请输入一个三位数">
    <button>点击</button>
</body>

</html>
<script>


    var npm = prompt("请输入一个数")
    var cnm = npm.split("")
    var vbn = 0
    for (let i = 0; i < cnm.length; i++) {
        vbn += Number(cnm[i]);
    }
    alert(vbn);

</script>

/**

    * 方法二、

 */

<script>

    var input = document.querySelector("input")

    var button = document.querySelector("button")

    button.onclick = function () {

        var val = parseInt(input.value)     //用户输入的值

        var result = parseInt(val / 100) + parseInt(val % 100 / 10) + val % 10

        alert(result)

    }

</script>

 

 

  • 1
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值