Банк рефератов содержит более 364 тысяч рефератов, курсовых и дипломных работ, шпаргалок и докладов по различным дисциплинам: истории, психологии, экономике, менеджменту, философии, праву, экологии. А также изложения, сочинения по литературе, отчеты по практике, топики по английскому.
Полнотекстовый поиск
Всего работ:
364139
Теги названий
Разделы
Авиация и космонавтика (304)
Административное право (123)
Арбитражный процесс (23)
Архитектура (113)
Астрология (4)
Астрономия (4814)
Банковское дело (5227)
Безопасность жизнедеятельности (2616)
Биографии (3423)
Биология (4214)
Биология и химия (1518)
Биржевое дело (68)
Ботаника и сельское хоз-во (2836)
Бухгалтерский учет и аудит (8269)
Валютные отношения (50)
Ветеринария (50)
Военная кафедра (762)
ГДЗ (2)
География (5275)
Геодезия (30)
Геология (1222)
Геополитика (43)
Государство и право (20403)
Гражданское право и процесс (465)
Делопроизводство (19)
Деньги и кредит (108)
ЕГЭ (173)
Естествознание (96)
Журналистика (899)
ЗНО (54)
Зоология (34)
Издательское дело и полиграфия (476)
Инвестиции (106)
Иностранный язык (62791)
Информатика (3562)
Информатика, программирование (6444)
Исторические личности (2165)
История (21319)
История техники (766)
Кибернетика (64)
Коммуникации и связь (3145)
Компьютерные науки (60)
Косметология (17)
Краеведение и этнография (588)
Краткое содержание произведений (1000)
Криминалистика (106)
Криминология (48)
Криптология (3)
Кулинария (1167)
Культура и искусство (8485)
Культурология (537)
Литература : зарубежная (2044)
Литература и русский язык (11657)
Логика (532)
Логистика (21)
Маркетинг (7985)
Математика (3721)
Медицина, здоровье (10549)
Медицинские науки (88)
Международное публичное право (58)
Международное частное право (36)
Международные отношения (2257)
Менеджмент (12491)
Металлургия (91)
Москвоведение (797)
Музыка (1338)
Муниципальное право (24)
Налоги, налогообложение (214)
Наука и техника (1141)
Начертательная геометрия (3)
Оккультизм и уфология (8)
Остальные рефераты (21692)
Педагогика (7850)
Политология (3801)
Право (682)
Право, юриспруденция (2881)
Предпринимательство (475)
Прикладные науки (1)
Промышленность, производство (7100)
Психология (8692)
психология, педагогика (4121)
Радиоэлектроника (443)
Реклама (952)
Религия и мифология (2967)
Риторика (23)
Сексология (748)
Социология (4876)
Статистика (95)
Страхование (107)
Строительные науки (7)
Строительство (2004)
Схемотехника (15)
Таможенная система (663)
Теория государства и права (240)
Теория организации (39)
Теплотехника (25)
Технология (624)
Товароведение (16)
Транспорт (2652)
Трудовое право (136)
Туризм (90)
Уголовное право и процесс (406)
Управление (95)
Управленческие науки (24)
Физика (3462)
Физкультура и спорт (4482)
Философия (7216)
Финансовые науки (4592)
Финансы (5386)
Фотография (3)
Химия (2244)
Хозяйственное право (23)
Цифровые устройства (29)
Экологическое право (35)
Экология (4517)
Экономика (20644)
Экономико-математическое моделирование (666)
Экономическая география (119)
Экономическая теория (2573)
Этика (889)
Юриспруденция (288)
Языковедение (148)
Языкознание, филология (1140)

Реферат: Структуровані типи даних Операції над двомірними масивами

Название: Структуровані типи даних Операції над двомірними масивами
Раздел: Рефераты по астрономии
Тип: реферат Добавлен 09:20:42 30 января 2011 Похожие работы
Просмотров: 4 Комментариев: 13 Оценило: 2 человек Средний балл: 5 Оценка: неизвестно     Скачать

КУРСОВА РОБОТА

