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

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

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

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

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

Ответ
 
Опции темы Поиск в этой теме
Старый 14.10.2009, 17:13   #1
QuadroX
323787261
Пользователь
 
Аватар для QuadroX
 
Регистрация: 19.12.2008
Сообщений: 49
По умолчанию Немного изменить программу в Delphi Console. (Массивы)

Условие задачи: Даны целые числа a1, a2, ..., an, среди которых могут быть повторяющиеся. Составить новый массив из чисел, которые входят в последовательность по одному разу.

Мое решение:

Код:
program Project1;

{$APPTYPE CONSOLE}

uses
  RusConsole, StopOnEnd;

const
  n = 10;
var
  i, j, k, t: Integer;
  Povtor: Boolean;
  a: array [1..n] of Integer;
  b: array [1..n] of Integer;
begin
  {Ввод исходного массива}
  for i := 1 to n do begin
    write('a[', i, ']=');
    readln(a[i]);
  end;
  {Сравнение элементов исходного массива между собой}
  for i := 1 to n do
    begin
      t := a[i];
      Povtor := false;
      for j := 1 to n do
        if (a[j] = t) and (j <> i) then
          Povtor := true;
        if not Povtor then begin
          k := k + 1;
          b[k] := a[i];
        end;
    end;
  {Вывод результирующего массива b}
  writeln;
  for i := 1 to k do
    writeln('b[', i, ']=', b[i]);
end.
Преподаватель сказал, что решение правильно, но надо переделать, используя процедуры, функции и динамические массивы. Вот заготовка новой программы:

Код:
program peredelat;

{$APPTYPE CONSOLE}

uses
  RusConsole, StopOnEnd;

type
  TDynIntArray = array of Integer;

var

function ReadArray: TDynIntArray;
var I:Integer;
begin

end;


procedure WriteArray(IntArray: TDynIntArray);
var I:Integer;
begin

end;


function Solve(IntArray: TDynIntArray): TDynIntArray;
begin

end;


begin
  A:=ReadArray;
  B:=Solve(A);
  WriteArray(B);
end.
Задача в целом несложная и надеюсь вы мне поможете.
ICQ: 323787261
Email: pschegolevatykh@gmail.com
QuadroX вне форума Ответить с цитированием
Старый 14.10.2009, 17:42   #2
russian-stalker
Участник клубаДжуниор
 
Аватар для russian-stalker
 
Регистрация: 23.08.2008
Сообщений: 1,616
По умолчанию

SetLength, sizeof тебе в помощь
pushl $0x18E3DF6B
call ICQ
russian-stalker вне форума Ответить с цитированием
Ответ


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



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Необходимо посчитать сумму ряда в Delphi console QuadroX Помощь студентам 5 08.10.2009 18:06
Изменить программу HECTOR.A. Помощь студентам 0 05.06.2009 00:06
Помогите переделать программу немного. texcel Общие вопросы C/C++ 1 16.02.2009 19:42
Как изменить программу? UberStas Помощь студентам 4 13.06.2008 19:02
Открытие документов Microsofrt Common Console через delphi )Игнат( Общие вопросы Delphi 6 24.01.2008 17:09