Работа №2 Составить процедуру транспонирования матрицы

advertisement
Работа №2
1. Составить процедуру транспонирования матрицы A( M , M ) . Использовать эту процедуру для
формирования вектора C  D T B , где D T - транспонированная матрица. Матрица D и вектор B
заданы.
2. Составить процедуру перестановки диагоналей матрицы A( N , N ) таким образом, чтобы
элементы главной и побочной диагоналей, расположенные в одной строке, поменялись местами.
Применить эту процедуру для заданных матриц B и C .
3. Составить процедуру упорядочения элементов всех столбцов матрицы A( M , N ) по убыванию
сверху вниз. Использовать её для упорядочения столбцов заданных матриц B и C .
4. Составить процедуру записи нулей на места элементов верхней треугольной матрицы A( M , M )
и использовать её для заданной матрицы B .
5. Составить процедуру формирования произведения матриц C  D T B по передаваемым матрицам
D и B . Применить её для заданной матрицы D и матрицы B , формируемой по правилу
bij  i cos j .
6. Составить процедуру-функцию, определяющую максимальный элемент матрицы A( M , N ) ,
ближайший к первому (поиск вести по строкам). Использовать её для получения всевозможных
попарных произведений максимальных элементов заданных прямоугольных матриц B , C и D .
7. Составить процедуру-функцию, определяющую минимальный элемент массива A(M ) .
Применить её для построения массива B из минимальных элементов строк заданной
прямоугольной матрицы C .
8. Составить процедуру-функцию, определяющую номер строки, содержащей максимальный
элемент матрицы A( M , N ) (ближайший к первому, если их несколько). Проверить, совпадают
ли номера таких строк для заданных прямоугольных матриц B и C .
9. Составить процедуру-функцию вычисления следа матрицы A( N , N ) . Используя её, определить,
у какой из заданных матриц C или D значение следа больше.
10. Составить процедуру-функцию, вычисляющую функцию f ( x )  sin x с абсолютной
погрешностью , не превышающей заданное значение abserr . Использовать при этом
представление f (x ) в виде степенного ряда. Применить процедуру-функцию для вычисления
таблицы значений f (x ) для 0  x  1 с шагом hx  0.1 .
1 3
1 3 5
1 3  5 7
x 
x 
x  с
11. Составить процедуру вычисления функции f ( x )  x 
23
245
2467
a
заданной точностью   10 5  k ( ak – очередной член), а затем использовать её при
f ( x)
f ( x)  f 2 ( x)
вычислении: g ( x ) 
для 0.1  x  1.8 с шагом hx  0.1 .
2,75 f ( x )
12. Составить процедуру-функцию вычисления интеграла по формуле трапеций с заданным шагом
b
f (b) 
 f (a )
. Использовать эту процедуру для
 f (a  h)  ...  f (b  h) 
h :  f ( x )dx  h 
2 
 2
a
1
вычисления и печати таблицы значений интеграла
q  2.0,10.0 , q  1 .

0
sin 2 px
x2  q
dx для p  1.5,3.5, p  0.1 ,
13. Составить процедуру вычисления сферической нормы матрицы
Z: Z 
n
n

i 1 j 1
норма заданной матрицы
Y EX 
X (M , M )
1 2
X , где E
2
zij
2
. Если
меньше единицы, вычислить матрицу:
– единичная матрица. Найти её норму и напечатать.
5
14. Разработать алгоритм вычисления суммы
S   Ak Y , где A – заданная квадратная матрица
k 1
M-ого порядка, а
S
и
Y
Y
– заданный вектор. Вычислить норму
Y  Y  max yi  и напечатать


