Форум: "Потрепаться";
Текущий архив: 2003.07.17;
Скачать: [xml.tar.bz2];
ВнизМассив Найти похожие ветки
← →
shark (2003-07-01 18:02) [0]Как найти в массиве самое большое число и самое маленькое число ?
← →
Palladin (2003-07-01 18:06) [1]Задай себе вопрос, как узнать какое число больше A или B?
← →
HolyGlory (2003-07-01 19:47) [2]
a:array [0..LEN-1] of Integer;
max,min:Integer;
...
mov ebx, offset a
mov esi, [ebx] //min - Храним в регистрах, чтобы избежать промахов в кэше
mov edi, esi //max
mov ecx, LEN-2 //LEN - константа
@@:add ebx,4
mov eax, [ebx]
cmp esi, eax
jae @@NotMin
mov esi, eax
loop @@ //убuраем cpaвнение
@@NotMin:
cmp edi, eax
jbe @@NotMax
mov edi, eax
@@NotMax:
loop @@
mov min,esi
mov max,edi
Набирал второпях - мб допустил пару тупых ошибок. Можно еще под 4,1,1 оптимизить... во всяком слуаче лишних промахов в кэше не будет (исли писать на Delphi - то будут, т.к. сравнение и запоминие min и max могут проходить в другом банке)
← →
SergP (2003-07-01 19:50) [3]....
b:=a[1];
for i=2 to n do if b<a[i] then b:=a[i];
....
Имхо наибольшее число должно так вычисляться.
Наименьшее - аналогично,
а вообще лучше спроси у тех кто ходит в школу..:)
← →
Forester (2003-07-02 08:20) [4]Uses Math
....
var
V:Double;
...
v:=MaxValue(ArrOfDouble);
...
Страницы: 1 вся ветка
Форум: "Потрепаться";
Текущий архив: 2003.07.17;
Скачать: [xml.tar.bz2];
Память: 0.44 MB
Время: 0.007 c