比较数值大小的问题(50)

  • 主题发起人 主题发起人 m8858
  • 开始时间 开始时间
M

m8858

Unregistered / Unconfirmed
GUEST, unregistred user!
有一组数值 30 28 56 72 63如何求出前两位最高的数值?
 
我是新手 具体函数告诉我好吗
 
LZ的分不少呢,应该不是新手了吧?你的问题如果只是数值排序,那很简单,你在表格里排一下序就可以了。
 
如果是一组数组 用以下函数看看 先定义个类型 TIntarray = array of Integer;uses Math;//aTopNum 是要取最大值个数 Data 是int数组 返回数组function GetTopMax(aTopNum:Integer;Data:TIntarray):TIntarray;var i,j,k:Integer; tmp:array of Integer;begin SetLength(Result,aTopNum); SetLength(tmp,Length(Data)); for i:=0 to High(Data) do tmp:=Data; for j:=0 to aTopNum-1 do begin Result[j]:= MaxIntValue(tmp); for i:=0 to Length(tmp)-1 do begin if (tmp<>Result[j]) then tmp:=tmp else begin for k:=i+1 to Length(tmp)-1 do begin if tmp[k]<>Result[j] then begin tmp:=tmp[k]; Break; end; end; end; end; SetLength(tmp,Length(tmp)-1); end; //取最大两位 GetTopMax(2,a);
 
uses math;最大的max();a[1]:=0;max();
 
如何求出前两位最高的数值? 没明白什么意思。。不过 这类的问题 一般就是排序。。。或者 把 数据 拆开 然后在排序。。用 div ,mod 两个 操作 可以 分离 数字
 
没表达清楚 不过我还是自己解决了
 
后退
顶部