НА ТЕМУ:

«Структуровані типи даних.Операції над двомірними масивами »

Анотація

В цій курсовій роботі розглянуті дії над

матрицями , такі як додавання , віднімання, мно-

ження та ділення двох матриць. А також знаход-

ження транспонованої та оберненої матриць.Про-

грами реалізовані на мові програмування Turbo

Pascal 7.0

ЗМІСТ

1.Вступ.

2.Теоретична частина.

2.1.Матриця і її властивості.

2.2. Дії над матрицями.

3.Постановка задачі.

4.Додатки.

4.1.Додатток 1(текст програм).

4.2.Додаток 2(блок-схеми до програм).

5.Висновки.

6.Використана література.

1.Вступ.

У всі часи людина прагнула розширити свої можливості, за допомогою різних знарядь праці, пізнання світу та засобів існування.

Так, наприклад нестачу зору компексує : мікроскоп, телескоп, радіолокатор. Обмежені можливості передачі інформації поширюються телефоном, радіо, телебаченням.

Обчислювані машини «доповнюють» можливості мозку людини, розширюють його можливості по обробці інформації, дозволяють прискорити прийняття рішення в процесі якої-небудь роботи.

В кінці 40-х років 20 ст. Праця в області ядерної фізики, баллистики керуючих знарядь, термодинаміки і т.д. вимагали такої обчислюваної роботи, яку вже було не можливо виконати за допомогою арифмометрів-головного обчислюваного інструмента того часу. Наука і техніка були поставлені перед делемою : або всім взятись за арифмометри або винайти новий ефективний інструмент обчислення. Аналогічні проблеми уже не раз виникали, і будуть неодноразово виникати перед вченими і інженерами: екстенсивний шлях розвитку дальше неможливий, потрібний новий, інтенсивний шлях. Проблема була вирішена створенням універсальної обчислюваної машини. Термін «універсальна»використовується не випадково. Спеціалізовані машини (наприклад, для обробки банківських рахунків і т. д.) існували і раніше, але не було машини, команди якої записані в память, можна б було швидко замінити новими.

Крім математичних обчислень ЕОМ може виконувати і логічні, тобто робити вибір між варіантами (вітками) продовження дій в залежності від виконання деяких умов. Таким чином ЕОМ-це дещо більше ніж «швидкий арифмометр».

Коротка характеристика різних поколінь ЕОМ

Перше покоління ЕОМ:

Технічна основа елементної бази машин 1-го покоління-електронні лампи. Максимальна швидкодія -10 у степені 2. Математичні операції в секунду(оп/с), обєм оперативної памяті -10 у 2 степені слів. Режим використання-монопольний, тобто в розпорядженні користувача були всі ресурси машини і її управління.

Друге покоління ЕОМ:

Технічна основа - транзистори. максимальна швидкодія-10 у 4 степені оп/с, обєм оперативної памяті-10 у 4 степені слів.Режим виконання-пакетна обробка.

Третє покоління ЕОМ:

Технічна основа-занадто великі інтегральні схеми, які на малих півпровідникових кристалах реалізують великі схеми машин 2-го покоління. Максимальна швидкодія-10 у 6 степені оп/с, оперативна память -10 у 6 степені слів, внутрішня память-10 у 9 степені слів. Метод виконання - режим розподілу часу разом з пакетною обробкою.

4-те покоління ЕОМ:

Технічна основа-занадто великі інтегральні схеми. Традиційна архітектура ЕОМ Фон Неймана домінувала на протязі трьох поколінь.

Максимальна швидкодія-10 у 9 степені оп/с, оперативна память-10 у 7 степені слів ,внутрішня память обмежена в основному економічними міркуваннями.

5-те покоління ЕОМ.

Проекти ЕОМ п’ятого покоління знаходяться в стадії реалізації. Максимальна швидкодія математичних обчислень доповнюється тут високими скоростями логічного виводу. Форма спілкування з ЕОМ

на звичайній мові і дисципліна програм, як наука для користувача перестають в майбутньому бути актуальними.