i
. Предусмотреть процедуру умножения матрицы на вектор и процедуру-функцию,
вычисляющую норму вектора.
Работа №3
1. Составить процедуру умножения матрицы B( M , N ) на вектор C (N ) . Применить её для
заданного вектора A и прямоугольной матрицы D , элементы которой надо предварительно
сформировать по правилу d ij  i ( j  5) .
2. Составить процедуру упорядочения по возрастанию элементов одномерного массива A(M ) и
использовать её для упорядочения элементов строк заданной прямоугольной матрицы C .
3. Составить процедуру построения двух одномерных массивов – одного из сумм элементов строк
матрицы A( M , N ) , а другого – из сумм элементов столбцов. Использовать эту процедуру, взяв в
качестве исходных данных заданную прямоугольную матрицу C .
4. Составить процедуру формирования из заданного массива A(M ) ( M – чётное) двух массивов
B и C : один из элементов A с чётными номерами, другой – из элементов с нечётными
номерами.
5. Составить процедуру вращения квадратной матрицы A( M , M ) вокруг побочной диагонали
(верхняя и нижняя треугольные матрицы зеркально меняются местами) и преобразовать с её
помощью заданные матрицы B и C .
6. Составить процедуру-функцию вычисления скалярного произведения двух векторов A(N ) и
B(N ) . Использовать её для получения скалярного произведения векторов C и D , компоненты
которых вычисляются по формулам ci  i cos i , d i  sin 2 i .
7. Составить две процедуры-функции: вычисления максимального из минимальных (максимин)
элементов строк матрицы A( M , N ) и минимального из максимальных элементов (минимакс)
строк этой же матрицы. Проверить, используя эти процедуры-функции, равны ли значения
максимина и минимакса у заданной прямоугольной матрицы B .
8. Составить процедуру-функцию, определяющую номер строки матрицы A( M , M ) , содержащий
наибольший из диагональных элементов матрицы (ближайший к первому, если их несколько).
Применить эту процедуру-функцию для исследования диагонали заданной матрицы B .
1
1 4 2 1 4  7 3
x 
x   до тех
9. Составить процедуру-функцию, вычисляющую f ( x )  1  x 
3
36
36 9
пор, пока текущий член ряда не станет меньше заданного значения abserr . Используя эту
функцию, вычислить таблицу значений f (x ) при 0  x  1.5 с шагом hx  0.3 .
10. Составить процедуру-функцию, определяющей число положительных элементов в трёхмерной
матрице A( M , N , K ) . Определить для заданной трёхмерной матрицы B число положительных
элементов, воспользовавшись этой процедурой-функцией.
p  qx 2
dx
11. Разработать алгоритм для вычисления и печати таблицы значений интеграла 
3  px  qx 2
0
1
для ч, меняющегося от 1.2 до 1.8 с шагом 0.1 и q  2.75 . Интеграл вычислять по формуле левых
b  a n 1
 f ( xi ) с заданным n  100 . Предусмотреть процедурыa
n i 0
функции вычисления подынтегральной функции и интеграла.
x x2 x3
12. Составить процедуру вычисления функции q( x )  1  

  с заданной точностью
3! 5! 7!
ak  105 ( a k – очередной член ряда). Использовать процедуру для вычисления интеграла
b
f ( x )dx 
прямоугольников:
q 2 ( x )  1,57
3
0.5 q( x)  2,15 dx с заданным шагом h  10 по формуле Симпсона:
1.5
b
 f ( x)dx  3  f (a)  4 f (a  h)  2 f (a  2h)  4 f (a  3h)  ...  f (b) .
h
a
n
13. Составить процедуру вычисления нормы матрицы
A : A  max  aij
i
заданной матрицы
Вычислить ному
X (M , M )
14. Три нормы матрицы
An
j 1
меньше единицы, вычислить матрицу
Z . Напечатать матрицу Z
. Если норма
Z  E  X 3.
и её норму ( E – единичная матрица).
вычисляются по формулам
A 
n
n
  aij
i 1 j 1
n
2
,
A  max  aij
i
j 1
n
и
A  max  aij
j
. Описать вычисление норм в виде процедур-функций и использовать их
i 1
для нахождения минимальной нормы заданной матрицы
нормы вместе и минимальную норму отдельно.
P(M , M ) . Напечатать все три
Download