【问题标题】:array numbers which sum is dividing on 4总和除以 4 的数组数字
【发布时间】:2015-12-30 08:49:27
【问题描述】:

我想在标签上打印从 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) + " | ";
}

【问题讨论】:

标签: c# c++ for-loop


【解决方案1】:

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

【讨论】:

    【解决方案2】:

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

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

    【讨论】:

      猜你喜欢
      • 2013-11-01
      • 1970-01-01
      • 2012-07-31
      • 1970-01-01
      • 2019-11-14
      • 2015-09-30
      • 1970-01-01
      • 1970-01-01
      • 2021-03-25
      相关资源
      最近更新 更多