Історія і зміст предмета.

Обчислюваною математикою називають розділ математики, в якому вивчають різні проблеми одержання числових результатів обчислень математичних задач.

Якщо звернутися до історії математики то можна помітити, що обчислювана математика перетворилась на самостійну вітку порівняно недавно, десь в середині нашого століття. Цей факт в любому напрямку науки повязані з появленням власних і внутрішніх задач.

Обчислювальна математика, як частина математики має таку ж древню і багату історію, як і сама математика. Евклідова математика і механіка Ньютона, теорія електромагнітного поля і квантова теорія побудованіна математичній основі і дають потужні інструменти обчислень.

Зпоявленням ЕОМ розпочався золотий вік обчислювальної математики.вона швидко розвивається. Звернувшись до періоду розвитку обчислювальної математики після полявлення ЕОМ, можна побачити, що найбільш яскраві досягнення в розвязку задач були отримані саме тими вченими і інженерами, хто працював на ЕОМ, всі отрамані засоби математики:»чистої», прикладної, обчислювальної.

З точки зору техніки обчислювальної математика дає в її розпорядження методи , які умовно можна розбити на слідуючі 4 групи: якісні, аналітичні , численні.

2.1. Матриця і її властивості.

Прямокутна таблиця з m´n чисел ,що має m рядків і n стовпців

a11 a12 ... a1n

A= ... ... ... ...

am1 am2 ... amn

називається матрицею . Коротко матрицю позначають так:

А= ai j (і=1,2,...,m; j=1,2,...,n),

де ai j - елементи матриці.

Матрицю з єдиним стовпцем прийнято називати вектор-стовпцем , а матрицю з єдиним рядком ¾ вектор-рядком.

Рівні матриці повинні мати рівні кількості рядків і стовпців, а також рівні відповідні елементи.

Якщо в матриці число рядків рівне числу стовпців ,то матриця називається квадратною :

a11 a12 ... a1n

A= ... ... ... ...

an1 an2 ... ann

Матриця А* називається транспонованою до матриці А , якщо стовпці матриці А являються рядками матриці А*.

Наприклад: a11 a12

A= a21 a22

a31 a32

Транспонованою матрицею А* буде:

a11 a21 a31

A*=

a12 a22 a32

Приклад. Нехай А=(aij ), де і=1,..,m, о=1,..,n. Це значить, що А- матриця порядку m´n. Позначимо А* матрицю В = (bij ), для якої bij = aji , тоді А*матриця порядку n´m.

Квадратна матриця А називається симетричною відносно головної діагоналі ,якщо ai j =aj i .

Квадратна матриця, в якій всі елементи, що не лежать на головній діагоналі, дорівнюють нулю, називається діагональною. Якщо елементи діагональної матриці, що розміщені на головній діагоналі, дорівнюють одиниці, то матриця називається одиничною і позначають її буквою Е:

1 0 ... 0

Е= 0 1 ... 0

. . . . . . . . . . .

0 0 ... 1

2.2. Дії над матрицями:

Як виявляється, над матрицями можливі арифметичні дії, властивості яких близькі до властивостей арифметичних дій над числами.

Сумою двох матриць ai j і bi j з одинаковою кількістю рядків і стовпців називається матриця сi j ,у якої елементом сi j є сума aij +bij відповідних елементів матриць ai j bi j ,тобто

ai j + bi j = ci j ,

якщо ai j +bi j =ci j (i=1,2,..,m; j=1,2,..,n)

Приклад: a11 a12 b11 b12 a11 +b11 a12 +b12

a21 a22 b21 b22 a21 +b21 a22 +b22

Аналогічно знаходимо різницю двох матриць.

Матрицці різних порядків додавати(віднімати) не можна.

Множення матриці на число . Щоб помножити матрицю на число l або число на матрицю, потрібно кожний елемент матриці помножити на це число.

l * ai j = l ai j

a11 a12 l a11 l a12

l a21 a22 = l a21 l a22 .

Безпосередніми наслідками вказаних визначень є співвідношення:

