0 / 0 / 0
Регистрация: 23.03.2019
Сообщений: 7

Даны две матрицы размером 3x3. Написать программу получения коммутатора AB-BA и антикоммутатора AB+BA этих матриц

11.07.2019, 22:07. Показов 2181. Ответов 1
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Даны две матрицы размером 3x3. Написать программу получения коммутатора AB-BA и антикоммутатора AB+BA этих матриц. Вычисление произведения матриц оформить в виде процедуры
0
IT_Exp
Эксперт
34794 / 4073 / 2104
Регистрация: 17.06.2006
Сообщений: 32,602
Блог
11.07.2019, 22:07
Ответы с готовыми решениями:

Даны две матрицы размером 3x3. Написать программу получения коммутатора АВ-ВА и антикоммутатора АВ+ВА этих матриц
Даны две матрицы размером 3x3. Написать программу получения коммутатора АВ-ВА и антикоммутатора АВ+ВА этих матриц. Вычисление произведения...

Даны две матрицы А(nxn) и B(nxn). Написать программу получения коммутатора АВ этих матриц.
Даны две матрицы А(nxn) и B(nxn). Написать программу получения коммутатора АВ этих матриц.

Даны две квадратные матрицы (3,3), нужно найти поэлементное произведение этих матриц
Visual Basic, матрицы я на писал, а как из записать в программу и умножить поэлементно

1
2374 / 776 / 561
Регистрация: 15.01.2019
Сообщений: 2,394
12.07.2019, 18:22
Pascal
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
program Project1;
type
  TArr = array [1..3,1..3] of integer;
 
procedure RandomInfInMatrix (var arr: TArr; narr,marr,leftval,rightval: integer);
// Процедура для заполнения двумерного массива случайными числами в заданном диапазоне.
var
   i,j: integer;
begin
for i:= 1 to narr do
    for j:= 1 to marr do
      arr[i,j]:= leftval + random(rightval - leftval + 1) ;
 
end;
 
procedure InfOutMatrix (arr: TArr; narr,marr: integer);
// Процедура для вывода элементов массива на экран.
var
   i,j: integer;
begin
  for i:= 1 to narr do
    begin
    for j:= 1 to marr do
      Write(arr[i,j]:5);
    writeln;
    end;
end;
 
 
procedure MatrixPowMatrix(arr,brr:TArr; narr: integer; var crr: TArr);
// Процедура для перемножения матрицы на матрицу (используются только квадратные матрицы).
var
  i,j,k: integer;
begin
for i:=1 to narr do
  for j:=1 to narr do
    begin
      crr[i,j]:= 0;
      for k:=1 to narr do
        crr[i,j]:= crr[i,j] + arr[i,k]*brr[k,j];
    end;
end;
 
 
procedure MatrixSubtractionAdditionMatrix(arr,brr:TArr; narr,add: integer; var crr: TArr);
// Процедура для вычитания (сложения) матрицы из матрицы (используются только квадратные матрицы).
var
  i,j: integer;
begin
    case add of
      1: begin
           for i:=1 to narr do
             for j:=1 to narr do
                crr[i,j]:= arr[i,j] - brr[i,j];
          end;
      2:  begin
           for i:=1 to narr do
             for j:=1 to narr do
                crr[i,j]:= arr[i,j] + brr[i,j];
          end;
    end;
end;
 
var
  a,b,c1,c2,c3,c4: TArr; // Переменные для хранения двумерных массивов.
  leftv: integer;        // Левая граница диапазона генератора случайных чисел.
  rightv: integer;       // Правая граница диапазона генератора случайных чисел.
 
