-
Notifications
You must be signed in to change notification settings - Fork 1
/
ComplexConverter.java
74 lines (54 loc) · 988 Bytes
/
ComplexConverter.java
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
import java.io.*;
class ComplexNo
{
double real,imaginary;
ComplexNo()
{
real=0;
imaginary=0;
}
}
class ComplexConverter
{
static InputStreamReader d;
static BufferedReader input;
ComplexNo cx;
double r,theta;
char angle;
ComplexConverter()throws IOException
{
d=new InputStreamReader(System.in);
input=new BufferedReader(d);
r=0;
theta=0;
cx=new ComplexNo();
angle='/';
driver();
}
void driver()throws IOException
{
takeInput();
compute();
display();
}
void takeInput()throws IOException
{
System.out.println("FORM x+iy");
System.out.println("Enter x");
cx.real=Double.parseDouble(input.readLine());
System.out.println("Enter y");
cx.imaginary=Double.parseDouble(input.readLine());
}
void compute()
{
double x=cx.real;
double y=cx.imaginary;
r=Math.sqrt((x*x)+(y*y));
theta=Math.atan((y/x)); // NOTE: theta is in radians
theta*=(180/Math.PI);
}
void display()
{
System.out.println(r+""+angle+""+theta);
}
}