数组,其总和除以4

时间:2015-12-30 08:49:27

标签: c# c++ for-loop

我想在标签上打印1到100的数字

数字的总和必须除以4。

例:
打印35.因为3 + 5 = 8 8分为4。

这是代码
来自循环打印数字。但是如何选择这些数字呢? 打印从1到100的数字;

for (int i = 1; i < 100; i++)
{
     //select numbers wich sum is dividing on 4
     label3.Text += Convert.ToString(i) + " | ";
}

2 个答案:

答案 0 :(得分:3)

Greg Hewgill answer's被盗,您可以使用他的算法并使用remainder operator (%)之类的;

int sum, temp;
for (int i = 1; i < 100; i++)
{
     sum = 0;
     temp = i;
     while (temp != 0)
     {
         sum += temp % 10;
         temp /= 10;
     }

     if (sum % 4 == 0)
     {
         Console.WriteLine(i);
     }
}

结果将是;

4
8
13
17
22
26
31
35
39
40
44
48
53
57
62
66
71
75
79
80
84
88
93
97

这里有 demonstration

答案 1 :(得分:1)

您应该使用嵌套循环,并使用%运算符(%表示除法的其余部分):

for (int i = 1; i < 100; i++)
{
     for (int j = i; j < 100; j++)
     {
           //select numbers wich sum is dividing on 4
           if( (i+j)%4 == 0)
           {
                 label3.Text += Convert.ToString(i) + Convert.ToString(j) " | ";
           }
     }
}