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

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

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

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

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

Ответ
 
Опции темы Поиск в этой теме
Старый 22.01.2012, 19:55   #1
Julichka1k
Пользователь
 
Регистрация: 17.12.2011
Сообщений: 30
По умолчанию обработка текстовой информации в паскале

Задана символьная матрица размером m*n . Изменить матрицу исключая те строки, для которых есть равные среди строк с меньшими номерами.

помогите с кодом
Julichka1k вне форума Ответить с цитированием
Старый 22.01.2012, 20:05   #2
VadikV
Форумчанин
 
Аватар для VadikV
 
Регистрация: 08.01.2011
Сообщений: 226
По умолчанию

Держи. Просто готовое уже есть. Все вопросы в приват за дополнительную плату. Контакты в подписи
Код:
uses Crt;

const
     MaxN = 20;
     MaxM = 80;

type
    mAr = array[1..MAXN] of String[MaxM];

procedure Print(ar : mAr; n : integer);
var
   i : integer;
begin
   for i := 1 to n do
       WriteLn(ar[i]);
end;


var
   mas : mAr;
   n : integer;
   i, j : integer;

begin
   ClrScr;
   WriteLn('Введите строки массива. Пустая строка - закончить ввод: ');
   n := 0;
   repeat
      inc(n);
      ReadLn(mas[n]);
   until Length(mas[n]) = 0;
   dec(n);

   WriteLn;
   if (n > 0) then begin
      WriteLn('Исходный массив:');
      Print(mas, n);

      { Дубли строк делаем пустыми }
      for i := 2 to n do begin
          for j := 1 to i-1 do begin
              if mas[i] = mas[j] then begin
              mas[i] := '';
              continue;
          end;
         end;
      end;

      { Убрать пустые строки }
      i := 1;
      while i < n do begin
         if Length(mas[i]) = 0 then begin
            for j := i+1 to n do
               mas[j-1] := mas[j];
            dec(n);
         end
         else inc(i);
      end;

      WriteLn;
      WriteLn('Результат:');
      Print(mas, n);
   end;

   ReadKey;
end.
icq 223-630-454
e-mail vysotskiy@list.ru
сайт http://www.big-library.net/
VadikV вне форума Ответить с цитированием
Старый 22.01.2012, 20:17   #3
whatever
a.k.a. Skull
Форумчанин
 
Регистрация: 17.11.2009
Сообщений: 963
По умолчанию

Цитата:
Сообщение от VadikV Посмотреть сообщение
Держи. Просто готовое уже есть.
Цитата:
Задана символьная матрица размером m*n
Так что врядли. Хотя работа со строками натолкнула на мысль - можно создать еще однмерный массив строк S размерности m. затем цикл
Код:
for i:=1 to m do
  for j:=1 to n do
    begin
      if j=1 then S:='';//обнуляем
      S[i]:=S[i]+mas[i,j];
    end;
А далее по уже описанному принципу находим лишние строки, запоминаем их номера и не печатаем элементы MAS, у которых первая координата равна этим номерам.
Все тривиальное просто
whatever вне форума Ответить с цитированием
Старый 22.01.2012, 21:46   #4
VadikV
Форумчанин
 
Аватар для VadikV
 
Регистрация: 08.01.2011
Сообщений: 226
По умолчанию

Строка = массив символов
Делал это задание уже. Препод сказал переделать так, как я привел выше
Для гурманов в приведенном мной коде к элементам матрицы можно обращаться а вот так:
mas[номер_строк, номер_символа]
icq 223-630-454
e-mail vysotskiy@list.ru
сайт http://www.big-library.net/
VadikV вне форума Ответить с цитированием
Старый 22.01.2012, 22:07   #5
whatever
a.k.a. Skull
Форумчанин
 
Регистрация: 17.11.2009
Сообщений: 963
По умолчанию

Можно поспорить, но смысла нет. В конечном итоге все зависит от препода, тут согласен на 100%
Все тривиальное просто
whatever вне форума Ответить с цитированием
Ответ


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



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
задача на (обработку текстовой информации в паскале) Julichka1k Помощь студентам 0 15.01.2012 23:51
задача на (обработку текстовой информации в паскале) Julichka1k Помощь студентам 1 11.01.2012 21:55
C# строки(Обработка текстовой информации ) Bakalavr Помощь студентам 3 26.12.2010 23:29
Обработка текстовой информации С++ Перфаратар Общие вопросы C/C++ 2 30.11.2010 21:12
Обработка текстовой информации С++ Перфаратар Помощь студентам 0 29.11.2010 23:02