又是一个关于函数取值的问题 ( 积分: 100 )

  • 主题发起人 主题发起人 terry_zhou82
  • 开始时间 开始时间
T

terry_zhou82

Unregistered / Unconfirmed
GUEST, unregistred user!
首先我通过函数得到2个DATETIMEPICKER间的相差的天数为N

实现以下功能:
第1天..第10天 取值为5
第11天..第20天 取值为10
第21天..第40天 取值为20
第40天以上... 取值为40

并且通过定义下面函数可以得到:
<CODE>
function cqf:integer;
var n:integer;
begin
case n of
1..10:edit1.text:=inttostr(5);
11..20:edit1.text:=inttostr(10);
21..40:edit1.text:=inttostr(20);
.
.
end;
</CODE>

但是现在问题来了。比如说从1/1到2/24,他们间相差了n天,这天包括从1到10,又从11到20,所取的值都是不同的。上面的那个函数要怎么改才可以满足此功能呢?
 
不太明白你表述的意思,
那N 落在哪个范围 就不是返回那个范围对应的值吗?
 
是啊,比如说1/1到2/1日有31天,如果要算的话,等于是1/1到1/10取值为5,1/11到1/20日取值为10,1/21在到2/1日取值为20,我就是要得到这个结果。有谁可以写这个函数?
 
从1/1到2/24 1/1到1/10取值为5,1/11到1/20日取值为10,1/21在到2/1日取值为20。
那2/1到2/10取值为?2/11到2/20日取值为?2/21在到3/1日取值为?
 
从2/1到3/1,取值就都为40了啊
 
等于说先满足小的再满足大的。这样的函数不好写?
 
后退
顶部