1) 1 • А = А • 1 = А ;

2) 0 • А = А • 0 = 0 ;

3) a • О = О • a = О ;

4) a (b А) = (a b) А = (А a) b = А (a b);

5) А + (В +С) = (А+ В) + С;

6) А + В = В + А;

7) (a + b) А = a А + b А;

8) a (А + В) = a А + a В;

9) А + О = О + А = А;

10) А + (-1)А = О;

Тут А, В, С - матриці одного порядку, a, b - числа, О - нульова матриця (всі її елементи дорівнюють нулеві). Перевірка вказаних властивостей не викликає ускладнень.

Елемент ci j матриці С, яка є добутком матриці В на матрицю А, дорівнює сумі добутків елементів і-того рядка матриці В на відповідний елемент j-того стовпця матриці А, тобто

k

ci j =åbi l al j (i=1,2,..,m; j=1,2,..,n).

l =1

Властивості добутку матриць:

1) (А В) С = А (В С);

2) А (В + С) = А В + А С;

3) (А + В) С = А С + В С;

4) А Е = Е А = А;

5) (А В)*= В*А*;

Тут А, В, С - довільні матриці, для яких вказані рівності мають сенс.

Доведемо першу рівність - асоціативність множення матриць.

Позначимо D = A B, F = B C, G = D C, H = A F. Потрібно довести, що G =H. Оскільки множення вказаних вище матриць можливе, то А буде порядку m´n, В - порядку n´k, С - порядку k´l. З означення множення дістанемо, що D - порядку m´k, F - порядку n´l, G i H - матриці одного порядку m´l.

Зафіксуємо довільні i, j і доведемо, що gij = hij .Маємо

k k k

gij = å di a ca j = å å ai b bb a ca j ;

a =1 a =1 b =1

n n k

hij = å ai b fb j =å ai b å bb a ca j .

b =1 b =1 a =1

Позначивши ta b = ai b bb a ca j , отримаємо

k n n k

gij = å å ta b , hij = å å ta b .

a =1 b =1 b =1 a =1

Кожна із вказаних сум дорівнює сумі всіх елементів деякої матриці (ta b ), обчисленій двома різними способами. Отже, hij = gij , що й потрібно довести.

Інші властивості добутку доводяться аналогіччно, тільки простіше.

Оберненою називається матриця А-1 , така що якщо її помножити на матрицю до якої вона обернена, то в результаті отримаємо одиничну матрицю. А*А-1

Знайти матрицю, обернену до квадратної матриці М= аi k ,можна за допомогою операцій над розширеною матрицею А:

m11 . . . . m1n 1 . . . . 0

A= . . . . . . . . . . . . . . . .

mn1 . . . . mnn 0 . . . . 1

Якщо ліву частину матриці А звести елементарними перетвореннями до одиничної, то в правій частині дістанемо матрицю, обернену до М.

До елементарних перетворень належать:

1)Переставлення двох рядків матриці А (або двох однойменних стовпців в лівій і правій частинах матриці А);

2)Множення рядка на відмінне від нуля число( або однойменних стовпців в лівій і правій частинах матриці А);

3)Заміна рядка сумою цього і будь-якого іншого рядка (або та ж сама сума однойменних стовпців в лівій і правій частинах матриці А);

Ділення двох матриць.

Дію ділення можна замінити дією множення на обернену матрицю

A B = A * В-1

PROGRAM povorot; {Поворот матриці }

USES CRT;

CONST

N=3;

TYPE

S=ARRAY[1..N,1..N]OF REAL;

SS=ARRAY[1..N,1..N]OF REAL;

VAR

S1:S;S2:SS;M,i,j:INTEGER;

BEGIN

FOR i:=1 TO N DO

BEGIN

FOR j:=1 TO N DO

BEGIN

READ(S1[i,j]); {Ввід матриці}

END;

END;

WRITE('Vvedit kut povorotu');

READ(M); {Ввід кута повороту}

CASE M OF

90:BEGIN {Поворот матриці на 90°}

FOR i:=1 TO N DO

