Complex Number Class (Կոմպլեքս թվերի դաս)
Ձեզ հանձնարարված է ստեղծել ComplexNumber
կլաս, որն ունի բարդ թվին բնորոշ վարքագիծ: Կոմպլեքս թիվն այն թիվն է, որը կարող է արտահայտվել a + bi
ձևով (այստեղ a
-ն և b
-ն իրական թվեր են, իսկ i
-ն հավասարման լուծումն է)։ Քանի որ ոչ մի իրական թիվ չի բավարարում այս հավասարմանը,
i
-ն կոչվում է երևակայական թիվ ():
Ձեր ComplexNumber
կլասը պետք է ունենա հետևյալ ատրիբուտները.
real
- Կոմպլեքս թվի իրական մասը (a
)imaginary
- Կոմպլեքս թվի երևակայական մասը (b
)
Դուք պետք է գրեք հետևյալ կախարդական մեթոդները.
__add__
- Այս մեթոդը պետք է գումարի երկու բարդ թվեր և վերադարձնի նորComplexNumber
օբյեկտ, որը ներկայացնում է-ի արդյունքը։
__sub__
- Այս մեթոդը մի բարդ թվից պետք է հանի մյուսը և վերադարձնի նորComplexNumber
օբյեկտ, որը ներկայացնում է-ի արդյունքը։
__mul__
- Այս մեթոդը պետք է բազմապատկի երկու բարդ թվեր և վերադարձնի նորComplexNumber
օբյեկտ, որը ներկայացնում է__truediv__
- Այս մեթոդը պետք է բաժանի մեկ կոմպլեքս թիվը մյուսի վրա և վերադարձնի նորComplexNumber
օբյեկտ, որը ներկայացնում է-ի արդյունքը։
Բացի թվային կախարդական մեթոդներից, դուք պետք է ունենաք նաև __str__
կախարդական մեթոդ, որը կոմպլեքս թիվը վերադարձնելու է որպես <real> + <imaginary> i
։
Մուտք | Ելք |
---|---|
| 3 + 3 i |
Constraints
Time limit: 2 seconds
Memory limit: 512 MB
Output limit: 1 MB