Лекции.Орг


Поиск:




Категории:

Астрономия
Биология
География
Другие языки
Интернет
Информатика
История
Культура
Литература
Логика
Математика
Медицина
Механика
Охрана труда
Педагогика
Политика
Право
Психология
Религия
Риторика
Социология
Спорт
Строительство
Технология
Транспорт
Физика
Философия
Финансы
Химия
Экология
Экономика
Электроника

 

 

 

 


Использование файлов для работы с матрицами




 

Матрицей размера M Ч N называется прямоугольная таблица чисел, со-

держащая M строк и N столбцов. Для работы с матрицами обычно используют-

ся двумерные массивы (см. задания группы Matrix). Данный пункт посвящен

способам обработки матриц, хранящихся в типизированных файлах на внеш-

них носителях (дисках). Как и в остальных заданиях на обработку файловых

данных, при выполнении заданий из данного пункта не следует использовать

вспомогательные массивы, содержащие все файловые элементы.

В заданиях данного пункта используются дополнительные понятия тео-

рии матриц. Приведем определения этих понятий.

Пусть A — матрица размера M Ч N. Матрица B называется транспониро-

ванной к матрице A, если она имеет размер N Ч M и ее элементы удовлетво-

ряют следующему соотношению:


 

B I,J= A J,I,


 

I = 1,..., N, J = 1,... M.


 

Пусть A — матрица размера M Ч N, B — матрица размера N Ч P. Матри-

ца C называется произведением матриц A и B (и обозначается A · B), если она

имеет размер M Ч P и ее элементы удовлетворяют следующему соотношению:


 

C I,J= A I,B 1,J + A I,2 · B 2,J +... + A 1,N · B N,J,


 

I = 1,..., M, J = 1,... P.


 

Квадратная матрица A называется верхнетреугольной, если все ее эле-

менты, лежащие ниже главной диагонали, равны нулю (определение главной

диагонали см. в задании Matrix80):


 

A I,J= 0,


 

I > J.


 

Квадратная матрица A называется нижнетреугольной, если все ее элемен-

ты, лежащие выше главной диагонали, равны нулю:


 

A I,J= 0,


 

I < J.



88


М. Э. Абрамян. Электронный задачник Programming Taskbook 4.6

 

 

Квадратная матрица A называется трехдиагональной, если равны нулю


все ее элементы, не лежащие на главной диагонали и на двух диагоналях,

примыкающих к главной:


 

 

A I,J= 0,


 

 

| IJ | > 1.


 

File74◦. Даны два целых числа I, J и файл вещественных чисел, содержащий

элементы квадратной матрицы (по строкам). Вывести элемент матрицы,

расположенный в I -й строке и J -м столбце (строки и столбцы нумеруются

от 1). Если требуемый элемент отсутствует, то вывести 0.

File75. Дан файл вещественных чисел, содержащий элементы квадратной мат-

рицы (по строкам). Создать новый файл, содержащий элементы матрицы,

транспонированной к исходной.

File76. Даны два файла вещественных чисел с именами S Aи S B, содержащие

элементы квадратных матриц A и B (по строкам). Создать новый файл с

именем S C, содержащий элементы произведения A · B. Если матрицы A и B

нельзя перемножать, то оставить файл S Cпустым.

File77. Даны два целых числа I, J и файл вещественных чисел, содержащий

элементы прямоугольной матрицы (по строкам), причем первый элемент

файла содержит количество столбцов матрицы. Вывести элемент матри-

цы, расположенный в I -й строке и J -м столбце (строки и столбцы нуме-

руются от 1). Если требуемый элемент отсутствует, то вывести 0.

File78. Дан файл вещественных чисел, содержащий элементы прямоугольной

матрицы (по строкам), причем первый элемент файла содержит количе-

ство столбцов матрицы. Создать новый файл той же структуры, содержа-

щий матрицу, транспонированную к исходной.

File79. Даны два файла вещественных чисел с именами S Aи S B, содержа-

щие элементы прямоугольных матриц A и B (по строкам), причем первый

элемент каждого файла содержит количество столбцов соответствующей

матрицы. Создать файл той же структуры с именем S C, содержащий эле-

менты произведения A · B. Если матрицы A и B нельзя перемножать, то

оставить файл S Cпустым.

File80. Дан файл вещественных чисел, содержащий элементы верхнетреуголь-

