2013-04-09 87 views
0

我有X个项目,我想统计我需要多少页来页面这些项目,如果我可以把每页5项。寻呼机的页数

这是我有:

int TotalPages = (int)(Math.Ceiling(TheItemCount/5)); 

该生产线是红色下划线与在说有Math.Ceiling(双)和Math.Ceiling 之间的

ambigious调用错误(十进制)

我知道这应该是简单的,但我没有得到我想要的结果。我需要更改我的代码才能使其工作?

谢谢。

+1

“TheItemCount”的类型是什么? – 2013-04-09 14:51:41

+0

@NicolasRepiquet:看起来像是物品的数量? – frenchie 2013-04-09 14:58:38

回答

2

的问题是编译器无法找出哪些超载你想要的,所以才迫使它使用它们的一个:

int TotalPages = (int)(Math.Ceiling((double)TheItemCount/5.0)); 

另一种方法是这样的:

int TotalPages = (int)(Math.Ceiling(Convert.ToDouble(TheItemCount/5))); 
+0

我相信如果你使用文字'5.0' – 2013-04-09 14:53:03

+0

好的话,你甚至不需要使TheItemCount加倍,谢谢你的回答! – frenchie 2013-04-09 14:55:30

+0

请注意,第二个答案可能无法按预期工作。如果'TheItemCount'是一个int,将它除以5将导致一个“整数除法”,并将其转换为double然后舍入它没有多大意义:)例如2/5 = 0,向上舍入= 0。 – 2013-04-09 15:05:50