将数字拆分为相同大小的组

6 c# math

使用此示例:

var amount = x;
var maxPerGroup = y;
var amountGroups = Ceiling(amount/maxPerGroup);
Run Code Online (Sandbox Code Playgroud)

有人可以帮助我如何将Amount分配到AmountGroups中,每组maxAmount的最大数量是多少?这些组的大小几乎相同.

例如:金额= 45; maxPerGroup = 15; amountGroups = 3;

结果:15 15 15

我使用C#作为语言.

提前致谢!

Liq*_*uid 1

注意 不是精确的 c# 只是为了给你这个想法。

我认为您正在寻找一种在语法上将数字划分为不同组的方法。不知道组有多大以及组的随机数量。

假设 x = 30 y = 15。30/15 = 3 组 15,假设 x= 43 那么数字应该是这样的?14 14 15

groups (since you already have this calculated correctly)(should be a double)
//   maxPerGroup = y
membersPerGroup = floor(amount/groups)



List a = new List
//Is the leftover value of the modulus
leftover = amount%groups;
//Loops for each group
for(int i=0;i<groups;i++){


//If there is a left over value
if(leftover>0){
  a.Add(membersPerGroup +1);
  leftover--;
}else{
  a.Add(membersPerGroup );
}

}
Run Code Online (Sandbox Code Playgroud)

我可以用正确的 c# 编写,但似乎你找到了正确的代码