Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Delphi программирование > Общие вопросы Delphi
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 27.02.2011, 17:18   #1
igabenu
Пользователь
 
Регистрация: 05.11.2010
Сообщений: 27
По умолчанию Поиск минимального элемента в stringgrid

Задача следующая:
Имею стринггрид 4x4 заполненый рандомными числами. Как найти в каждой строке минимальный элемент, а потом среди них -максимальный?

Заранее спасибо за помощь
igabenu вне форума Ответить с цитированием
Старый 27.02.2011, 18:33   #2
asmodey1
Подтвердите свой е-майл
 
Регистрация: 19.12.2010
Сообщений: 808
По умолчанию

Код:
max:=0;
min:=1000000;
for i:=1 to StringGrid1.RowCount-1 do
for j:=1 to StringGrid1.ColCount-1 do
if StrToInt(StringGrid1.Cells[j,i])>max then
..........
if StrToInt(StringGrid1.Cells[j,i])<min then
...
end;
end;
Идея ясна ?
asmodey1 вне форума Ответить с цитированием
Старый 27.02.2011, 18:50   #3
Serge_Bliznykov
Старожил
 
Регистрация: 09.01.2008
Сообщений: 26,229
По умолчанию

Цитата:
Код:
max:=0;
min:=1000000;
Вот с этим не согласен.
Это некрасиво и не надёжно!
Иницилизировать лучше конкретным значением из анализируемых данных.
например, для начала можно считать, что и минимальное и максимальное значение находится в ячейке 0,0 (или 1,1 - если есть заголовки):
Код:
max:=StrToInt(StringGrid1.Cells[0,0]);
min:=StrToInt(StringGrid1.Cells[0,0]);
Цитата:
Код:
for i:=1 to StringGrid1.RowCount-1 do
for j:=1 to StringGrid1.ColCount-1 do
вообще-то, нумерация начинается с нуля.
Но брать нумерацию с 0 или с 1 зависит от расположения данных в StringGrid (есть ли фиксированные столбцы/фиксированные строки)...

Последний раз редактировалось Serge_Bliznykov; 27.02.2011 в 18:56.
Serge_Bliznykov вне форума Ответить с цитированием
Старый 27.02.2011, 19:03   #4
Stilet
Белик Виталий :)
Старожил
 
Аватар для Stilet
 
Регистрация: 23.07.2007
Сообщений: 57,097
По умолчанию

Тут все некрасиво и не.. гм..
Код:
var min,max,i,j,k:integer;
...
With StringGrid1 do begin
 for i:=0 to RowCount-1 do begin
  for j:=0 to ColCount-1 do begin
   k:=random(100);
   Cells[j,i]:=IntToStr(k);
   if (k<min)or(j=0) then min:=k;
  end; 
  if (min>max)or(i=0) then max:=min;
 end;
end;
Короче двух зайцев одной пулей.
I'm learning to live...
Stilet вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Поиск минимального элемента в перевернутом массиве Kovax Паскаль, Turbo Pascal, PascalABC.NET 11 27.02.2011 14:38
Паскаль, массивы, поиск минимального элемента isJoga Помощь студентам 4 09.06.2010 17:35
Поиск минимального элемента в матрице F1eCSo Помощь студентам 0 04.02.2010 17:20
Поиск минимального и максимального элемента в двухмерном массиве. Dem6 Общие вопросы Delphi 10 30.11.2009 20:22
Поиск минимального (максимального) элемента массива Radamant Помощь студентам 10 24.12.2008 17:44