function F(X: Integer): Double; begin case X of 0..24: Result := 0; 25..54: Result := 0.5; 55..59: Result := 1; else raise Exception.Create('数据超出范围'); end; end;
如果區間相等, 就可以用除法解決. 區間不相等,只能用if或case了.
如果X不是整数可以用下面的。 function G(X: Double): Double; begin if X<0 then raise Exception.Create('数据超出范围') else if X<25 then Result:=0 else if X<55 then Result:=0.5 else if X<=59 then Result:=1 else raise Exception.Create('数据超出范围'); end;
function F(X: Integer): Double; begin if (x < 25) result := 0; else if (x>=25) and (x<55) result := 0.5; else if (x>=55) and (x<59) Result := 1; else raise Exception.Create('数据超出范围'); end; 这是if 的demo
function F(X: Integer): Double; begin Result:=int(x/5)/10; end;
也可能是 function F(X: Integer): Double; begin Result:=(int(x/5))/10; end;
begin
case X of
0..24: Result := 0;
25..54: Result := 0.5;
55..59: Result := 1;
else
raise Exception.Create('数据超出范围');
end;
end;
區間不相等,只能用if或case了.
function G(X: Double): Double;
begin
if X<0 then
raise Exception.Create('数据超出范围')
else if X<25 then
Result:=0
else if X<55 then
Result:=0.5
else if X<=59 then
Result:=1
else
raise Exception.Create('数据超出范围');
end;
begin
if (x < 25)
result := 0;
else if (x>=25) and (x<55)
result := 0.5;
else if (x>=55) and (x<59)
Result := 1;
else
raise Exception.Create('数据超出范围');
end;
这是if 的demo
begin
Result:=int(x/5)/10;
end;
function F(X: Integer): Double;
begin
Result:=(int(x/5))/10;
end;