Хелпикс

Главная

Контакты

Случайная статья





<Имя массива>:Array[<диапозон1>, <диапазон2>] of <тип компонент>;



< Имя массива>: Array[< диапозон1>, < диапазон2> ] of < тип компонент>;

          

Например:

Var

 M: array[1.. 10, 1.. 10] of integer; {Описание двумерного массива (матрицы) из 100 эл-тов целого типа}

 

Способы задания элементов массива

1) константа типа массив

 

Пример1.

Const

       Vector: Array [1.. 5] of real = (0. 1, -3. 24, 11. 87, 1. 0, 4. 7);

{В результате будет сформирован одномерный вектор с вещественными компонентами}

       Matrix: Array [1.. 2, 1.. 4] of integer = ( (1, 2, 3, 4), (5, 6, 7, 8) );

{В результате будет сформирована матрица следующего вида

 

1 2 3 4

5 6 7 8}

 

       CharVector1: Array [1.. 4] of char = (‘C’, ‘H’, ‘A’, ‘R’);

 

2) ввод элементов с клавиатуры

 

Пример 2.

Var а: аrray[1.. 20] of integer;

      i: integer;

Begin

For i: = 1 to 20 do read(a[i]); {Заполнение массива A с клавиатуры}

End.

 

3) заполнение случайными числами, при помощи функции Random.

Random(N) – встроенная математическая функция возвращающая случайное целое число от 0 до N, где N- переменная, выражение или константа целого типа. Функция Random может быть задана и без аргумента. В этом случае будет генерироваться случайное вещественное число из диапазона от 0 до 1.

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

 

Пример 3.

 

Var D, B: Array[1.. 50] of integer; C: Array[1.. 100] of real:

  j, k, n: integer;

Begin

Randomize;

For j: = 1 to 20 do b[j]: =Random(20); {Заполнение массива B случайными

 целыми числами в диапазоне от 0 до 20}

For k: = 1 to 50 do c[k]: =Random; {Заполнение массива С случайными

 вещественными числами в диапазоне от 0 до 1}

For n: = 1 to 50 do d[n]: =10*Random-5; {Заполнение массива D

 случайными вещественными числами в диапазоне от -5 до 5}

end.

 

 

Задача. Найти среднее арифметическое элементов массива А размерности n.

 

Program AVERAGE_1;

   const n=10;

Var a: array[1.. n] of real;

   i: integer;

   S, av: real;

begin

      S: =0;

For i: =1 to n do begin

    write ('введите', i, '-ый элемент');

    readln (a[i]);

    S: = S+a[i];

  end;

av: = S/n;

writeln ('среднее арифметическое =', av);

end.  


 

Решить эту же задачу, оформив заполнение массива случайными числами, распечатку массива и подсчет среднего арифметического процедурами.

 

 

Program AVERAGE_2;

const n=10;

Type massiv = array[1.. N] of integer;

Var a: massiv;

        av: real;   

 

Procedure vvod (var a: massiv);

Var i: integer;    

Begin

For i: =1 to n do

    a[i]: =10*Random - 5;

End;

 

Procedure vivod (a: massiv);

Var i: integer;    

Begin

For i: =1 to n do

    Write(a[i]: 3);

Writeln;

End;

 

Procedure summa (a: massiv; var av: real);

Var S: real;

Begin

S: =0;

For i: =1 to n do S: = S+a[i];

 av: = S/n;

End;

 

begin

vvod(a);

vivod(a);

summa (a, av);

writeln ('среднее арифметическое =', av);

End.  

 



  

© helpiks.su При использовании или копировании материалов прямая ссылка на сайт обязательна.