FOR j:=1 TO N DO

S2[I,J]:=S1[N-J+1,I];

FOR i:=1 TO N DO

FOR j:=1 TO N DO

WRITELN(S2[i,j]);

END;

180: BEGIN {Поворот матриці на 180°}

FOR I:=1 TO N DO

FOR J:=1 TO N DO

S2[I,J]:=S1[N-I+1,N-J+1];

FOR I:=1 TO N DO

FOR J:=1 TO N DO

WRITELN(S2[I,J]);

END;

270: BEGIN {Поворот матриці на 270°}

FOR I:=1 TO N DO

FOR J:=1 TO N DO

S2[I,J]:=S1[J,N-I+1];

FOR I:=1 TO N DO

FOR J:=1 TO N DO

WRITELN(S2[I,J]); {Вивід результату}

END; END;

END.

Program Suma; {Сума двох матриць}

Const dim1=20;

dim2=40;{dim2=2*dim1}

Type ar1=array[1..dim1,1..dim2] of real;

ar2=array[1..dim1,1..dim2] of real;

ar3=array[1..dim1,1..dim2] of real;

Var i,j,n,m:integer;

A:ar1;

B:ar2;

C:ar3;

Begin

write('Введіть розмірність матриці М');

readln(n,m); {Ввід розмірності матриць }

write('Введіть матрицю М');

For i:=1 to n do

For j:=1 to m do

read(A[i,j]); {Ввід першої матриці}

write('Введіть матрицю М');

For i:=1 to n do

For j:=1 to m do

read(B[i,j]); {Ввід другої матриці}

For i:=1 to n do

For j:=1 to m do

C[i,j]:=A[i,j]+B[i,j]; {Обчислення суми матриць}

For i:=1 to n do

For j:=1 to m do

writeln(C[i,j]); {Вивід результату}

End.

Результати:

n=2,m=3

1 -4 5 6 -1 0 7 -5 5

0 3 8 6 0 -9 6 3 -1

Program Rizn; {Знаходження різниці двох матриць}

Const dim1=20;

dim2=40;

Type ar1=array[1..dim1,1..dim2] of real;

ar2=array[1..dim1,1..dim2] of real;

ar3=array[1..dim1,1..dim2] of real;

Var i,j,n,m:integer;

A:ar1;

B:ar2;

C:ar3;

Begin

write('Введіть розмірність матриці М');

readln(n,m); {Ввід розмірності матриць}

write('Введіть матрицю М');

For i:=1 to n do

For j:=1 to m do

read(A[i,j]); {Ввід першої матриці}

write('Введіть матрицю М');

For i:=1 to n do

For j:=1 to m do

read(B[i,j]); {Ввід другої матриці}

For i:=1 to n do

For j:=1 to m do

C[i,j]:=A[i,j]-B[i,j]; {Знаходження їх різниці}

For i:=1 to n do

For j:=1 to m do

writeln(C[i,j]); {Вивід результату}

End.

Результати:

n=2,m=3

1 -4 5 6 -1 0 -5 -3 5

0 3 8 6 0 -9 -6 3 17

if k<>i then

For j:=n1 downto 1 do

a[k,j]:=a[k,j]-a[i,j]*a[k,i];end;

For i:=1 to n do

For j:=1 to n do

m[i,j]:=a[i,j+n];

For i:=1 to n do

For j:=1 to n do

writeln(m[i,j]:6:2); {Вивід оберненої матриці}

End.

2 4 3 -0,2 0 0,2

М= 0 -1 -5 М-1 = 0,41 0,18 -0,112

7 4 3 -0,08 -0,24 0,02

Program Dobutok; {Множення числа на матрицю}

Const dim1=20;

dim2=40;{dim2=2*dim1}

Type ar1=array[1..dim1,1..dim2] of real;

ar2=array[1..dim1,1..dim2] of real;

Var i,j,n,m:integer;

A:ar1; C:ar2;

r:real;

Begin

write('Введіть число');

readln(r); {Ввід числа}

write('Введіть розмірність матриці М');

