Въведение в матрично умножение в Java

Матриците в Java се съхраняват в масиви. Съществуват едномерни масиви и двумерни масиви, които съхраняват стойности под формата на матрици в размерите, известни като масиви. В едномерните масиви има само числа, съхранени в едно измерение, докато в двумерните масиви числата се съхраняват под формата на редове и колони. Матриците могат да се използват за добавяне, изваждане и умножение на числа в езика за програмиране на Java. Матричното умножение е една от най-сложните задачи в методологията на програмиране на Java. В тази статия трябва да извършим матрично умножение в Java и да покажем как можем да умножим две матрици и да осигурим разумен изход.

Обща методология

Умножението на матрицата в езика за програмиране на Java се извършва по много прост начин. Първо въвеждаме числата в първия двумерен масив и след това въвеждаме числата на елементите във втория двумерен масив. Числата се добавят по ред, което означава, че първият ред се създава, след това се създават числата във втория ред и т.н. Тогава втората матрица се създава по подобен начин и след това започваме да умножаваме числата в матриците.

Примери за матрично умножение в Java

По-долу са примери за матрично умножение

Пример №1

В кодиращия пример виждаме как се въвеждат две матрици по ред и след това се извършва умножението на матрицата. Кодът за умножение на две матрици е показан по-долу. Има три масива, които са декларирани. Продуктът от първата и втората матрици е показан вътре в третата матрица. Тогава матрицата се показва като изход, който е продукт на две матрици в масива.

import java.util.Scanner;
public class MatixMultiplication
(
public static void main(String args())
(
int n;
Scanner input = new Scanner(System.in);
System.out.println("Enter the number of rows and columns of the matrices. They must be equal.");
n = input.nextInt();
int()() a = new int(n)(n);
int()() b = new int(n)(n);
int()() c = new int(n)(n);
System.out.println("Enter the numbers of the first matrix. Numbers will be added row wise \n");
for (int i = 0; i < n; i++)
(
for (int j = 0; j < n; j++)
(
a(i)(j) = input.nextInt();
)
)
System.out.println("Enter the numbers of the 2nd matrix. Numbers will be added row wise. \n");
for (int i = 0; i < n; i++)
(
for (int j = 0; j < n; j++)
(
b(i)(j) = input.nextInt();
)
)
System.out.println("Generating the multiplication of matrices…..");
for (int i = 0; i < n; i++)
(
for (int j = 0; j < n; j++)
(
for (int k = 0; k < n; k++)
(
c(i)(j) = c(i)(j) + a(i)(k) * b(k)(j);
)
)
)
System.out.println("The product of the matrices is shown as below");
for (int i = 0; i < n; i++)
(
for (int j = 0; j < n; j++)
(
System.out.print(c(i)(j) + " ");
)
System.out.println();
)
input.close();
)
)

Показан е изходът за 2 * 2 матрица. Първата матрица се състои от елементи като (1, 2

3, 4)

а втората матрица също съдържа същите елементи. В извадката на извадката забелязваме умножаването на матриците и извадката на извадката. Елементите на матрицата се произвеждат по много приятен начин. Получената продукция

(1, 2 (1, 2 (7, 10

3, 4) * 3, 4) = 15, 22)

продукция

Пример №2

В кодиращия пример 2 имаме същата програма, но сега използваме триизмерни масиви за умножение. Сега използваме 3 * 3 матрично умножение и показваме изхода в друг триизмерен масив.

import java.util.Scanner;
public class Matix
(
public static void main(String args())
(
int n;
Scanner input = new Scanner(System.in);
System.out.println("Enter the number of rows and columns of the matrices. They must be equal.");
n = input.nextInt();
int()() a = new int(n)(n);
int()() b = new int(n)(n);
int()() c = new int(n)(n);
System.out.println("Enter the numbers of the first matrix. Numbers will be added row wise \n");
for (int i = 0; i < n; i++)
(
for (int j = 0; j < n; j++)
(
a(i)(j) = input.nextInt();
)
)
System.out.println("Enter the numbers of the 2nd matrix. Numbers will be added row wise. \n");
for (int z = 0; z < n; z++)
(
for (int k = 0; k < n; k++)
(
b(z)(k) = input.nextInt();
)
)
System.out.println("Generating the multiplication of matrices…..");
for (int i = 0; i < n; i++)
(
for (int j = 0; j < n; j++)
(
for (int k = 0; k < n; k++)
(
c(i)(j) = c(i)(j) + a(i)(k) * b(k)(j);
)
)
)
System.out.println("The product of the matrices is shown as below");
for (int k = 0; k < n; k++)
(
for (int l = 0; l < n; l++)
(
System.out.print(c(k)(l) + " ");
)
System.out.println();
)
input.close();
)
)

От втория примерен код отпечатваме две матрици 3 * 3. Първата матрица е (1, 1, 1

1, 1, 1

1, 1, 1)

и втората матрица също е същата. Матричното умножение се генерира по следните начини

(1, 1, 1 (1, 1, 1 (3, 3, 3

1, 1, 1 * 1, 1, 1 = 3, 3, 3

1, 1, 1) 1, 1, 1) 3, 3, 3)

продукция

заключение

В тази статия виждаме умножаването на 2 * 2 матрица и 3 * 3 матрица, както и изходът се показва по много хубав начин. Резултатите са ясно дадени. Използвайки матрично умножение, можем също да създадем 4 * 4 умножение на матрица. Базата се пита в първата стъпка на програмата. Можем да създадем и 5 * 5, 6 * 6 матрици. Повече основата е сложността на програмата.

Обаче простото умножение на матриците е много полезно при изчисляване на отражението на точка с оста X, Y-ос или Z-ос като ос на отражение. Тези прости понятия се използват в координатна геометрия и се използват при математическо моделиране на приложения за геометрия.

Препоръчителни статии

Това е ръководство за матрично умножение в Java. Тук обсъждаме въвеждането, Общата методология и примери за матрично умножение в Java. Можете също да прегледате и другите ни предложени статии, за да научите повече -

  1. Конвенции за именуване на Java
  2. Претоварване и отмяна в Java
  3. Статична ключова дума в Java
  4. Променливи в JavaScript