Работа с составными типами данных в системе Turbo Pascal. Батхин А.Б - 4 стр.

UptoLike

Составители: 

A:=B;
При отладке программ с массивами не всегда удобно их компоненты каждый раз
вводить заново с клавиатуры. Элементы массивов можно хранить в виде файлов на дис-
ке или (если позволяют тип данных и логика программы) задавать случайным образом.
2.2. Примеры программ с массивами
Пример 1. Ввод и обработка данных (одномерный массив)
program massiv;
const n=1000;
var
vector: array [1..n] of real;
s:real;
i:integer;
begin
for i:=1 to n do
read(vector[i]);{ввод данных с клавиатуры}
{"случайное" заполнение массива:}
{randomize; for i:=1 to n do vector[i]:=random}
s:=0
for i:=n downto 1 do
s:=s+vector[i]*vector[n-i+1];
write(' s=',s)
end.
Пример 2. Работа с многомерным массивом (матрицей)
program simmat;
const n=10;
var
mat: array [1..n,1..n] of integer;
smat, asmat: array [1..n,1..n] of real;
i,j:integer;
begin {блок чтения исходной матрицы}
for i:=1 to n do
for j:=1 to n do readln(mat[i,j]);
{блок расчета} for i:=1 to n do
for j:=1 to n do
begin
smat[i,j]:=(mat[i,j]+mat[j,i])/2; asmat[i,j]:=(mat[i,j]-mat[j,i])/2; smat[j,i]:=smat[i,j];
asmat[j,i]:=-asmat[i,j]
end;
{блок распечатки матриц}
for i:=1 to n do {печать "в строчку"}
      A:=B;
      При отладке программ с массивами не всегда удобно их компоненты каждый раз
вводить заново с клавиатуры. Элементы массивов можно хранить в виде файлов на дис-
ке или (если позволяют тип данных и логика программы) задавать случайным образом.


                                     2.2. Примеры программ с массивами
Пример 1. Ввод и обработка данных (одномерный массив)
   program massiv;
      const n=1000;
      var
            vector: array [1..n] of real;
            s:real;
            i:integer;
      begin
            for i:=1 to n do
                read(vector[i]);{ввод данных с клавиатуры}
               {"случайное" заполнение массива:}
               {randomize; for i:=1 to n do vector[i]:=random}
            s:=0
            for i:=n downto 1 do
                s:=s+vector[i]*vector[n-i+1];
                write(' s=',s)
      end.
Пример 2. Работа с многомерным массивом (матрицей)
   program simmat;
      const n=10;
      var
            mat: array [1..n,1..n] of integer;
            smat, asmat: array [1..n,1..n] of real;
            i,j:integer;
      begin                         {блок чтения исходной матрицы}
            for i:=1 to n do
                for j:=1 to n do readln(mat[i,j]);
                {блок расчета} for i:=1 to n do
                for j:=1 to n do
                      begin
                           smat[i,j]:=(mat[i,j]+mat[j,i])/2; asmat[i,j]:=(mat[i,j]-mat[j,i])/2; smat[j,i]:=smat[i,j];
                           asmat[j,i]:=-asmat[i,j]
                      end;
                {блок распечатки матриц}
            for i:=1 to n do                                   {печать "в строчку"}