数据区间小算法

数据的要求是

数据范围是[80-300) (300处是开区间既不包含300) 每当数据超过此范围时将数据从起点加 500 开始下一个数据循环。

示例:

[80-300)

[580-800)

[1080-1300)

[1580-1800)

…..

求出1万之内的全部符合条件的数据。

//算法处理:
#define kRequireNumStartIndex       (80)
#define kRequireNumEndIndex         (300)

#define kRequireInterval            (500)

    _requireNumIndex = kRequireNumStartIndex - 1;
    
    while (_requireNumIndex < 10 * 1000) {
        _requireNumIndex++;

        int loopCount = _requireNumIndex / kRequireInterval;
        if (_requireNumIndex >= kRequireNumEndIndex + kRequireInterval * loopCount) {
            _requireNumIndex = kRequireNumStartIndex + kRequireInterval * (loopCount + 1);
            printf("---\n");
        }
        if (_requireNumIndex <  10 * 1000) {
            printf("requireNumIndex is %d\n", _requireNumIndex);
        }
    }

requireNumIndex is 80

requireNumIndex is 81

requireNumIndex is 82

requireNumIndex is 83

……

requireNumIndex is 297

requireNumIndex is 298

requireNumIndex is 299

---

requireNumIndex is 580

猜你喜欢

转载自blog.csdn.net/jeffasd/article/details/81258586
今日推荐