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

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

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

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

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

Ответ
 
Опции темы Поиск в этой теме
Старый 09.06.2010, 02:29   #1
west.by
Подтвердите свой е-майл
 
Регистрация: 16.05.2010
Сообщений: 54
По умолчанию подкорректировать прогу на делфи-сортировка в стрингриде

Код:
unit Unit1;

interface

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

type
  TForm1 = class(TForm)
    StringGrid1: TStringGrid;
    StringGrid2: TStringGrid;
    Edit1: TEdit;
    Button1: TButton;
    Button2: TButton;
    BitBtn1: TBitBtn;
    procedure FormCreate(Sender: TObject);
    procedure Button1Click(Sender: TObject);
    procedure Button2Click(Sender: TObject);
  
  private
    { Private declarations }
  public
    { Public declarations }
  end;

var
  Form1: TForm1;
  n,k,i:Integer;

implementation

{$R *.dfm}

procedure TForm1.FormCreate(Sender: TObject);
begin
n:=3;
Edit1.Text:=IntToStr(n);
StringGrid1.ColCount:=n;
StringGrid2.ColCount:=n;

end;

procedure TForm1.Button1Click(Sender: TObject);
begin
n:=StrToInt(Edit1.Text);
StringGrid1.ColCount:=n;
StringGrid2.ColCount:=n;

end;

procedure TForm1.Button2Click(Sender: TObject);
var i,j:integer;
s:string; //преобразование массива

begin
    with StringGrid1 do begin
   for i:=0 to RowCount-1 do begin
    for j:=0 to Rows[i].Count-1 do begin
     tag:=StrToIntDef(rows[i][j],0);
     if (tag mod 2) =0 then begin
      StringGrid2.Rows[i].Add(rows[i][j]);
      rows[i][j]:='';
     end else
      s:=s+rows[i][j]+#13#10;
    end;
    Rows[i].Text:=s;
    s:='';
end;
end;
end;


end.

Вложения
Тип файла: rar имбич.rar (188.9 Кб, 11 просмотров)
west.by вне форума Ответить с цитированием
Старый 09.06.2010, 05:24   #2
TwiX
Участник клуба
 
Аватар для TwiX
 
Регистрация: 28.07.2009
Сообщений: 1,510
По умолчанию

Не в обиду конечно, но лично мне лень... Качать прогу, разбираться в чужом коде, заливать обратно. Это же для вопросов форум... Ладно бы там "Помогите написать процедуру сортировки", а тут только сказано, что не работает прога, добавлен 1 комментарий и всё...
Это моё мнение, поэтому если у вас другое, то прошу не пинать, а просто высказать его постом ниже =)
TwiX вне форума Ответить с цитированием
Старый 09.06.2010, 05:30   #3
Volt
Форумчанин
 
Аватар для Volt
 
Регистрация: 07.12.2008
Сообщений: 244
По умолчанию

ни качайте в архиве нет не одного pas файла. а из приведенного кода ни чего не понятно что надо. Хочу что бы было так а как сами догадывайтесь.
|̲̅̅●̲̅̅|̲̅̅=̲̅̅|̲̅̅●̲̅̅]
Volt вне форума Ответить с цитированием
Старый 09.06.2010, 08:11   #4
Stilet
Белик Виталий :)
Старожил
 
Аватар для Stilet
 
Регистрация: 23.07.2007
Сообщений: 57,097
По умолчанию

Хрусть: http://www.delphiworld.narod.ru/base..._int_sort.html
Еще хрусть: http://www.delphiworld.narod.ru/base/sg_sort3.html
I'm learning to live...
Stilet вне форума Ответить с цитированием
Старый 09.06.2010, 21:25   #5
west.by
Подтвердите свой е-майл
 
Регистрация: 16.05.2010
Сообщений: 54
По умолчанию

Цитата:
Сообщение от TwiX Посмотреть сообщение
поэтому если у вас другое, то прошу не пинать, а просто высказать его постом ниже =)
Принципе код я уже выложил(не получается скачать и просмотреть-не качайте-есть код с ОПИСАНИЕМ в нем)

Далее-то что нужно получить есть на картинке-я этого не могу получить своим кодом-но ищу опытного гуру который может дать доп.код лдля моей программы а не с нуля ее переколбасить...
west.by вне форума Ответить с цитированием
Старый 10.06.2010, 00:31   #6
Don Karleone
Форумчанин
 
Регистрация: 05.04.2010
Сообщений: 410
По умолчанию

можно вот так:

Код:
procedure TForm1.Button2Click(Sender: TObject);
var
  i,j: integer;
  k: integer;
  a,b: integer;
  flag: boolean;
begin
  StringGrid3.ColCount:=StringGrid1.ColCount;
  k:=0;
  for i:=0 to StringGrid1.ColCount-1 do
    begin
      flag:=false;
      for j:=0 to StringGrid2.ColCount-1 do
        begin
          try
            a:=StrToInt(StringGrid1.Cells[i,0]);
            b:=StrToInt(StringGrid2.Cells[j,0]);
            if a = b then flag:=true;
          except
          end;
        end;
      if not flag then
                    begin
                      StringGrid3.Cells[k,0]:=StringGrid1.Cells[i,0];
                      Inc(k);
                    end;
    end;
end;
ну а в StringGrid4 нужно просто скопировать StringGrid2.

Только я не пойму причем тут сортировка? Если судить по скриншоту в StringGrid3 должны быть занесены те элементы из StringGrid1, которые отсутствуют в StringGrid2.
ICQ: 593-013-807

Последний раз редактировалось Don Karleone; 10.06.2010 в 02:05.
Don Karleone вне форума Ответить с цитированием
Ответ


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

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Подкорректировать программу wrmarw Паскаль, Turbo Pascal, PascalABC.NET 5 04.05.2010 14:06
Доделать прогу на Делфи hohol90 Помощь студентам 2 12.03.2010 15:15
сохранения данных в стрингриде после редактирования его (добавление) ansysadmin БД в Delphi 0 23.11.2009 17:37
накатать прогу на делфи бедный_студент Помощь студентам 4 09.02.2009 16:35
Сортировка чисел на ассемблере ( плачу 8$ за прогу ) Алексей-76 Помощь студентам 2 13.02.2008 19:54