This is the java implementation of multiplication of two matrices consisting of complex numbers. Complex numbers are of the form a+bi.
Here is the source code of the Java Program to Perform Complex Number Multiplication. The Java program is successfully compiled and run on a Windows system. The program output is also shown below.
//This is a sample program to find the multiplication of two matrices consisting of complex numbers of any dimension
import java.util.Scanner;
public class Complex_Multiplication_Matrix
{
private double real=0.0, img=0.0;
public Complex_Multiplication_Matrix(double real, double img)
{
this.real = real;
this.img = img;
}
public Complex_Multiplication_Matrix()
{
this.real = 0;
this.img = 0;
}
public Complex_Multiplication_Matrix complex_Form(double re, double im)
{
Complex_Multiplication_Matrix res = new Complex_Multiplication_Matrix();
res.real = re;
res.img = im;
return res;
}
public Complex_Multiplication_Matrix multiplication(Complex_Multiplication_Matrix C2)
{
Complex_Multiplication_Matrix Res = new Complex_Multiplication_Matrix();
Res.real = (this.real * C2.real) - (this.img * C2.img);
Res.img = (this.real * C2.img) + (this.img * C2.real);
return Res;
}
public Complex_Multiplication_Matrix addtion(Complex_Multiplication_Matrix C2)
{
Complex_Multiplication_Matrix Res = new Complex_Multiplication_Matrix();
this.real += C2.real;
this.img += C2.img;
Res.real = this.real;
Res.img = this.img;
return Res;
}
public Complex_Multiplication_Matrix[][] matrix_multiplication(Complex_Multiplication_Matrix[][] a, Complex_Multiplication_Matrix[][] b, Complex_Multiplication_Matrix[][] res, int n)
{
for (int i = 0; i < n; i++)
for (int j = 0; j < n; j++)
for (int k = 0; k < n; k++)
res[i][j] = res[i][j].addtion(a[i][k].multiplication(b[k][j]));
return res;
}
public static void main(String args[])
{
Scanner sc = new Scanner(System.in);
System.out.println("Enter the dimension of the square matrix: ");
int n = sc.nextInt();
double re,im;
Complex_Multiplication_Matrix[][] a = new Complex_Multiplication_Matrix[n][n];
Complex_Multiplication_Matrix[][] b = new Complex_Multiplication_Matrix[n][n];
Complex_Multiplication_Matrix[][] res = new Complex_Multiplication_Matrix[n][n];
Complex_Multiplication_Matrix C = new Complex_Multiplication_Matrix();
System.out.println("Enter the complex elements of 1st matrix: ");
for(int i=0; i<n; i++)
{
for(int j=0; j<n; j++)
{
re = sc.nextDouble();
im = sc.nextDouble();
a[i][j] = C.complex_Form(re, im);
}
}
System.out.println("Enter the complex elements of matrix: ");
for(int i=0; i<n; i++)
{
for(int j=0; j<n; j++)
{
re = sc.nextDouble();
im = sc.nextDouble();
b[i][j] = C.complex_Form(re, im);
}
}
for(int i=0; i<n; i++)
{
for(int j=0; j<n; j++)
{
re = 0.0;
im = 0.0;
res[i][j] = C.complex_Form(re, im);
}
}
res = C.matrix_multiplication(a, b, res, n);
System.out.println("The Multiplication is:");
for(int i=0; i<n; i++)
{
for(int j=0; j<n; j++)
System.out.print(res[i][j].real+"+"+res[i][j].img+"i ");
System.out.println();
}
sc.close();
}
}
Output:
$ javac Complex_Multiplication_Matrix.java $ java Complex_Multiplication_Matrix Enter the dimension of the square matrix: 2 Enter the complex elements of matrix: 1 2 1 2 1 2 1 2 Enter the complex elements of matrix: 1 2 1 2 1 2 1 2 The Multiplication is: -6.0+8.0i -6.0+8.0i -6.0+8.0i -6.0+8.0i
Related posts:
Java Program to Check the Connectivity of Graph Using BFS
Mệnh đề if-else trong java
Spring Boot - Unit Test Cases
Removing all Nulls from a List in Java
Spring Cloud – Securing Services
Java Program to Generate Random Numbers Using Probability Distribution Function
HashSet trong Java hoạt động như thế nào?
A Guide to Spring Cloud Netflix – Hystrix
Java Program to Find Transitive Closure of a Graph
Java Program to Implement Gauss Seidel Method
Chuyển đổi giữa các kiểu dữ liệu trong Java
Converting String to Stream of chars
Multi Dimensional ArrayList in Java
Java Program to Find All Pairs Shortest Path
Spring Data JPA @Modifying Annotation
Spring Boot - Twilio
Spring Data JPA Delete and Relationships
Hướng dẫn Java Design Pattern – Proxy
Runnable vs. Callable in Java
ArrayList trong java
HttpClient Timeout
Guide to java.util.concurrent.Locks
Using the Not Operator in If Conditions in Java
Queue và PriorityQueue trong Java
Java Program to implement Array Deque
Overflow and Underflow in Java
Map Interface trong java
Hướng dẫn Java Design Pattern – Observer
Compare Two JSON Objects with Jackson
Java Program to Implement Sorted Doubly Linked List
Chuyển đổi Array sang ArrayList và ngược lại
Request Method Not Supported (405) in Spring