首页 > 解决方案 > 如何获得变量 b 比 a 少 1 的数量?

问题描述

我的数字按从 0 到 3 的顺序排列,但我需要变量 b 减少 1 并且不超过。

最初,数字是未知的,收到数字后它只存储在一个变量中,无法更改数字,但您需要为另一个变量减去另一个数字。

我需要像这样实现它。

1 A
0 B

2 A
1 B

3 A
2 B

0 A
3 B

1 A
0 B

我现在拥有的

int i = 0, a = 0, b = 0;

for (;;)
{
    this_thread::sleep_for(chrono::milliseconds(500));


    i = (i + 1) % 4;

    a = i;

    b = i;

    cout << a << " A " << endl;

    cout << b << " B " << endl;

    cout << endl;

}

标签: c++

解决方案


我喜欢mch的想法。

b=a; 在 a=i 之前;并删除 b=i; 应将 b 设置为先前的值。

int main() {
    int i = 0, a = 0, b = 0;

    for (;;)
    {
        this_thread::sleep_for(chrono::milliseconds(500));


        b = i % 4;
        i = (i + 1) % 4;

        a = i;

        cout << a << " A " << endl;

        cout << b << " B " << endl;

        cout << endl;

    }
}

推荐阅读