![]() |
|
|
Регистрация Восстановить пароль |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
![]() |
|
Опции темы | Поиск в этой теме |
![]() |
#1 |
Пользователь Подтвердите свой е-майл
Регистрация: 23.05.2007
Сообщений: 19
|
![]()
Всем привет
![]() |
![]() |
![]() |
![]() |
#2 |
Форумчанин
Регистрация: 15.02.2007
Сообщений: 183
|
![]()
ну в общем заносим значения в grid. Затем создаем массив с количеством элементов равным числу ячеек в таблице и переносим все туда. На дальше все просто. Чуть позже текст проги выложу(примерный)
вот код проги unit Unit1; interface uses Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, Dialogs, StdCtrls, Grids; type TForm1 = class(TForm) StringGrid1: TStringGrid; Button1: TButton; Edit1: TEdit; Button2: TButton; Edit2: TEdit; Edit3: TEdit; procedure Button1Click(Sender: TObject); procedure FormCreate(Sender: TObject); procedure Button2Click(Sender: TObject); private { Private declarations } public { Public declarations } end; var Form1: TForm1; a:array[1..5000] of integer; raz,i,j,ind1,ind2,kol,row,col,el1,e l2:integer; implementation {$R *.dfm} procedure TForm1.Button1Click(Sender: TObject); {в этой процедуре заполняем грид значениями. В гриде я убирал фиксидкол и фиксидроу} begin i:=i+1; StringGrid1.Cells[i,row]:=Edit1.Text; if i=StringGrid1.ColCount-1 then begin row:=row+1; i:=-1; end; a[j]:=strtoint(Edit1.Text); j:=j+1; end; procedure TForm1.FormCreate(Sender: TObject); begin i:=-1; j:=1; raz:=StringGrid1.RowCount*StringGri d1.ColCount; {для того чтобы грид и массив заполнялись правильно. ну и размерность массива соответственно вычисляем} end; procedure TForm1.Button2Click(Sender: TObject); {ну собственно индексы получаем} begin for i:=1 to raz do begin el1:=a[i]; ind1:=i; for j:=1+i to raz do if el1=a[j] then begin el2:=a[j]; ind2:=j; Edit2.text:=inttostr(ind1); Edit3.Text:=IntToStr(ind2); end; end; end; end. там нехватает лейблов для едитов, но находит все верно.
Знать все невозможно, в силу того, что жить бы стало неинтересно.
Последний раз редактировалось А. Долматов; 30.05.2007 в 14:48. |
![]() |
![]() |
![]() |
#3 |
Delphi/C++/C#
Участник клуба
Регистрация: 29.10.2006
Сообщений: 1,972
|
![]()
А в чём сложности? Grid, или что-то другое - нет разницы.
Берём 1 элемент, сверяем со всеми последующими, если такого же не нашли, берём второй, сверяем со всеми ПОСЛЕДУЮЩИМИ (это важно) и т.д |
![]() |
![]() |
![]() |
#4 |
Пользователь Подтвердите свой е-майл
Регистрация: 23.05.2007
Сообщений: 19
|
![]()
хех,
![]() ![]() |
![]() |
![]() |
![]() |
#5 |
Пользователь Подтвердите свой е-майл
Регистрация: 23.05.2007
Сообщений: 19
|
![]()
А. Долматов, огромное спасибо, заработало, конечно пришлось все ето переделывать под свою прогу, но смысл понятен, у меня тока не получалось, реализовать цикл, работал неправильно(теперь все тип-топ)
![]() ![]() ![]() |
![]() |
![]() |
![]() |
Опции темы | Поиск в этой теме |
![]() |
||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
нахождение в массиве суммы значений, удовлетворяющих условию | azov | Microsoft Office Excel | 27 | 26.06.2008 21:24 |
Нахождение минимума и максимума в трехмерном массиве | 1234 | Помощь студентам | 11 | 26.05.2008 16:23 |
Нахождение суммы в массиве. PHP | Айвенго | Помощь студентам | 3 | 28.01.2008 19:46 |
нахождение суммы четных чисел в массиве | Ci_novice | Общие вопросы C/C++ | 1 | 23.12.2007 12:11 |
Выделение одной строки из двух одинаковых | REMove | Microsoft Office Excel | 2 | 15.12.2007 16:03 |