2014-09-06 38 views
-4

我有120个组,每个组有10个数字。获取每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

你的问题很不清楚。 *所有*组1-10,11-20,21-30等?如果你想提供一个简短但完整的示例程序,这将非常有帮助。 – 2014-09-06 07:20:42

+0

@JonSkeet无论你解释的是正确的。是的,所有的团体都是这样的1-10,11-20,21-30。 – 2014-09-06 07:22:36

+0

您是否尝试过制作它? – ikh 2014-09-06 07:23:30

回答

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(); 
} 
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; 
} 

小丑反应是正确的,主要的想法,但如果你没有该组中的数不起作用。

相关问题