ной матрицы (по строкам). Создать новый файл, содержащий элементы

ненулевой части данной матрицы (по строкам).



Двоичные файлы



 

 

File81. Дан файл вещественных чисел, содержащий элементы нижнетреуголь-

ной матрицы (по строкам). Создать новый файл, содержащий элементы

ненулевой части данной матрицы (по строкам).

File82. Дан файл вещественных чисел, содержащий элементы трехдиагональ-

ной матрицы (по строкам). Создать новый файл, содержащий элементы

ненулевой части данной матрицы (по строкам).

File83. Даны два целых числа I, J и файл вещественных чисел, содержащий

ненулевую часть верхнетреугольной матрицы (по строкам). Вывести по-

рядок матрицы и ее элемент, расположенный в I -й строке и J -м столбце

(строки и столбцы нумеруются от 1). Если требуемый элемент находит-

ся в нулевой части матрицы, то вывести 0; если элемент отсутствует, то

вывести −1.

File84. Даны два целых числа I, J и файл вещественных чисел, содержащий

ненулевую часть нижнетреугольной матрицы (по строкам). Вывести по-

рядок матрицы и ее элемент, расположенный в I -й строке и J -м столбце

(строки и столбцы нумеруются от 1). Если требуемый элемент находит-

ся в нулевой части матрицы, то вывести 0; если элемент отсутствует, то

вывести −1.

File85. Даны два целых числа I, J и файл вещественных чисел, содержащий

ненулевую часть трехдиагональной матрицы (по строкам). Вывести по-

рядок матрицы и ее элемент, расположенный в I -й строке и J -м столбце

(строки и столбцы нумеруются от 1). Если требуемый элемент находит-

ся в нулевой части матрицы, то вывести 0; если элемент отсутствует, то

вывести −1.

File86. Дан файл вещественных чисел, содержащий ненулевую часть верхне-

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

элементы данной матрицы (по строкам).

File87. Дан файл вещественных чисел, содержащий ненулевую часть нижне-

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

элементы данной матрицы (по строкам).

File88. Дан файл вещественных чисел, содержащий ненулевую часть трехдиа-

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

элементы данной матрицы (по строкам).

File89. Даны два файла вещественных чисел с именами S Aи S B, содержа-

щие ненулевые части верхнетреугольных матриц A и B (по строкам).

Создать новый файл с именем S C, содержащий ненулевую часть произ-



90


М. Э. Абрамян. Электронный задачник Programming Taskbook 4.6

 

 

ведения A · B (по строкам). Если матрицы A и B нельзя перемножать, то

оставить файл S Cпустым.


File90. Даны два файла вещественных чисел с именами S Aи S B, содержа-

щие ненулевые части нижнетреугольных матриц A и B (по строкам).

Создать новый файл с именем S C, содержащий ненулевую часть про-

изведения A · B (по строкам). Если матрицы A и B нельзя перемножать, то

оставить файл S C пустым.

 

 

Текстовые файлы

 

Условие вида «дан текстовый файл» означает, что в наборе исходных

данных указано имя данного файла (текстовая строка). Все исходные файлы

в заданиях данной группы считаются существующими. Элементы исходных

файлов следует считывать с помощью стандартных процедур используемого

языка программирования.

Если в задании требуется создать новый файл, то имя создаваемого файла

также входит в набор исходных данных (и, как правило, является последним

элементом этого набора). Записывать элементы в создаваемые (или модифи-

цируемые) файлы следует с помощью стандартных процедур используемого

языка программирования.

Максимальный размер исходных файлов не устанавливается, поэтому при

решении заданий не следует использовать вспомогательные массивы, содер-

жащие все элементы исходных файлов, однако допускается использование

вспомогательных файлов.

Используемые в заданиях типизированные файлы удовлетворяют услови-

ям, которые перечислены в начале раздела «Типизированные файлы».

 

 





Поделиться с друзьями:


Дата добавления: 2016-11-12; Мы поможем в написании ваших работ!; просмотров: 1037 | Нарушение авторских прав


Поиск на сайте:

Лучшие изречения:

Лучшая месть – огромный успех. © Фрэнк Синатра
==> читать все изречения...

2205 - | 2093 -


© 2015-2024 lektsii.org - Контакты - Последнее добавление

Ген: 0.008 с.