readln(n,m); {Ввід розмірності матриці}

write('Введіть матрицю М');

For i:=1 to n do

For j:=1 to m do

read(A[i,j]); {Ввід матриці}

For i:=1 to n do

For j:=1 to m do

C[i,j]:=A[i,j]*r; {Множення матриці на число}

For i:=1 to n do

For j:=1 to m do

writeln(C[i,j]); {Вивід результату}

End.

Резуьтати:

r=5 n=3,m=2

-1 2 -5 10

M= 3 5 C= 15 25

4 -2.5 20 -12.5

Program obernena; {Знаходження оберненої матриці}

Const dim1=20;

dim2=40;{dim2=2*dim1}

Type ar=array[1..dim1,1..dim1] of real;

ar1=array[1..dim1,1..dim2] of real;

Var i,j,k,n1:integer; n:integer;Var m:ar;e:real;

t,s:real;

a:ar1;

Begin

readln(e); {Ввід точності обчислень}

write('Введіть розмірність матриці М');

readln(n); {Ввфд розмірності квадратної матриці}

write('Введіть матрицю М');

For i:=1 to n do

For j:=1 to n do

read(m[i,j]); {Ввід матриці}

n1:=2*n;

For i:=1 to n do

For j:=1 to n1 do

if j<=n then a[i,j]:=m[i,j]

else if j=n+i then a[i,j]:=1

else a[i,j]:=0;

For i:=1 to n do

begin k:=i;s:=a[i,i];

for j:=i+1 to n do

begin t:=a[j,i];

if abs(s)<abs(t) then begin s:=t;k:=j;end;end;

if abs(s)<e then begin {Знаходження визначника}

write('M-вироджена');Halt end;

For j:=i to n1 do

begin t:=a[k,j];a[k,j]:=a[i,j];a[i,j]:=t/s;end; {Знаходження елементів оберненої }

For k:=1 to n do {матриці}

рrgram dob_mas;

Const dim1=30;

dim2=40;

dim3=30;

Type ar1=array[1..dim2,1..dim1] of real;

ar2=array[1..dim3,1..dim2] of real;

ar3=array[1..dim1,1..dim3] of real;

Var i,j,k,l,n,m:integer;

A:ar1;

B:ar2;

C:ar3;

Begin

write('Введіть розмірність матриці М');

readln(n,m,l);

write('Введіть матрицю А');

For i:=1 to n do

For j:=1 to m do

read(A[i,j]);

write('Введіть матрицю В');

For i:=1 to l do

For j:=1 to n do

read(B[i,j]);

For i:=1 to m do

For j:=1 to l do

For k:=1 to n do

C[i,j]:=C[i,j]+A[k,i]*B[j,k];

For i:=1 to m do

For j:=1 to l do

writeln(C[i,j]);

End.

Результати:

n=2,m=2,l=2,

1 2 3 4

3 4 1 2

рrogram dilennya; {Ділення двох матриць}

Const dim1=20;

dim2=40;{dim2=2*dim1}

Type ar1=array[1..dim1,1..dim1] of real;

ar2=array[1..dim1,1..dim1] of real;

ar3=array[1..dim1,1..dim2] of real;

ar4=array[1..dim1,1..dim2] of real;

Var i,j,k,n1:integer; n:integer; M:ar3;e:real;

t,s:real;

A:ar1;B:ar2;c:ar4;

Begin

readln(e); {Знаходження оберненої матриці }

write('Введіть розмірність матриці М');

readln(n);

write('Введіть матрицю M');

For i:=1 to n do

For j:=1 to n do

read(M[i,j]);

write('Введіть матрицю B');

For i:=1 to n do

For j:=1 to n do

read(B[i,j]);

n1:=2*n;

For i:=1 to n do

For j:=1 to n1 do

if j<=n then a[i,j]:=m[i,j]

else if j=n+i then a[i,j]:=1

else a[i,j]:=0;

For i:=1 to n do

begin k:=i;s:=a[i,i];

for j:=i+1 to n do

begin t:=a[j,i];

