求两数排列组合个数的两种解法

 . 编写一个函数,计算任意两个数字之间所能组成的奇数个数,数字必须是个位数。比如:计算0~3之间能组成的奇数是: 01、03、11、13、21、23、31、33

        /题目解析:

                1 两个大于0小于10 的个位数

                2只能拼接成奇数

                4 不能重复

                5 计数字符串的拼接数量

            1     第一种解法

        let a = +prompt('输入第一个数')

        let b = +prompt('输入第二个数')

         if (a < 10 && a >= 0 && b > 0 && b < 10 && b > a) {

             if (a % 2 === 0 && b % 2 === 0) {

                 sum = (b - a) / 2 * (b - a + 1)

             } else if (a % 2 !== 0 && b % 2 === 0 || a === 0) {

                sum = (b - a + 1) / 2 * (b - a + 1)

             } else if (a % 2 === 0 && b % 2 !== 0) {

                 sum = (b - a + 1) / 2 * (b - a + 1)

             } else if (a % 2 !== 0 && b % 2 !== 0 || a === 0 && b % 2 === 0) {

                 sum = (b - a) / 2 * (b - a + 2)

             } else (`请重新输入`)

         } else if (a < 10 && a > 0 && b >= 0 && b < 10 && b < a) {

             if (a % 2 === 0 && b % 2 === 0) {

                 sum = (a - b) / 2 * (a - b + 1)

             } else if (a % 2 !== 0 && b % 2 === 0 || a === 0) {

                 sum = (a - b + 1) / 2 * (a - b + 1)

             } else if (a % 2 === 0 && b % 2 !== 0) {

                sum = (a - b + 1) / 2 * (a - b + 1)

            } else if (a % 2 !== 0 && b % 2 !== 0 || a === 0 && b % 2 === 0) {

                sum = (a - b) / 2 * (a - b + 2)

             } else (`请重新输入`)

         }

      document.write(sum)

      1     第二种解法

        let a = +prompt('输入第一个数')

        let b = +prompt('输入第二个数')  

         let num = 0

         for 包含if可以进行循环里的部分循环,if包含for,可以提前判断哪一些需要循环

        if (a >= 0 && a < 10 && b >= 0 && b < 10) {

            for (j = a; j < b; j++) {

                if (j % 2 === 0) {

                    continue

                } else {

                    num++

                }

            }

        }

         let total = (b - a + 1) * num

         document.write(total)

      </script>

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值