Hackerrank Polar Coordinates Solution
2 min read

Hackerrank Polar Coordinates Solution

Hackerrank Polar Coordinates Solution

Polar coordinates are an alternative way of representing Cartesian coordinates or Complex Numbers.

A complex number

is completely determined by its real part  and imaginary part .
Here,  is the imaginary unit.

A polar coordinate ()

is completely determined by modulus  and phase angle .

If we convert complex number  to its polar coordinate, we find:
: Distance from  to origin, i.e.,
: Counter clockwise angle measured from the positive -axis to the line segment that joins  to the origin.

Python's cmath module provides access to the mathematical functions for complex numbers.

This tool returns the phase of complex number  (also known as the argument of ).>>> phase(complex(-1.0, 0.0))3.1415926535897931

This tool returns the modulus (absolute value) of complex number .>>> abs(complex(-1.0, 0.0))1.0

You are given a complex . Your task is to convert it to polar coordinates.

Input Format

A single line containing the complex number . Note: complex() function can be used in python to convert the input as a complex number.


Given number is a valid complex number

Output Format

Output two lines:
The first line should contain the value of .
The second line should contain the value of .

Sample Input


Sample Output


Note: The output should be correct up to 3 decimal places.

Solution in python3

Approach 1.

import cmath
c = complex(input())

Approach 2.

import cmath
c = complex(input().strip())
print("%.3f\n%.3f" % (cmath.polar(c)))

Solution in python

Approach 1.

import cmath
c = raw_input()
print abs(complex(c))
print cmath.phase(complex(c))

Approach 2.

from math import atan2
z = complex(input())
x,y = z.real, z.imag
r = (x**2+y**2)**.5
phi = atan2(y,x)
print r
print phi

Approach 3.

import sys,cmath
if sys.version_info[0]>=3: raw_input=input

Enjoying these posts? Subscribe for more

Adblocker detected! Please consider reading this notice.

We've detected that you are using AdBlock Plus or some other adblocking software which is preventing the page from fully loading.

That's okay. But without advertising-income, we can't keep making this site awesome.

We don't have any banner, Flash, animation, obnoxious sound, or popup ad. We do not implement these annoying types of ads!

We need money to operate the site, and almost all of it comes from our online advertising.

Please add thepoorcoder.com to your ad blocking whitelist or disable your adblocking software.