//
// Copyright (c) 2002
// Ronald Kevin Burton
//
// Z poniższym kodem nie jest związana żadna gwarancja poprawności działania.
// Program został dołączony do książki ".NET CLR. Księga eksperta" w celu
// ilustracji koncepcji i zasad przedstawionych w tej książce. Program może być 
// używany na własne ryzyko.
//
// Przyznaje się prawo do użycia lub kopiowania tego oprogramowania do dowolnego celu
// bez konieczności ponoszenia żadnych opłat pod warunkiem, że powyższe uwagi zostaną 
// zachowane we wszystkich kopiach. Przyznaje się także prawo do modyfikacji kodu
// i dystrybucji zmodyfikowanego kodu pod warunkiem zachowania powyższych uwag
// oraz dołączenia informacji mówiącej o modyfikacji kodu.
//
//  
using System;

class Complex {
    private double real;
    private double imag;
	public Complex()
	{
		this.real = 0;
		this.imag = 0;
	}
	public Complex(double real, double imag)
	{
		this.real = real;
		this.imag = imag;
	}
	public double Real
	{
		get
		{
			return real;
		}
		set
		{
			real = value;
		}
	}
	public double Imag
	{
		get
		{
			return imag;
		}
		set
		{
			imag = value;
		}
	}
	public override string ToString()
	{
		return "(" + real + "," + imag + ")";
	}
}

class ComplexPropertyMain
{
 	public static void Main(String[] args)
	{
        Complex c = new Complex(1,2);
        Console.WriteLine("Liczba złożona:    " + c);
		Console.WriteLine("   rzeczywista:    " + c.Real);
		Console.WriteLine("       urojona: " + c.Imag);
	}
}
