Modulus of a Complex Number

Given a complex number z, the task is to determine the modulus of this complex number.

Note: Given a complex number z = a + ib the modulus is denoted by |z| and is defined as \left | z \right | = \sqrt{a^{2}+b^{2}}

Examples:

Input: z = 3 + 4i
Output: 5
|z| = (32 + 42)1/2 = (9 + 16)1/2 = 5

Input: z = 6 – 8i
Output: 10
Explanation:
|z| = (62 + (-8)2)1/2 = (36 + 64)1/2 = 10



Approach: For the given complex number z = x + iy:

  1. Find the real and imaginary parts, x and y respectively.
    If z = x +iy
    
    Real part = x
    Imaginary part = y
    
  2. Find the square of x and y separately.
    Square of Real part = x2
    Square of Imaginary part = y2
    
  3. Find the sum of the computed squares.
    Sum = Square of Real part 
          + Square of Imaginary part
        = x2 + y2
    
  4. Find the square root of the computed sum. This will be the modulus of the given complex number
    \left | z \right | = \sqrt{x^{2}+y^{2}}

Below is the implementation of the above approach:

C++

filter_none

edit
close

play_arrow

link
brightness_4
code

// C++ program to find the
// Modulus of a Complex Number
  
#include <bits/stdc++.h>
using namespace std;
  
// Function to find modulus
// of a complex number
void findModulo(string s)
{
    int l = s.length();
    int i, modulus = 0;
  
    // Storing the index of '+'
    if (s.find('+') < l) {
        i = s.find('+');
    }
    // Storing the index of '-'
    else {
        i = s.find('-');
    }
  
    // Finding the real part
    // of the complex number
    string real = s.substr(0, i);
  
    // Finding the imaginary part
    // of the complex number
    string imaginary = s.substr(i + 1, l - 1);
  
    int x = stoi(real);
    int y = stoi(imaginary);
  
    cout << sqrt(x * x + y * y) << "\n";
}
  
// Driver code
int main()
{
    string s = "3+4i";
  
    findModulo(s);
  
    return 0;
}

chevron_right


Java

filter_none

edit
close

play_arrow

link
brightness_4
code

// Java program to find the
// Modulus of a Complex Number
import java.util.*;
  
class GFG{
   
// Function to find modulus
// of a complex number
static void findModulo(String s)
{
    int l = s.length();
    int i, modulus = 0;
   
    // Storing the index of '+'
    if (s.contains("+")) {
        i = s.indexOf("+");
    }
  
    // Storing the index of '-'
    else {
        i = s.indexOf("-");
    }
   
    // Finding the real part
    // of the complex number
    String real = s.substring(0, i);
   
    // Finding the imaginary part
    // of the complex number
    String imaginary = s.substring(i + 1, l-1);
   
    int x = Integer.parseInt(real);
    int y = Integer.parseInt(imaginary);
   
    System.out.print(Math.sqrt(x * x + y * y)+ "\n");
}
   
// Driver code
public static void main(String[] args)
{
    String s = "3+4i";
   
    findModulo(s);
}
}
  
// This code is contributed by Rajput-Ji

chevron_right


Python 3

filter_none

edit
close

play_arrow

link
brightness_4
code

# Python 3 program to find the
# Modulus of a Complex Number
from math import sqrt
  
# Function to find modulus
# of a complex number
def findModulo(s):
    l = len(s)
    modulus = 0
  
    # Storing the index of '+'
    if ( '+' in s ):
        i = s.index('+')
  
    # Storing the index of '-'
    else:
        i = s.index('-')
  
    # Finding the real part
    # of the complex number
    real = s[0:i]
  
    # Finding the imaginary part
    # of the complex number
    imaginary = s[i + 1:l - 1]
  
    x = int(real)
    y = int(imaginary)
  
    print(int(sqrt(x * x + y * y)))
  
# Driver code
if __name__ == '__main__':
    s = "3+4i"
  
    findModulo(s)
  
# This code is contributed by Surendra_Gangwar

chevron_right


C#

filter_none

edit
close

play_arrow

link
brightness_4
code

// C# program to find the
// Modulus of a Complex Number
using System;
  
public class GFG{
    
// Function to find modulus
// of a complex number
static void findModulo(String s)
{
    int l = s.Length;
    int i;
    
    // Storing the index of '+'
    if (s.Contains("+")) {
        i = s.IndexOf("+");
    }
   
    // Storing the index of '-'
    else {
        i = s.IndexOf("-");
    }
    
    // Finding the real part
    // of the complex number
    String real = s.Substring(0, i);
    
    // Finding the imaginary part
    // of the complex number
    String imaginary = s.Substring(i + 1, l-i - 2);
    
    int x = Int32.Parse(real);
    int y = Int32.Parse(imaginary);
    
    Console.Write(Math.Sqrt(x * x + y * y)+ "\n");
}
    
// Driver code
public static void Main(String[] args)
{
    String s = "3+4i";
    
    findModulo(s);
}
}
// This code contributed by sapnasingh4991

chevron_right


Output:

5

Don’t stop now and take your learning to the next level. Learn all the important concepts of Data Structures and Algorithms with the help of the most trusted course: DSA Self Paced. Become industry ready at a student-friendly price.




My Personal Notes arrow_drop_up

Check out this Author's contributed articles.

If you like GeeksforGeeks and would like to contribute, you can also write an article using contribute.geeksforgeeks.org or mail your article to contribute@geeksforgeeks.org. See your article appearing on the GeeksforGeeks main page and help other Geeks.

Please Improve this article if you find anything incorrect by clicking on the "Improve Article" button below.