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

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

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

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

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

Ответ
 
Опции темы Поиск в этой теме
Старый 01.02.2009, 18:29   #1
ЛесенОК
Пользователь
 
Регистрация: 31.01.2009
Сообщений: 10
Вопрос помогите удалить строку и столбец в Delphi

В данной действительной квадратной матрице порядка N найти наименьший по модулю элемент. Получить квадратную матрицу порядка N-1 путем выбрасывания из исходной матрицы строки и столбца, на пересечении которых расположен элемент с найденным значением. Объясните пожалуйста как удаляются строки и столбцы из массива?
ЛесенОК вне форума Ответить с цитированием
Старый 01.02.2009, 18:49   #2
Sazary
В тени
Старожил
 
Аватар для Sazary
 
Регистрация: 19.12.2008
Сообщений: 5,788
По умолчанию

Цитата:
Объясните пожалуйста как удаляются строки и столбцы из массива?
ЛесенОК А чем вас не устроил мой ответ в "Свободном общении"?
http://programmersforum.ru/showthread.php?t=37418
Я же объяснил, что нужно сдвигать остальные строки и столбцы вверх и влево на 1 позицию.
Вполне очевидно, чтобы что-то понять, необходимо книги читать.
Не нужно плодить бессмысленных тем. Вас Поиск избавит от многих проблем.

___________________________________ ___________________________________ _______
[=Правила форума=]_____[Поиск]_____[Литература по С++]____[Литература. Паскаль]
Sazary вне форума Ответить с цитированием
Старый 01.02.2009, 19:00   #3
ЛесенОК
Пользователь
 
Регистрация: 31.01.2009
Сообщений: 10
По умолчанию

у меня удаляется либо последние строка и столбец, либо первые, а не те которые находятся на пересечении минимального элемента
ЛесенОК вне форума Ответить с цитированием
Старый 01.02.2009, 19:17   #4
Sazary
В тени
Старожил
 
Аватар для Sazary
 
Регистрация: 19.12.2008
Сообщений: 5,788
По умолчанию

ЛесенОК Так значит уже сами что-то сделали? А почему не выложили код? Поискали бы ошибки..

В общем, вот.. На форму киньте Memo и две кнопки.
Первая генерирует матрицу и пишет в Memo1. Вторая ищет минимальный элемент и удаляет строку со столбцом.

Код:
unit lisenok1;

interface

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

type
  TForm1 = class(TForm)
    Button1: TButton;
    Memo1: TMemo;
    Button2: TButton;
    procedure Button1Click(Sender: TObject);
    procedure Button2Click(Sender: TObject);
  private
    { Private declarations }
  public
    { Public declarations }
  end;

var
  Form1: TForm1;

implementation

{$R *.dfm}

const N=5;
var
matr : array[1..N,1..N] of integer;
i,j : integer;


procedure TForm1.Button1Click(Sender: TObject);
var i,j : integer;
begin
randomize;
for i:=1 to N do
  begin
  for j:=1 to N do
    begin
    matr[i,j] := random(50)+11;
    Memo1.Text := Memo1.Text + IntToStr(matr[i,j])+ '  ';
    end;
    Memo1.Lines.Add('');
  end;
end;

procedure TForm1.Button2Click(Sender: TObject);
var i,j,mini,minj : integer;
begin
 mini := 1;
 minj := 1;
 for i:=1 to N do
   for j:=1 to N do
    if abs(matr[i,j])<abs(matr[mini,minj]) then
      begin
      mini := i;
      minj := j;
      end;
 {-----}
 for i:=mini to N-1 do
   for j:=1 to N do
    matr[i,j] := matr[i+1,j];
 for j:=minj to N-1 do
   for i:=1 to N-1 do
    matr[i,j] := matr[i,j+1];
 Memo1.Clear;
 for i:=1 to N-1 do
  begin
  for j:=1 to N-1 do
    Memo1.Text := Memo1.Text + IntToStr(matr[i,j]) + ' ';
  Memo1.Lines.Add('');  
  end;

end;

end.
Вполне очевидно, чтобы что-то понять, необходимо книги читать.
Не нужно плодить бессмысленных тем. Вас Поиск избавит от многих проблем.

___________________________________ ___________________________________ _______
[=Правила форума=]_____[Поиск]_____[Литература по С++]____[Литература. Паскаль]

Последний раз редактировалось Sazary; 01.02.2009 в 19:19.
Sazary вне форума Ответить с цитированием
Старый 01.02.2009, 19:30   #5
ЛесенОК
Пользователь
 
Регистрация: 31.01.2009
Сообщений: 10
По умолчанию

Спасибо большое!!! Все работает, вообще супер!!!
ЛесенОК вне форума Ответить с цитированием
Ответ


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



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Как удалить строку в Excel? Dux Microsoft Office Excel 5 01.02.2009 21:04
Задача на СИ в заданной матрице поменять местами первую строку и первый столбец %( defol-777 Помощь студентам 2 14.01.2009 09:59
Найти максимальный элемент матрицы и вставить правее него столбец из нулей и ниже него строку из нулей. Romer9999 Паскаль, Turbo Pascal, PascalABC.NET 3 28.11.2008 11:28
Удалить столбец двумерного массива вещественных чисел dolbi Помощь студентам 2 29.03.2008 06:30
Удалить строку листа Excel при выполнении условия Gennady Microsoft Office Excel 14 18.12.2007 13:54