假设有N个人,前面的N-1个人分配(10000 div n-1),最后一个分配10000-(n-1)*(10000 div n-1)
11就是总人数procedure TForm1.Button4Click(Sender: TObject); var m,n:Integer; begin m:=10000 div 11; n:=10000 div 11+10000 mod 11; self.Label2.Caption:=FloatToStr(m/100); self.Label3.Caption:=FloatToStr(n/100); end;
label2的内容就是前10个人的分配数,label3的内容就是最后一个人的分配数
function FormatFloat(const Format: string; Value: Extended): string; FormatFloat('0.00', 2.122)
var
m,n:Integer;
begin
m:=10000 div 11;
n:=10000 div 11+10000 mod 11;
self.Label2.Caption:=FloatToStr(m/100);
self.Label3.Caption:=FloatToStr(n/100);
end;
FormatFloat('0.00', 2.122)
procedure TForm1.btn1Click(Sender: TObject);
const
Total = 100;
Count = 11;
var
avg: Double;
F1, F2: Double;
S1, S2: string;
begin
//RoundTo函数在Math.pas单元中定义,需要添加Math单元的引用
avg := RoundTo(Total / Count, -2); //计算平均值, 保留两位小数 F1 := avg; //第一个值 F1 = 9.09
F2 := RoundTo(Total - avg * 10, -2); //第二个值 F2 = 9.10 (-2: 保留两位小数) S1 := Format('%.2f', [F1]); //浮点数F1转字符串
S2 := Format('%.2f', [F2]); //浮点数F2转字符串 ShowMessage(S1 + ', ' + S2);
end;