Лабораторная работа №5. Работа с двумерными массивами 


Мы поможем в написании ваших работ!



ЗНАЕТЕ ЛИ ВЫ?

Лабораторная работа №5. Работа с двумерными массивами

 

Министерство образования Российской Федерации

РОССИЙСКИЙ ГОСУДАРСТВЕННЫЙ ГИДРОМЕТЕОРОЛОГИЧЕСКИЙ УНИВЕРСИТЕТ

 

Лабораторная работа №5

 

Вариант №13

 

 

Выполнял ст. гр. M-186

Гуськов Максим

 

Санкт-Петербург


Задание

 

 

№ вар.

Задание

Печатать элементы массива по

Тип обрабатыв. данных

штук:

формату:

Заполнить квадратный массив А (NхN) элементов (N не более 8) числами из входного файла, распечатать, построить новую матрицу В (NхN), в которой каждый элемент B (i,j) равен минимальному из всех элементов массива А, у которых номер строки <=i, а номер столбца >=j. Полученную матрицу распечатать.

 

Веществ.

 

 

Таблица идентификаторов

 

Имя

Тип

Р-р,байт

Назначение

N

Целые

Кол-во столбцов массива

i

Целые .

Номер столбца элемента массиве

B

Вещественный массив

Выходной массив

A

Вещественный массив

Массив с исходными данными

M

Символьный

Кол-во строк массива

Fout

Символьный файл

Файл с исходными символами

Fin

Символьный файл

Протокол работы

j

Целые

Номер строки элемента массива

k

Целые

Номер столбца элемента в выходном массиве

c

Целые

Номер строки элемента в выходном массиве

Amin

Вещественный

Копия минимального элемента массива


Блок-схема

 

I=1, m

 

Открыть для чтения

 

I=1, n

Закрыть fin

 

Открыть Fout, BOMBOM_5.txt

 

Открыть для записи

 

 

Fout исходный массив из NxN элементов

 

 

Fout

 

 

Fout,A[I,j]:8:2

 

I=1, m

 

I=1, n

 

 

Fout

 

I=1, m

 

I=1, n

 

B[I,j]= A[i,j]

 

C=j,n

 

K=I,1,-1

 

A[k,c]<B[I,j]

нет

да

 

B[I,j]=A[k,c]

 

 

Итоговый массив из nxn элементов

 

 

Fout

 

 

Fout,B[I,j]:8:2

 

I=1, m

 

I=1, n

 

Закрыть Fout

конец

 

fin, A[i,j]

 

 

 

 

Введите кол-во столбцов  массива

 

N<2, N>=8

Начало

нет

да

Открыть fin, S:\kurs_1\_Data\DATF.txt

 

 

Введите кол-во строк  массива

 

m<2, m>=8

 

 

Недоступное значение

 

 

Недоступное значение

нет

да

 

N

 

 

 

 

M

 


Листинг программы

 

program lab_5;

{Гуськов,М-186,v.13}

var

 A,B:array[1..8,1..8] of real;

 Fin,Fout:text;

 M,N,i,j,k,c:integer;

 Amin:real;

 

begin

writeln('Введите количество столбцов массива');

readln(N);

if (n<2) and (n>=8) then

begin

writeln ('недопустимое значение');

end;

writeln('введите количество строк массива');

readln(M);

if (m<2) and (m>=8) then

begin

writeln ('недопустимое значение');

end;

assign (Fin,'S:\kurs_1\_Data\DATF.txt');

reset (Fin);

for i:=1 to M do

for j:=1 to N do

read (Fin,A[i,j]);

close (Fin);

assign (Fout,'BOMBOM_5.txt');

rewrite (Fout);

writeln (Fout,'исходный массив из ',N,'x',M,' элементов');

for i:=1 to M do

begin

for j:=1 to N do

write (Fout,A[i,j]:8:2);

writeln (Fout);

end;

Writeln (Fout);

For i:=1 to M do

For j:=1 to N do

begin

B[i,j]:=A[i,j];

For k:=1 to M do

For c:=1 to N do

 

If (k<=i) and (c>=j) and (b[i,j]<a[k,c]) then

b[i,j]:=a[k,c];

end;

writeln (Fout,'итоговый массив из ',N,'x',N,' элементов');

For i:=1 to M do

begin

For j:=1 to N do

Write (Fout,B[i,j]:8:2);

Writeln (Fout);

end;

Close (Fout);

End.

 

 

Результаты вычислений

 

исходный массив из 6x6 элементов

-2.20 -6.93 0.20 8.97 8.09 5.38

7.82 5.43 15.33 13.60 9.32 17.38

17.70 16.26 13.13 13.78 20.59 17.91

15.16 19.02 21.66 18.71 17.73 20.59

21.77 22.49 21.99 19.42 15.68 17.73

21.90 13.50 17.68 18.50 15.51 11.54

 

итоговый массив из 6x6 элементов

8.97 8.97 8.97 8.97 8.09 5.38

17.38 17.38 17.38  17.38 17.38 17.38

20.59 20.59 20.59 20.59 20.59 17.91

21.66 21.66 21.66 20.59 20.59 20.59

22.49 22.49 21.99 20.59 20.59 20.59

22.49 22.49 21.99 20.59 20.59 20.59



Поделиться:


Последнее изменение этой страницы: 2024-06-27; просмотров: 31; Нарушение авторского права страницы; Мы поможем в написании вашей работы!

infopedia.su Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав. Обратная связь - 216.73.217.21 (0.009 с.)