Если у меня есть ColA, ColB, Colc, ColD и есть 1000 строк в каждом столбце в TAdvStringGrid. Я бы хотел проверить количество двойных измерений значений в 1000 строках в colA, ColB, Colc, ColD из TAdvStringGrid.Как сравнить 4 значения столбца TAdvStringGrid друг с другом и пометить их?
Я делаю некоторые вещи, как при первом считывании значений ColA, ColB, ColC, ColD в многомерном массиве и циклизации каждого элемента в многомерном массиве и сравнении с каждым элементом строки TAdvStringGrid, и когда он найден с использованием функции OnDrawcell, я помечен и отображение строки с цветом. Однако для этого требуется много времени. Есть ли более короткий способ сделать это. По мере того, как строки продолжают расти. Спасибо за ответ заранее.
Каждая строка представляет собой одно измерение, а одно измерение состоит из 4 значений в ColA, B, C, D.
List : array of array of double;
SetLength (List,AdvStringGrid.RowCount,4);
for i := 0 to AdvStringGrid.RowCount -1 do begin
j:=0;
List[i,j] := strtofloat(AdvStringGrid.Cells[4,i+1]);
List[i,j+1] := strtofloat(AdvStringGrid.Cells[5,i+1]);
List[i,j+2] := strtofloat(AdvStringGrid.Cells[8,i+1]);
List[i,j+3] := strtofloat(AdvStringGrid.Cells[9,i+1]);
end;{for i}
Как сравнить каждый элемент с соседом и пометить дубликат?
да вы правильно, Каждая строка является измерение и одно измерение состоит из 4 значений в ColA, B, C, D. Список: массив из массива double; SetLength (List, AdvStringGrid.RowCount, 4); для i: = 0 в AdvStringGrid.RowCount -1 do начало j: = 0; Список [i, j]: = strtofloat (AdvStringGrid.Cells [4, i + 1]); Список [i, j + 1]: = strtofloat (AdvStringGrid.Cells [5, i + 1]); Список [i, j + 2]: = strtofloat (AdvStringGrid.Cells [8, i + 1]); Список [i, j + 3]: = strtofloat (AdvStringGrid.Cells [9, i + 1]); конец; {for i} Как сравнить каждый элемент с соседом и пометить дубликат? – mdel