需要帮助交替从1到输入数字的系列范围。

时间:2014-07-27 23:14:37

标签: c# modulus alternate

我试图在一系列数字上交替加法和减法。在该系列中,该过程在加法和减法之间交替。例如,如果您的目标数字是5,则系列会变为1 + 2 - 3 + 4 - 5或-1。

如果数字是奇数,我正在使用您添加的逻辑,如果数字是偶数,则减去。我使用模数运算符来确定数字是否是偶数。如果变量结果= 0,我的逻辑似乎不起作用。任何帮助都会非常感激。

这是我的代码:

 private void alturnating_Input()
    {
        int numberEntered = int.Parse(txtenterNumber.Text);
        int results = 1;
        int i = 0;
        int even = 0;
        for (i = 1;  i < numberEntered; i++)
            even = i % 2;
            if (even != 0)
              results = results + i;
            else
              results = results - i;
        txtAlternating.Text= results.ToString();  


    }

我正在使用Visual Studio Pro C#2012。

谢谢。非常感谢你的帮助。

2 个答案:

答案 0 :(得分:1)

如果for循环体中有多行,则必须使用花括号

for (i = 1;  i < numberEntered; i++)
{
     even = i % 2;
     if (even != 0)
        results = results + i;
     else
       results = results - i;
}

答案 1 :(得分:0)

你的缩进是误导。你的for循环中只有一个语句。正确缩进,您的代码如下所示:

for (i = 1;  i < numberEntered; i++)
    even = i % 2;
if (even != 0)
    results = results + i;
else
    results = results - i;

你可能意味着这样:

for (i = 1;  i < numberEntered; i++) 
{
    even = i % 2;
    if (even != 0)
        results = results + i;
    else
        results = results - i;
}