以 3 的 C# 的倍数查找数字的最佳方法

本文关键字:数字 最佳 查找 方法 | 更新日期: 2023-09-27 17:56:41

我目前正在做一个需要我覆盖服务的项目。

我有 3 个列表。列表 1、列表 2 和列表 3。我希望我的所有列表都处理 3 的倍数中的任何数字。

计数会进来。如果数字为 1,请转到列表 1。如果数字为 4,请转到列表 1。如果数字为 9,请转到列表 3。

例如:

List1 will deal with 1, 4, 7, 10, 13, 16 etc
List2 will deal with 2, 5, 8, 11, 14, 17 etc
List3 will deal with 3, 6, 9, 12, 15, 18 etc

我希望这是有道理的。

与其设置表格或案例,我更喜欢简单的数学方法。

谢谢

以 3 的 C# 的倍数查找数字的最佳方法

你需要使用模块化数学。为此,您只需要以下内容:

int listNumber = input % 3;

这将为任何正整数输出 0、1 或 2。 在本例中,0 将表示列表 3。

然后如何使用它将取决于您的列表的存储方式等,但希望应该是一个简单的练习。

只需使用模函数。它返回除法操作的余数。

int number = 4;
int result = number % 3;

这里的结果将是必需的 1,依此类推。

这是以 3 的 C# 的倍数查找数字的最佳方法

        var lists = new[] {
            new List<int>(),
            new List<int>(),
            new List<int>()
        };
        var listToDoStuffWith = lists[inputNumber % 3];

类似

var listSelector = number % 3;
switch(listSelector)
{
case 0:
list3.add(number);
break;
case 1:
list1.add(number);
break;
case 2:
list2.add(number);
break;
}
0

将落入列表 3 作为 0 % 3 == 0