js vue生成两位小数的分数运算

本需求是关于运用随机来数训练分数计算的能力,使用vue前端产生一个数组然后保存到excel里。

本文重点讲分数的随机数生成。

getRandom () {
    //获取一个0-100的整数
    return Math.ceil(Math.random() * 99) + 1
}
getChild (n) {
      //获取一个n-100n的不被n整除的数
      let zheng = Math.ceil(Math.random() * this.max)
      let first = zheng * n
      let xiao = Math.random().toFixed(2)
      let second = Math.ceil(xiao * n)
      let num = first + second
      let real = zheng + (xiao - 0)
      console.log('zheng ' + zheng)
      console.log('xiao ' + xiao)
      if((num / n) % 1 === 0) {
        return this.getChild(n)
      } else {
        console.log(num + ' ' + n +' ' + real)
        return [num,real]
      }
    }
getNumber () {
      let mu = this.getRandom()
      let obj = this.getChild(mu)
      let child = obj[0]
      return [child + '/' + mu, obj[1]]
    }
getArithmetic (op) {
      let num1 = this.getNumber()
      let num2 = this.getNumber()
      if(op === ' - ') {
        if (num1[1] < num2[1]) {
          console.log('小于')
          this.getArithmetic(op)
        }
      }
      return num1[0] + op + num2[0] + ' = '
    }

如果用小数转为分数势必十分麻烦,所以这边用的是随机生成分母然后用整数部分乘分母加上小数部分得到分子的替代方法。

就花了一会写的比较草率,好了就酱。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值