if abs(s)<abs(t) then begin s:=t;k:=j;end;end;

if abs(s)<e then begin

write('M- вироджена');Halt end;

For j:=i to n1 do

begin t:=a[k,j];a[k,j]:=a[i,j];a[i,j]:=t/s;end;

For k:=1 to n do

if k<>i then

For j:=n1 downto 1 do

a[k,j]:=a[k,j]-a[i,j]*a[k,i];end;

For i:=1 to n do

For j:=1 to n do

m[i,j]:=a[i,j+n];

For i:=1 to n do

For j:=1 to n do

For k:=1 to n do

C[i,j]:=C[i,j]+B[k,i]*M[j,k]; {Множення матриці на обернену}

For i:=1 to n do

For j:=1 to n do

writeln(C[i,j]:6:2); {Вивід результату}

End.

Результати:

n=3


1 2 3 1 2 3

M= 4 5 6 B= 4 5 6

7 8 9 7 8 9


1 0 0

C= 0 1 0

0 0 1

Початок


Ввід n,m


i=1,n


j=1,m


Ввід А[i,j]


i=1,n


j=1,m


Ввід B[i,j]


i=1,n


j=1,m


C[i,j]=A[i,j]+B[i,j]


i=1,n


j=1,m


Вивід С[i,j]


Кінець


Початок


Ввід n,m


i=1,n


j=1,m


Ввід А[i,j]


i=1,n


j=1,m


Ввід B[i,j]


i=1,n


j=1,m


C[i,j]=A[i,j]-B[i,j]


i=1,n


j=1,m


Вивід С[i,j]


Кінець

Початок


Ввід n,m,l


i=1,n


j=1,m


Ввід А[i,j]


i=1,l


j=1,n


Ввід B[i,j]


i=1,m


j=1,l


k=1,n


C[i,j]=С[i,j]+А[k,i]*В[j,k]


i=1,m


j=1,l


Вивід С[i,j]


Початок


Ввід e,n


i=1,n


j=1,n


Ввід M[i,j]


n1=2*n


i=1,n


j=1,n


так j=n ні


a[i,j]=m[i,j] так j=n+1 ні


a[i,j]=1 a[i,j]=0


i=1,n


k=i s=a[i,i]

j=1,n


t=a[j,i]


s < t так


s=t k=j


s < e так М-вироджена


j=i,n1

t=a[k,j] a[k,j]=a[i,j] a[i,j]=t/s


k=1,n


k<>i


j=n1,1


a[k,j]=a[k,j]-a[i,j]*a[k,i]


i=1,n


j=1,n


M[i,j]=A[i,j=m]


i=1,n


j=1,n


Вивід M[i,j]


Кінець

Початок


Ввід e,n


i=1,n


j=1,n


Ввід M[i,j]


n1=2*n


i=1,n


j=1,n


так j=n ні


a[i,j]=m[i,j] так j=n+1 ні


a[i,j]=1 a[i,j]=0


i=1,n


k=i s=a[i,i]

j=1,n


t=a[j,i]


s < t так


s=t k=j


s < e так М-вироджена


j=i,n1

t=a[k,j] a[k,j]=a[i,j] a[i,j]=t/s


k=1,n


k<>i


j=n1,1


a[k,j]=a[k,j]-a[i,j]*a[k,i]


i=1,n


j=1,n


M[i,j]=A[i,j=m]


i=1,n


j=1,n


k=1,n


C[i,j]=С[i,j]+B[k,i]*M[j,k]


i=1,n


j=1,n


Вивід С[i,j]


Кінець

Початок


Ввід n


i=1,n


j=1,n


Ввід S1[i,j]


Ввід М


М=90 ° M=180 ° M=270 °


i=1,n i=1,n i=1,n


j=1,n j=1,n j=1,n


S2[i,j]=S1[n-j+1,i] S2[i,j]=S1[n-i+1,n-j+1] S2]i,j]=S1[j,n-i+1]


i=1,n


j=1,n


Вивід S2[i,j]


Кінець

Program kursov;

