C# 我如何将这个简单的按偶数计数程序转换为检测奇数并按赔率计数?

C# 我如何将这个简单的按偶数计数程序转换为检测奇数并按赔率计数?,c#,loops,for-loop,methods,C#,Loops,For Loop,Methods,是的,我知道我已经用与主方法不同的方法声明了代码,尽管程序如此简单,但没有必要只是为了简单的实践而声明代码。我只是想知道,正如您在代码中看到的,它检测用户的输入,然后从该输入使用for循环,并平均计数。然而,如果我把一个奇数加进去,我希望它以赔率计算。我如何才能做到这一点?检查I%2!=写入%2。要打印奇数或偶数,如果i%2==x,则该行需要x=1打印偶数,x=0打印奇数。如果你取写的%2,如果它是偶数,你将得到0,如果它是奇数,你将得到1。由于要在输入为偶数时打印偶数,而在输入为奇数时打印奇数

是的,我知道我已经用与主方法不同的方法声明了代码,尽管程序如此简单,但没有必要只是为了简单的实践而声明代码。我只是想知道,正如您在代码中看到的,它检测用户的输入,然后从该输入使用for循环,并平均计数。然而,如果我把一个奇数加进去,我希望它以赔率计算。我如何才能做到这一点?

检查I%2!=写入%2。

要打印奇数或偶数,如果i%2==x,则该行需要x=1打印偶数,x=0打印奇数。如果你取写的%2,如果它是偶数,你将得到0,如果它是奇数,你将得到1。由于要在输入为偶数时打印偶数,而在输入为奇数时打印奇数,因此在变量modNumber中存储一个数字,然后在i%2==x时使用该数字代替x。行int modNumber=写入%2==1?0:1在英语中,如果写入%2==1,则表示int modNumber等于0,否则等于1

     public static void Main()
        {
            EvenNumbers();
        }


        public  static void EvenNumbers()
        {
            int written = int.Parse(Console.ReadLine());
            for (int i = 0; i <= written; i++)
            {
                if (i % 2 == 1)
                    continue;
                     Console.WriteLine(i);
            }
        }
    }
}

你只要数到两就行了。这将适用于偶数或奇数。对于奇数,需要从1开始,对于偶数,需要从0开始。你可以很容易地找出你需要做一个单一的mod操作。x%2对于奇数为1,对于偶数为0

    public  static void EvenNumbers()
    {
        int written = int.Parse(Console.ReadLine());
        int modNumber = written % 2 == 1 ? 0 : 1;
        for (int i = 0; i <= written; i++)
        {
            if (i % 2 == modNumber)
                continue;

            Console.WriteLine(i);
        }
    }

是你写的吗?我%2==1的意思是,如果这个数除以2剩下一个余数,那么跳过它。只需将1更改为0。%与数学中的模运算符相同。正确计数的几率比正确计数的几率低:你能给我解释一下modnumber的作用和0:1的用途吗?
public static void Count()
{
    int written = int.Parse(Console.ReadLine());
    for (int i = written % 2; i <= written; i += 2)
    {
        Console.WriteLine(i);
    }
}