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

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

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

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

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

Ответ
 
Опции темы Поиск в этой теме
Старый 04.01.2011, 21:46   #1
pechenka
Новичок
Джуниор
 
Регистрация: 04.01.2011
Сообщений: 2
По умолчанию Подпрограммы PASCAL!

Даны 2 одномерных массива А из 10 элементов и В из 15 элементов.Сформировать 2 новых массива Массив Х из элементов массива А,не входящих в массив В,и массив У из элементов массива В не входящих в массив А.
*********************************** *****************
Использовать подпрограммы.
Код:
program lol;
uses crt;
type mas = array[1..15] of real;
var
  A, B, X, Y, m: mas;
  i, n: integer;

procedure inmas(var m: mas; var n: integer);
var i: integer;
begin writeln('vvesti n=');
  readln(n);
  for i := 1 to n do
    readln(m[i]);
  writeln; writeln;
  writeln('Massiv');
  for i := 1 to n do
    write(m[i]: 3: 0);
end;

function poiskX(A, B: mas): real;
var j, i: integer; el: real;
begin
  for i := 1 to 10 do
  begin
    for j := 1 to 15 do
      if A[i] <> B[j] then
        el := A[i];
  end;
  poiskX := el;
end;

function poiskY(A, B: mas): real;
var j, i: integer; el: real;
begin
  for j := 1 to 15 do
  begin
    for i := 1 to 10 do
      if B[j] <> A[i] then
        el := B[j];
  end;
  poiskY := el;
end;

procedure utmas(m: mas);
var i: integer;
begin
  for i := 1 to 15 do
    write(m[i]: 3: 0);
end;
begin
  clrscr;
  writeln('vvod massiva A');
  inmas(A, n);
  writeln;
  writeln('vvod massiva B');
  inmas(B, n);
  for i := 1 to 15 do
    X[i] := poiskX(A, B);
  Y[i] := poiskY(A, B);
  writeln;
  writeln('massiv X');
  utmas(X);
  writeln;
  writeln;
  writeln('massiv Y');
  utmas(Y);
end.

________
Код нужно оформлять по правилам:
тегом [CODE]..[/СODE] (это кнопочка с решёточкой #)
Не забывайте об этом!
Модератор.

Последний раз редактировалось Serge_Bliznykov; 05.01.2011 в 10:54. Причина: [CODE] + отформатировал отступы в коде
pechenka вне форума Ответить с цитированием
Старый 05.01.2011, 04:37   #2
Niro
Форумчанин
 
Аватар для Niro
 
Регистрация: 23.09.2010
Сообщений: 682
По умолчанию

Код надо оформлять специальным тегом code (решётка)
Оформлять так что бы он был читаем, а то сами в нём через три дня не разберётесь
А теперь по делу: результатом функции явлется число, а вам нужен массив и здесь целесообразнее использовать процедуру, но можно просто заменить
Цитата:
el:=A[i];
на
Код:
X[i]:=A[i];
Должно работать
Проще всего признать свою ошибку.
Гораздо труднее еЁ осознать и исправить.
Niro вне форума Ответить с цитированием
Ответ


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

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

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


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Pascal Подпрограммы Rыся Помощь студентам 1 04.06.2010 12:39
Подпрограммы-процедуры, подпрограммы-функции в Pascal rishikesh Помощь студентам 19 18.05.2010 23:05
Подпрограммы (Pascal) Дабл Помощь студентам 2 23.12.2009 03:34
Подпрограммы(Pascal) Niero Помощь студентам 11 14.12.2009 12:34
Pascal - Циклы и подпрограммы Бурундук Помощь студентам 18 18.10.2009 19:47