• Напишите двумерный массив с помощью функции и процедуры!

Ответы 1

  •  Создание двумерного массива с помощью функции

    Функция состоит из следующих блоков:

    1. Ключевое слово Function, <имя функции>, <список параметров> в круглых скобках, тип возвращаемого значения;
    2. Константы;
    3. Пользовательские типы данных;
    4. Локальные переменные;
    5. Процедуры и функции;
    6. Тело функции.

    Обязательными блоками являются первый (заголовок) и тело функции, содержащее действия исполняемые функцией.

    Тело функции начинается со слова begin, и заканчивается словом end; В теле функции должен выполняться оператор присваивания, присваивающий переменной result значение, возвращаемое функцией. Альтернативой является использование вместо переменной result имени функции. Например:

    Function Return1():integer;

    begin

      Return1:=1;

    end;

    Для того чтобы создать функцию с возвращаемым типом массива нужно описать пользовательский тип массива:

    const n=5;

    m=5;

    type ArrType = array[1..n,1..m]of integer;

    Размерность массива задана константами m и n. Функция создания массива представлена ниже:

    function FCreateArray:ArrType;

    var locmas:ArrType;

    i,j:integer;

    begin

      for i:=1 to n do

           for j:=1 to m do

               locmas[i,j]:=random(10);

      result:=locmas;

    end;        

    Здесь пропущен список параметров в заголовке функции, поскольку параметры не требуются.

    Для создания массива используем два вложенных цикла for. Переменные-счетчики для циклов объявлены локально, также объявлен локальный массив locmas, который заполняется случайными числами в диапазоне от 0 до 9. Для возвращения результата используем присваивание переменной result значения localmas.

    Вызов функции будет иметь следующий вид:

    mas:=FCreateArray;

    Тип переменной mas должен совпадать с типом возвращаемым функцией.

    Создание двумерного массива с помощью процедуры

    Процедура состоит из следующих блоков:

    1. Ключевое слово Procedure, <имя процедуры>, <список параметров> в круглых скобках;
    2. Константы;
    3. Пользовательские типы данных;
    4. Локальные переменные;
    5. Процедуры и функции;
    6. Тело процедуры.

    Также как и у функции обязательными являются первый и последний блоки. В отличие от функции процедура не имеет типа возвращаемого значения.

    Воспользуемся описанным типом данных ArrType, для того чтобы передать процедуре создания массива параметр-переменную locmas. Ключевое слово var указывает, что фактический параметр переданный процедуре будет изменяться процедурой.

    procedure PCreateArray(var locmas:ArrType);

    var i,j:integer;

    begin

      for i:=1 to n do

         for j:=1 to m do

             locmas[i,j]:=random(10);

    end;

    Заполнение массива происходит так же, как и в описанной выше функции.

    Вызов процедуры будет следующим:

    PCreateArray(mas);

    При этом тип переменной mas должен совпадать с типом locmas из списка параметров процедуры. После выполнения процедуры переменная mas будет содержать массив, заполненный случайными числами в диапазоне от 0 до 9.

    • Автор:

      key
    • 4 года назад
    • 0
  • Добавить свой ответ

Войти через Google

или

Забыли пароль?

У меня нет аккаунта, я хочу Зарегистрироваться

How much to ban the user?
1 hour 1 day 100 years