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

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

Вернуться   Форум программистов > IT форум > Помощь студентам
Регистрация

Восстановить пароль

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

Ответ
 
Опции темы Поиск в этой теме
Старый 26.05.2010, 14:37   #1
Тант Зин
 
Регистрация: 11.05.2010
Сообщений: 3
По умолчанию программа ассоциативного поиска вхождений слов

В delphi скажем, я имею два 2 множества, позволяю нам называть их A и B, в котором A для входа, любые слова и B - беспорядочно 10 слов (к j), и все элементы А равны некоторой подпоследовательности B. Я хотел бы написать программу, строка поиска и сдвиг.

Код:
unit test;

interface

uses
  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
  Dialogs, Grids, StdCtrls, Buttons, Menus;

type
     
    TForm1 = class(TForm)
    StringGrid1: TStringGrid;
    Label1: TLabel;
    Label2: TLabel;
    MainMenu1: TMainMenu;
    File1: TMenuItem;
    Edit1: TMenuItem;
    Search1: TMenuItem;
    Help1: TMenuItem;
    Open1: TMenuItem;
    Save1: TMenuItem;
    Saveas1: TMenuItem;
    Exit1: TMenuItem;
    Undo1: TMenuItem;
    Cut1: TMenuItem;
    Copy1: TMenuItem;
    Delete1: TMenuItem;
    Find1: TMenuItem;
    FindinFile1: TMenuItem;
    BitBtn1: TBitBtn;
    BitBtn2: TBitBtn;
    About1: TMenuItem;
    StringGrid2: TStringGrid;
    StringGrid3: TStringGrid;
    StringGrid4: TStringGrid;
    StringGrid5: TStringGrid;
    Label3: TLabel;
    Label4: TLabel;
    procedure FormCreate(Sender: TObject);
    procedure BitBtn1Click(Sender: TObject);
  private


  public
    { Public declarations }
  end;

var
  Form1: TForm1;

implementation


{$R *.dfm}



procedure TForm1.FormCreate(Sender: TObject);
var
       i, j: integer;
       Word : Char;

begin
   Randomize;
      for i:=0 to 7 do
      begin
        for j :=0 to 15 do
        begin
          Word := (Char(random(10)));
          Inc(Word,97);
          StringGrid2.Cells[i,j] := StringGrid2.Cells[i,j]+word;
        end;
      end;
end;



procedure TForm1.BitBtn1Click(Sender: TObject);
var           i,j,k,l,m,NO,YES:integer;

begin
          NO:=0;
        YES:=1;
        m:=0;

           for i:=0 to 15 do

        begin
            for j:=0 to 15 do
            if Stringgrid2.Cells[0,i]=stringgrid1.Cells[j,0] then
            Stringgrid3.Cells[j,i]:=inttostr(YES)

            else
              Stringgrid3.Cells[j,i]:=inttostr(NO);

        end;

             for l:=0 to 15 do
             begin
             for k:=0 to 15 do
             if  Stringgrid2.Cells[k,l]=inttostr(YES) then
                 begin
                        while m<=15 do
                        begin
                 if Stringgrid3.Cells[k+m,l+m] =inttostr(YES) then

                        m:=m+1;
                        if m=15 then
                        Stringgrid3.Cells[k,0]:=inttostr(YES) ;
                        end ;
                  end
                    else
                      Stringgrid3.Cells[k,0]:=inttostr(NO) ;
                end;
                end;
        

end.
Тант Зин вне форума Ответить с цитированием
Ответ


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



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
программа поиска Delphi Тант Зин Помощь студентам 0 15.05.2010 14:55
программа ассоциативного поиска вхождений слов Тант Зин Помощь студентам 0 11.05.2010 12:18
Макрос для поиска и замены слов на слова с верхним подчеркиванием salvafion Microsoft Office Word 4 07.09.2009 19:14
помогите с организацией поиска слов в richedit BuT@JL Общие вопросы Delphi 1 30.04.2009 15:23
программа для поиска изменений vaniak Помощь студентам 1 15.06.2008 19:03