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

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

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

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

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

Ответ
 
Опции темы Поиск в этой теме
Старый 04.03.2016, 13:44   #1
dimitruf
 
Регистрация: 14.02.2016
Сообщений: 9
По умолчанию Модули. Получение из двух векторов третьего.

Помогите, пожалуйста. Задание:С помощью подпрограммы с параметром процедурного типа получить из двух векторов третий, каждый элемент которого равен меньшему элементу исходных векторов, и вектор, состоящий из сумм соответствующих компонентов исходных векторов. В отдельном модуле должен быть описан процедурный тип с относящимися к нему подпрограмми, а в другом модуле основная подпрограмма. Есть примерный код, но не могу правильно описать модули. Код в doc
Вложения
Тип файла: docx код.docx (13.1 Кб, 8 просмотров)
dimitruf вне форума Ответить с цитированием
Старый 04.03.2016, 18:59   #2
ProBeginner
Форумчанин
 
Регистрация: 22.02.2016
Сообщений: 145
По умолчанию

Пожалуйста, покажите код в простом текстовом формате.
Возьму в кредит мильён по 100% годовых на сто лет.
ProBeginner вне форума Ответить с цитированием
Старый 07.03.2016, 10:07   #3
dimitruf
 
Регистрация: 14.02.2016
Сообщений: 9
По умолчанию

Код:
program vektori;
uses 
  crt, Unit_, Unit_1;
var
  a,b,c,d: vector1;
  i,n: integer;
begin
  randomize;
  clrscr;
  { Вводим количество элементов }
  Write('n = ');
  Readln(n);
  { Создаём вектор }
  for i:=1 to n do
  begin
    a[i]:=random(200);
    b[i]:=random(300);
  end;
  { Вывод исходных векторов }
  writeln('Исходные векторы.');
  write('Первый вектор: ');
  for i:=1 to n do
    write('[',a[i],']');
  writeln;
  write('Второй вектор: ');
  for i:=1 to n do
    write('[',b[i],']');
  writeln;
  writeln('Изменённые векторы.');
  { Вычисляем вектор минимальных элементов }
  Vichislenie(a,b,c,n,min);
  { Выводим вектор минимальных элементов }
  write(' Вектор минимальных элементов: ');
  for i:=1 to n do
    write('[',c[i],']');
  writeln;
  { Вычисляем вектор суммы элементов }
  Vichislenie(a,b,d,n,sum);
  write(' Вектор суммы элементов: ');
  for i:=1 to n do
    write('[',d[i],']');
  writeln;
  readln;
end.
unit Unit_;
interface

uses Unit_1;
const
  max=100;
procedure min(a,b: vector1; var c: vector1; n: integer);
procedure sum(a,b: vector1; var c: vector1; n: integer);
implementation
{$F+}

procedure min;
var
  i: integer;
begin
  for i:=1 to n do
    if a[i]<b[i]
      then c[i]:=a[i]
        else c[i]:=b[i];
end;
procedure sum;
var
  i: integer;
begin
  for i:=1 to n do
    c[i]:=a[i]+b[i];
end;

{$F-}
end.
unit Unit_1;
interface
const
  max=100;
type
  vector1=array[1..max]of integer;
  proc1=procedure(a,b: vector1; var c: vector1; n: integer);
procedure Vichislenie(a,b: vector1; var c: vector1; n: integer; proc: proc1);
implementation
procedure Vichislenie;
begin
  proc(a,b,c,n);
end;
end.

Последний раз редактировалось Аватар; 07.03.2016 в 10:10.
dimitruf вне форума Ответить с цитированием
Ответ


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



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Подпрограммы с параметрами процедурного типа. Получение из двух векторов третьего dimitruf Паскаль, Turbo Pascal, PascalABC.NET 24 15.02.2016 05:31
Объединение двух векторов в матрицу, состоящую из двух столбцов[matlab] fygas1991 Помощь студентам 0 22.01.2015 00:09
сравнение двух файлов и формирование третьего mitinomax Microsoft Office Excel 5 11.02.2012 18:29
Ввод векторов и матриц, умножение матрицы на вектор и вычисление скалярного призведения двух векторов zverushka Помощь студентам 18 20.02.2009 15:25
получение третьего TImage из 2-х romul_ Общие вопросы Delphi 4 16.02.2009 10:00