C#上下左右

Mit*_*tch 1 c#

我正在计算我的数据库的结果.如果它低于50,我想将它们除以2.示例:

if(CountResults < 50)
{
    //CountResults = 39
    int divided = CountResults / 2; //Results in 19
}
Run Code Online (Sandbox Code Playgroud)

我想要的是:

if(CountResults < 50)
{
    //CountResults = 39
    int divided = CountResults / 2; //Results in 19,5
    Math.Round(divided, 0);
}
Run Code Online (Sandbox Code Playgroud)

我希望能够将它向上和向下舍入.

所以我得到结果19.5两次.一旦我希望它是19,一次是20.

我如何实现这一目标?

Ser*_*kiy 5

目前尚不清楚你将如何使用你的代码两次,但如果你想将整数分成两个整数部分,只需从总数中减去第一个结果:

if(CountResults < 50)
{
    //CountResults = 39
    int divided1 = CountResults / 2;        // 19
    int divided2 = CountResults - divided1; // 20
}
Run Code Online (Sandbox Code Playgroud)

第一个结果将使用整数除法,它将为您提供舍入为零的结果(在您的情况下为19).进一步阅读:C#规范7.7.2分部操作员

第二个结果将给你休息,它将等于第一个结果(如果没有舍入),或者它将等于从零舍入的除法(在你的情况下是20).

  • @Mitch只记得C#中的整数除法(我为你添加了链接) (2认同)