begin
  randomize;
  leftv:= -10;                            // Значение левой границы диапазона генератора случайных чисел.
  rightv:= 10;                            // Значение правой границы диапазона генератора случайных чисел.
  RandomInfInMatrix(a,3,3,leftv,rightv);  // Заполнение матрицы А случайными числами.
  writeln('Matrix A:');
  InfOutMatrix(a,3,3);                    //  Вывод элементов матрицы А на экран.
  RandomInfInMatrix(b,3,3,leftv,rightv);  //  Заполнение матрицы В случайными числами.
  writeln('Matrix B:');
  InfOutMatrix(b,3,3);                     //  Вывод элементов матрицы В на экран.
  MatrixPowMatrix(a,b,3,c1);               //  Перемножение матрицы А на матрицу В.
  writeln('Matrix C1 = A*B:');
  InfOutMatrix(c1,3,3);                    //  Вывод элементов матрицы С1 на экран.
  MatrixPowMatrix(b,a,3,c2);               //  Перемножение матрицы В на матрицу А.
  writeln('Matrix C2 = B*A:');
  InfOutMatrix(c2,3,3);                     //   Вывод элементов матрицы С2 на экран.
  MatrixSubtractionAdditionMatrix(c1,c2,3,1,c3);   // Вычитание матрицы С2 из матрицы С1.
  writeln('Matrix C3 = AB - BA:');
  InfOutMatrix(c3,3,3);                             // Вывод элементов матрицы С3 на экран.
  MatrixSubtractionAdditionMatrix(c1,c2,3,2,c4);    //  Сложение матрицы С2 с матрицей С1.
  writeln('Matrix C4 = AB + BA:');
  InfOutMatrix(c4,3,3);                             //  Вывод элементов матрицы С4 на экран.
  readln;
end.
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
BasicMan
Эксперт
29316 / 5623 / 2384
Регистрация: 17.02.2009
Сообщений: 30,364
Блог
12.07.2019, 18:22
Помогаю со студенческими работами здесь

Даны две матрицы одинаковой размерности. Найдите сумму или разность этих матриц в зависимости от значения п
Даны две матрицы одинаковой размерности. Найдите сумму или разность этих матриц в зависимости от значения па-раметра flag. Решить с...

Даны две матрицы одинаковой размерности. Найдите сумму или разность этих матриц в зависимости от значения параметра flag.
Даны две матрицы одинаковой размерности. Найдите сумму или разность этих матриц в зависимости от значения параметра flag. Основные...

Даны две матрицы одинаковой размерности. Найти сумму или разность этих матриц в зависимости от значения параметра flag
var a:array of integer; b:array of integer; c:array of integer; m,n,i,j:integer; flag:boolean; begin ...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
2
Ответ Создать тему
Опции темы

Новые блоги и статьи
SDL3 для Desktop (MinGW): Создаём пустое окно с нуля для 2D-графики на SDL3, Си и C++
8Observer8 10.03.2026
Содержание блога Финальные проекты на Си и на C++: hello-sdl3-c. zip hello-sdl3-cpp. zip Результат:
Установка CMake и MinGW 13.1 для сборки С и C++ приложений из консоли и из Qt Creator в EXE
8Observer8 10.03.2026
Содержание блога MinGW - это коллекция инструментов для сборки приложений в EXE. CMake - это система сборки приложений. Здесь описаны базовые шаги для старта программирования с помощью CMake и. . .
Как дизайн сайта влияет на конверсию: 7 решений, которые реально повышают заявки
Neotwalker 08.03.2026
Многие до сих пор воспринимают дизайн сайта как “красивую оболочку”. На практике всё иначе: дизайн напрямую влияет на то, оставит человек заявку или уйдёт через несколько секунд. Даже если у вас. . .
Модульная разработка через nuget packages
DevAlt 07.03.2026
Сложившийся в . Net-среде способ разработки чаще всего предполагает монорепозиторий в котором находятся все исходники. При создании нового решения, мы просто добавляем нужные проекты и имеем. . .
Модульный подход на примере F#
DevAlt 06.03.2026
В блоге дяди Боба наткнулся на такое определение: В этой книге («Подход, основанный на вариантах использования») Ивар утверждает, что архитектура программного обеспечения — это структуры,. . .
Управление камерой с помощью скрипта OrbitControls.js на Three.js: Вращение, зум и панорамирование
8Observer8 05.03.2026
Содержание блога Финальная демка в браузере работает на Desktop и мобильных браузерах. Итоговый код: orbit-controls-threejs-js. zip. Сканируйте QR-код на мобильном. Вращайте камеру одним пальцем,. . .
SDL3 для Web (WebAssembly): Синхронизация спрайтов SDL3 и тел Box2D
8Observer8 04.03.2026
Содержание блога Финальная демка в браузере. Итоговый код: finish-sync-physics-sprites-sdl3-c. zip На первой гифке отладочные линии отключены, а на второй включены:. . .
SDL3 для Web (WebAssembly): Идентификация объектов на Box2D v3 - использование userData и событий коллизий
8Observer8 02.03.2026
Содержание блога Финальная демка в браузере. Итоговый код: finish-collision-events-sdl3-c. zip Сканируйте QR-код на мобильном и вы увидите, что появится джойстик для управления главным героем. . . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru