![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
Как найти минимальный элемент в двумерном массиве? [D7, XP]
Andrewmx © (2005-11-11 15:30:00)Как найти минимальный элемент в двумерном массиве? Подскажите пожалуйста.
SergP. (2005-11-12 09:57:00) [1]
> SergP © (12.11.05 09:52) [14]
Либо проще:
...
type
MySuperPuperType=array[0..9999] of integer; // кол-во элементов в этом
//описании массива должно соврпадать с кол-вом элементов в твоем массиве
...
...
var
a:integer;
begin
a:=minintvalue(MySyperPuperType(res));
...
SergP (2005-11-12 09:52:00) [2]
> Andrewmx (11.11.05 15:55) [6]
> Minintvalue в одномерном, мне в двумерном нужно.
>
> вот мой массив
> res:array[0..99,00..99] of integer;
если не знаешь как самому написать поиск числа, а хочешь воспользоваться стандартными функциями, то заставь Minintvalue думать что твой массив одномерный ...
типа так:
...
type
MySuperPuperType=array[0..9999] of integer; // кол-во элементов в этом
//описании массива должно соврпадать с кол-вом элементов в твоем массиве
...
...
var
a:integer;
z:^MySuperPuperType;
begin
z:=@res; // res - это твой двухмерный массив [0..99,0..99]
a:=minintvalue(z^);
...
если я нигде не ошибся то по идее должно работать...
Andrewmx (2005-11-12 09:12:00) [3]А если кто хорошо работает с матрицами то постучитесь мне в icq 288608091 есть разговор!
Andrewmx (2005-11-12 04:42:00) [4]Спасибо большое!
serko (2005-11-11 20:19:00) [5]Делай так:
<\code>
Min:=res[1,1];
st:=1; sb:=1;
For i:=1 to n do
for j:=1 to m do
if min>res[i,j] then
begin
min:=res:=[i,j];
st:=i;
sb:=j;
end;
min - это минимальный элемент массива Res
St - строка в которой находится min
sb- столбец ----||----
Fl@sh (2005-11-11 19:51:00) [6]
> Tonich © (11.11.05 17:37) [9]
Всегда так делал в подобных случаях
Жаль, не знал раньше про
> Minintvalue в одномерном
Tonich (2005-11-11 17:37:00) [7]в самом простом случаи методом перебора...
Сделай двойной цикл и пробегай все элементы массива сравнивая их.
на первом шаге просто присвой какой-то переменной первое значения твоего массива, а затем если оно окажется больше текущего значения массива, просто переприсвоишь его и все
Andrewmx (2005-11-11 17:22:00) [8]Ну да я незнаю как сделать :(
Digitman (2005-11-11 16:00:00) [9]и какие трудности ?
или "дай код" ?)
Andrewmx (2005-11-11 15:55:00) [10]Minintvalue в одномерном, мне в двумерном нужно.
вот мой массив
res:array[0..99,00..99] of integer;
wal (2005-11-11 15:53:00) [11]А как в одномерном найти в курсе?
Digitman (2005-11-11 15:53:00) [12]и тип массива ты тоже не сподобился указать ...
Andrewmx (2005-11-11 15:35:00) [13]Извините integer
Andrewmx (2005-11-11 15:35:00) [14]все >0
Digitman (2005-11-11 15:31:00) [15]ты хоть бы сподобился что ли указать, какого типа элементы массива ...