type E=ARRAY [1..3,1..3] of real;

var A,B,C,S:E;

f,a1,b1:real;

t:integer;

mass:char;

procedure INPUT (mass:char; var A:E);

var x,y,n:integer;

begin

writeln ('‚ўi¤ Ґ«Ґ¬Ґ­вiў ¬ бЁўг ',mass);

for y:=1 to 3 do

begin

for x:=1 to 3 do

read (A[x,y]);

end;

end;

procedure SUMM (A,B:E; var S:E);

var x,y:integer;

begin

for y:=1 to 3 do

for x:=1 to 3 do

S[x,y]:=A[x,y]+B[x,y];

end;

procedure SUB (A,B,S:E; var C:E;b2:real);

var x,y,i:integer;

begin

SUMM (A,B,S);

write ('Њ бЁў C');

for y:=1 to 3 do

begin

writeln;

for x:=1 to 3 do

begin

C[x,y]:=0;

for i:=1 to 3 do

C[x,y]:=C[x,y]+(S[i,x]*B[i,y]);

write (C[x,y]:7:2);

if (x=1) AND (y=1) then b2:=C[x,y]

else

if C[x,y]<b2 then b2:=C[x,y];

end;

end;

writeln;

writeln ('Њi­i¬ «м­Ё© Ґ«Ґ¬Ґ­в ¬ ваЁжi ‘ у ',b2:7:2);

end;

begin

mass:='A';

INPUT (mass,A);

mass:='B';

INPUT (mass,B);

SUB (A,B,S,C,b1);

writeln (' ’ Ў«Ёжп §­ зҐ­м ¤«п § ¤ ­®х дг­Єжiх');

writeln (' t f');

for t:=1 to 50 do

begin

if t>40 then a1:=0.2

else

a1:=0.11;

f:=SIN(a1*t)-EXP(2*a1*t)+b1;

writeln(t:8,f:16:4);

end;

end.

Початок


Ввід n,m


i=1,n


j=1,m


Ввід А[i,j]


i=1,n


j=1,m


Ввід B[i,j]


i=1,n


j=1,m


S[i,j]=A[i,j]+B[i,j]


i=1,m


j=1,l


k=1,n


C[i,j]=С[i,j]+А[k,i]*В[j,k]


i=1,n


j=1,m


Вивід С[i,j]


так х=1,y=1 ні


b2=C[x,y]


так C[x,y]<b2 ні

b2=C[x,y]


Вивід b2


Кінець

Задача.

Надрукувати порядково матрицю С і її мінімальний елемент.

Для вирахування матриці С використати стандартну підпрограму додавання матриць і складену підпрограму множення матриць.

1,2 0,7 2,6 4,5 -6,8 -1,2

А= 3,3 0,4 2,0 В= 3,8 0,5 0,8

1,7 1,5 -0,2 1,2 0,6 0,25


-30,61 23,73 10,62

С= -36,09 -21,05 -6,26

-12,68 6,68 3,34

Оценить/Добавить комментарий
Имя
Оценка
Комментарии:
Привет студентам) если возникают трудности с любой работой (от реферата и контрольных до диплома), можете обратиться на FAST-REFERAT.RU , я там обычно заказываю, все качественно и в срок) в любом случае попробуйте, за спрос денег не берут)
Olya23:55:10 26 августа 2019
.
.23:55:09 26 августа 2019
.
.23:55:08 26 августа 2019
.
.23:55:08 26 августа 2019
.
.23:55:07 26 августа 2019

Смотреть все комментарии (13)
Работы, похожие на Реферат: Структуровані типи даних Операції над двомірними масивами

Назад
Меню
Главная
Рефераты
Благодарности
Опрос
Станете ли вы заказывать работу за деньги, если не найдете ее в Интернете?

Да, в любом случае.
Да, но только в случае крайней необходимости.
Возможно, в зависимости от цены.
Нет, напишу его сам.
Нет, забью.



Результаты(294402)
Комментарии (4230)
Copyright © 2005 - 2024 BestReferat.ru / реклама на сайте