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

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

Вернуться   Форум программистов > Delphi программирование > Паскаль, Turbo Pascal, PascalABC.NET
Регистрация

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

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

Ответ
 
Опции темы Поиск в этой теме
Старый 14.06.2010, 10:12   #1
Solnze2
Пользователь
 
Регистрация: 09.06.2010
Сообщений: 32
Печаль Объектно-ориентированное программирование

Составить описание класса для определения одномерных массивов строк фиксированной длины. Предусмотреть возможность обращения к отдельным строкам массива по индексам, контроль выхода за пределы индексов, выполнения операций поэлементного сцепления двух массивов с образованием нового массива, слияния двух массивов с исключением повторяющихся элементов, печать (вывод на экран) элементов массива и всего массива.
Solnze2 вне форума Ответить с цитированием
Старый 14.06.2010, 13:31   #2
Stilet
Белик Виталий :)
Старожил
 
Аватар для Stilet
 
Регистрация: 23.07.2007
Сообщений: 57,097
По умолчанию

Могу предложить только такое:
Код:
uses
  crt;

  const n=20;
type
 TMass=object
  private
   Values:Array[1..n] of string;
  public
   {Предусмотреть возможность обращения к отдельным строкам массива по индексам}
   Procedure SetValue(Index:integer;AValue:String);
   Function GetValue(Index:Integer):string;
   {выполнения операций поэлементного сцепления двух массивов с образованием нового массива}
   procedure ConcatMass(One,Duo:TMass);
   Constructor Create;
   {печать (вывод на экран) элементов массива и всего массива. }
   procedure Print(index:integer);
   procedure PrintAll;
 end;
{ TMass }

Constructor TMass.Create;
begin

end;

procedure TMass.PrintAll;
var i:integer;
begin
 for i:=1 to n do
   if Values[i]<>'' then write(values[i],' ');
 writeln;
end;

procedure TMass.Print(index:integer);
var i:integer;
begin
  if (index>0)and(index<=n) then Write(Values[index]) else begin
   Write('Выход за диапазон');
  end;
end;

procedure TMass.ConcatMass(One, Duo: TMass);
var i:integer;
begin
 for i:=1 to n do
  SetValue(i,one.GetValue(i)+duo.GetValue(i));
end;

function TMass.GetValue(Index: Integer): string;
begin
  {контроль выхода за пределы индексов}
  if (index>0)and(index<=n) then GetValue:=Values[index] else begin
   GetValue:='';Write('Выход за диапазон');
  end;
end;

procedure TMass.SetValue(Index: integer; AValue: String);
begin
  if (index>0)and(index<=n) then Values[index]:=AValue else begin
   Write('Выход за диапазон');
  end;
end;

var q,w,e:TMass;
begin

  q.SetValue(1,'Hello');
  w.SetValue(2,' my');
  q.SetValue(3,'world');
  e.ConcatMass(q,w);
    q.PrintAll;
    e.PrintAll;
    w.PrintAll;
  readln;
end.
ибо сейчас не очень много времени свободного.
Тебе остается доправить сюда слияния двух массивов с исключением повторяющихся элементов
I'm learning to live...
Stilet вне форума Ответить с цитированием
Старый 14.06.2010, 13:42   #3
Solnze2
Пользователь
 
Регистрация: 09.06.2010
Сообщений: 32
По умолчанию

Большое спасбо!Но дело в том, что я вообще не понимаю этого.Может у тебя появится время и допишешь.У меня есть время до среды.Пожалуйста... Жду ответ
Solnze2 вне форума Ответить с цитированием
Ответ


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



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
объектно-ориентированное программирование Oleg_SK Общие вопросы C/C++ 3 11.06.2010 20:51
Объектно-ориентированное программирование. Списки Vegas Общие вопросы C/C++ 8 27.04.2010 19:21
Объектно-ориентированное программирование 4ika Помощь студентам 2 04.04.2010 20:27
Объектно -ориентированное программирование Asira Помощь студентам 3 05.03.2010 17:52
Объектно-ориентированное программирование dzhI Помощь студентам 8 19.03.2009 13:38