每10个数字之间获得第一个数字

时间:2014-09-06 07:19:29

标签: c#

我有120个小组,每个小组有10个小组。

假设24是否在循环中我想知道它在哪个组中?意味着如果24在那里,那么我想得到21因为24在21-30之间。

使用if或for循环给我逻辑。

这是我的代码:

for (int i = 0; i < 120; i++)
{
    if (i % 10 == 0)
    {
        Response.Write(i.ToString());
    }
}

2 个答案:

答案 0 :(得分:0)

那样的东西?

static int starter(int n)
{
    var x = n % 10;
    return n - x + 1;
}
static void Main(string[] args)
{
    Console.WriteLine(starter(24));
    Console.ReadLine();
}

答案 1 :(得分:0)

我不知道如何将数字分组,所以我给你一个解决方案,你必须根据自己的需要改变它。

假设数字打包在ArrayList中,然后将这些组打包在另一个ArrayList中。这样你就会得到一个带有数字的ArrayList的ArrayList。所以我的解决方案是:

private int FindNumber(int number)
{
    int count = 0;
    int gindex = -1;
    foreach(group g in groups)
    {
        if(g.contains(number))      
        gindex = count;
        count++;           
    }
    ArrayList aux = groups[gindex];
    return aux[0];
 }

阅读Jester响应后编辑。我想你想要10组中的第一个数字

private int FindNumber(int number)
{
    int ret
    foreach(group g in groups)
    {
        if(g.contains(number))      
        {
            var x = number % 10;
            ret = number - x + 1;
        }
    }

    return ret;
 }

Jester的回答是正确的主要想法,但如果你没有该组中的号码,那就不起作用。