关于delphi开发工具如何写代码

fstao 2015-10-31 11:22:01
有一段sqlserver sql语句:
declare @packstandard decimal(18,4),@quantity decimal(18,4)

set @packstandard=20.59
set @quantity=91.4523

select (sign(isnull(@quantity,0))*floor(abs(isnull(@quantity,0))/@packstandard)) as fullquantity,
(isnull(@quantity,0)-sign(isnull(@quantity,0))*(floor(abs(isnull(@quantity,0))/@packstandard)*@packstandard)) as unfullquantity

这样,fullquantity=4,unfullquantity=9.0923,这样4*20.59+9.0923=91.4523,刚好等于@quantity=91.4523

这一段代码,是根据总数量,一箱是20.59,换算成多少箱,剩下多少数量,上面算出4箱,剩下9.0923。现在问题,如果用delphi工具来写这个代码,如何来写,谢谢!
...全文
136 1 打赏 收藏 转发到动态 举报
写回复
用AI写文章
1 条回复
切换为时间正序
请发表友善的回复…
发表回复
道玄希言 2015-10-31
  • 打赏
  • 举报
回复

function test(packstandard, quantity: double; var fullquantity,
  unfullquantity: double): boolean;
begin
  if quantity = null then quantity := 0;
  if packstandard = null then packstandard := 0;
  fullquantity := sign(quantity)*floor(abs(quantity) / packstandard);
  unfullquantity := quantity - fullquantity * packstandard ;
  fullquantity := Round(fullquantity * 10000) / 10000;
  unfullquantity := Round(unfullquantity * 10000) / 10000;
end;
procedure TForm1.Button1Click(Sender: TObject); var packstandard, quantity: double; fullquantity, unfullquantity : double ; begin packstandard := 20.59 ; quantity := 91.4523 ; test(packstandard, quantity, fullquantity, unfullquantity); memo1.Lines.Add('packstandard: ' + FloatToStr(packstandard)) ; memo1.Lines.Add('quantity: ' + FloatToStr(quantity)) ; memo1.Lines.Add('fullquantity: ' + FloatToStr(fullquantity)) ; memo1.Lines.Add('unfullquantity: ' + FloatToStr(unfullquantity)) ; end;

16,748

社区成员

发帖
与我相关
我的任务
社区描述
Delphi 语言基础/算法/系统设计
社区管理员
  • 语言基础/算法/系统设计社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