2012-11-14 27 views
4

我有三个整型变量如何总是得到整数如果我们将在C#两个整数

  1. Totallistcount
  2. totalpagescount
  3. perpagecount

假设在初始水平,我有这

Totallistcount = 14; 
perpagecount = 9; 

现在我有一个公式来发现可能的总页数

totalpagescount = Totallistcount/perpagecount ; 

但在这个situtation我totalpagescount得到了1但我需要在totalpagescount2,因为第一页和项目的其余9项将显示最后一页,我怎样才能做到这一点

感谢,

回答

14
totalpagescount = (Totallistcount + perpagecount - 1)/perpagecount ; 
+0

嘿......我想添加页数,意识到它会打破总计数已经是倍数,并去“meh”而不是试图找出正确的。 – Rawling

+0

+1这是一个很棒的想法,我从来没有这样想过......我很好奇,但是......这个解决方案和使用Ceiling'解决方案之间的性能差异是什么。 – Vyktor

3

如果你想圆了,你需要执行除法的浮点数,然后调用Math.Ceiling获得次高的整数。

double quotient = Totallistcount/(double)perpagecount; 
double ceiling = Math.Ceiling(quotient); 
int totalpagescount = (int)ceiling; 
3

这是怎么整数除法应该工作,你需要将其转换为double第一个能够拿到号码,然后使用Ceiling为“圆起来”:

(int)Math.Ceiling((double)Totallistcount/perpagecount); 
1

其他解决方案:

int pageCount =(records-1)/ recordsPerPage + 1;

int pageCount =(14-1)/ 9 + 1; => pagecount = 2

相关问题