JavaScript

js计算一筐鸡蛋

一、问题描述

一筐鸡蛋:
1个1个拿,正好拿完。
2个2个拿,还剩1个。
3个3个拿,正好拿完。
4个4个拿,还剩1个。
5个5个拿,还差1个。
6个6个拿,还剩3个。
7个7个拿,正好拿完。
8个8个拿,还剩1个。
9个9个拿,正好拿完。
问筐里最少有多少鸡蛋?

二、代码

for (var i = 0; i < 50000; i++) {
    if (i % 2 == 1 &&
        i % 3 == 0 &&
        i % 4 == 1 &&
        i % 5 == 4 &&
        i % 6 == 3 &&
        i % 7 == 0 &&
        i % 8 == 1 &&
        i % 9 == 0) {
        console.log(i);
        return;
    }
}

三、解释

一般这种计算都是使用求摸(%)来判断的,咱们把鸡蛋的数量num为一个未知数

num%1 == 0 -> 1个1个拿,正好拿完
num%2 == 1 -> 2个2个拿,还剩1个
num%3 == 0 -> 3个3个拿,正好拿完
num%4 == 1 -> 4个4个拿,还剩1个
num%5 == 4 -> 5个5个拿,还差1个
num%6 == 3 -> 6个6个拿,还剩3个
num%7 == 0 -> 7个7个拿,正好拿完
num%8 == 1 -> 8个8个拿,还剩1个
num%9 == 0 -> 9个9个拿,正好拿完

PS:这里面《 1个1个拿,正好拿完》不用计算,因为所有的正整数都是得到0的。

四、结果

1449、3969、6489、9009、11529、14049、16569、19089、21609、24129、26649、29169、31689、34209、36729、39249、41769、44289、46809、49329……

你要你敢把for的i弄的大点随便你处理!

1 条留言

去留言

留下留言

请友善交流,评论可能需要审核后显示。