From 5a4a28adbcfca2993a39a00bf37d0f7de5a39ce1 Mon Sep 17 00:00:00 2001 From: Muskan Date: Thu, 16 Oct 2025 23:56:27 +0530 Subject: [PATCH 1/5] added complex number multiplication code in the string folder --- .../strings/ComplexNumberMultiplication.java | 65 +++++++++++++++++++ 1 file changed, 65 insertions(+) create mode 100644 src/main/java/com/thealgorithms/strings/ComplexNumberMultiplication.java diff --git a/src/main/java/com/thealgorithms/strings/ComplexNumberMultiplication.java b/src/main/java/com/thealgorithms/strings/ComplexNumberMultiplication.java new file mode 100644 index 000000000000..4a4eeda37cfd --- /dev/null +++ b/src/main/java/com/thealgorithms/strings/ComplexNumberMultiplication.java @@ -0,0 +1,65 @@ +package com.thealgorithms.strings; + +import java.util.Scanner; + +/** + * Implementation of complex number multiplication. + * + * Given two strings representing complex numbers in the form "a+bi" and "c+di", + * this class provides a method to multiply them and return the result + * as a string in the same format. + * + * Example: + * Input: "1+1i", "1+1i" + * Output: "0+2i" + * + * + * Formula used: + * (a + bi) × (c + di) = (ac - bd) + (ad + bc)i + **/ + +public final class ComplexNumberMultiplication { + + // Private constructor to prevent instantiation + private ComplexNumberMultiplication() { + } + + /** + * Multiplies two complex numbers represented as strings. + * + * @param num1 The first complex number in the form "a+bi". + * @param num2 The second complex number in the form "c+di". + * @return The product of the two complex numbers as a string in the form "x+yi". + */ + public static String complexNumberMultiply(String num1, String num2) { + // Split real and imaginary parts + String[] parts1 = num1.split("\\+"); + String[] parts2 = num2.split("\\+"); + + int a = Integer.parseInt(parts1[0]); + int b = Integer.parseInt(parts1[1].replace("i", "")); + int c = Integer.parseInt(parts2[0]); + int d = Integer.parseInt(parts2[1].replace("i", "")); + + // Apply the formula: (a+bi)*(c+di) = (ac - bd) + (ad + bc)i + int real = a * c - b * d; + int imag = a * d + b * c; + + return real + "+" + imag + "i"; + } + + public static void main(String[] args) { + Scanner sc = new Scanner(System.in); + + System.out.print("Enter first complex number (a+bi): "); + String num1 = sc.nextLine(); + + System.out.print("Enter second complex number (c+di): "); + String num2 = sc.nextLine(); + + String result = complexNumberMultiply(num1, num2); + System.out.println("Result: " + result); + + sc.close(); + } +} From a3d7a979bba2cdc5f680d1dc57d1549d8c3e4504 Mon Sep 17 00:00:00 2001 From: Muskan Singh Date: Fri, 17 Oct 2025 00:07:46 +0530 Subject: [PATCH 2/5] Refactor comments in ComplexNumberMultiplication.java Removed unnecessary whitespace and comments for clarity. --- .../com/thealgorithms/strings/ComplexNumberMultiplication.java | 2 -- 1 file changed, 2 deletions(-) diff --git a/src/main/java/com/thealgorithms/strings/ComplexNumberMultiplication.java b/src/main/java/com/thealgorithms/strings/ComplexNumberMultiplication.java index 4a4eeda37cfd..af84ba11f41a 100644 --- a/src/main/java/com/thealgorithms/strings/ComplexNumberMultiplication.java +++ b/src/main/java/com/thealgorithms/strings/ComplexNumberMultiplication.java @@ -4,7 +4,6 @@ /** * Implementation of complex number multiplication. - * * Given two strings representing complex numbers in the form "a+bi" and "c+di", * this class provides a method to multiply them and return the result * as a string in the same format. @@ -12,7 +11,6 @@ * Example: * Input: "1+1i", "1+1i" * Output: "0+2i" - * * * Formula used: * (a + bi) × (c + di) = (ac - bd) + (ad + bc)i From 0ebe287d3406c22e9944051ce3cc7ef53a3f7799 Mon Sep 17 00:00:00 2001 From: Muskan Singh Date: Fri, 17 Oct 2025 00:13:01 +0530 Subject: [PATCH 3/5] Remove main method from ComplexNumberMultiplication Removed the main method that handles user input and output. --- .../strings/ComplexNumberMultiplication.java | 14 -------------- 1 file changed, 14 deletions(-) diff --git a/src/main/java/com/thealgorithms/strings/ComplexNumberMultiplication.java b/src/main/java/com/thealgorithms/strings/ComplexNumberMultiplication.java index af84ba11f41a..f1cb14787c6a 100644 --- a/src/main/java/com/thealgorithms/strings/ComplexNumberMultiplication.java +++ b/src/main/java/com/thealgorithms/strings/ComplexNumberMultiplication.java @@ -46,18 +46,4 @@ public static String complexNumberMultiply(String num1, String num2) { return real + "+" + imag + "i"; } - public static void main(String[] args) { - Scanner sc = new Scanner(System.in); - - System.out.print("Enter first complex number (a+bi): "); - String num1 = sc.nextLine(); - - System.out.print("Enter second complex number (c+di): "); - String num2 = sc.nextLine(); - - String result = complexNumberMultiply(num1, num2); - System.out.println("Result: " + result); - - sc.close(); - } } From 4ba2fc5f7b55a2a5ffa17a53a7fb984c1302ed66 Mon Sep 17 00:00:00 2001 From: Muskan Singh Date: Fri, 17 Oct 2025 00:14:55 +0530 Subject: [PATCH 4/5] Remove unnecessary blank line in ComplexNumberMultiplication --- .../com/thealgorithms/strings/ComplexNumberMultiplication.java | 1 - 1 file changed, 1 deletion(-) diff --git a/src/main/java/com/thealgorithms/strings/ComplexNumberMultiplication.java b/src/main/java/com/thealgorithms/strings/ComplexNumberMultiplication.java index f1cb14787c6a..dc2fc4359d7a 100644 --- a/src/main/java/com/thealgorithms/strings/ComplexNumberMultiplication.java +++ b/src/main/java/com/thealgorithms/strings/ComplexNumberMultiplication.java @@ -45,5 +45,4 @@ public static String complexNumberMultiply(String num1, String num2) { return real + "+" + imag + "i"; } - } From 6cc770da9fb86a8ff82f5311b21d6da08b40dbef Mon Sep 17 00:00:00 2001 From: Muskan Singh Date: Fri, 17 Oct 2025 00:17:26 +0530 Subject: [PATCH 5/5] Remove unused import statement for Scanner --- .../com/thealgorithms/strings/ComplexNumberMultiplication.java | 2 -- 1 file changed, 2 deletions(-) diff --git a/src/main/java/com/thealgorithms/strings/ComplexNumberMultiplication.java b/src/main/java/com/thealgorithms/strings/ComplexNumberMultiplication.java index dc2fc4359d7a..1b5f5f39848d 100644 --- a/src/main/java/com/thealgorithms/strings/ComplexNumberMultiplication.java +++ b/src/main/java/com/thealgorithms/strings/ComplexNumberMultiplication.java @@ -1,7 +1,5 @@ package com.thealgorithms.strings; -import java.util.Scanner; - /** * Implementation of complex number multiplication. * Given two strings representing complex numbers in the form "a+bi" and "c+di",