Ús de la classe complex

A més a més dels tipus int i float, Python disposa d’altres classes a representar nombres matemàtics. Una d’elles és la classe complex, que permet representar i operar amb nombres complexos.

  1. Obriu l’intèrpret de Python i proveu d’instanciar nombres complexos i fer operacions amb ells. A més a més de la documentació oficial de Python sobre tipus numèrics), podeu buscar d’alres pàgines a internet, que us ho acabaran d’aclarir.

    • Quins atributs té la classe complex?

    • Quines operacions aritmètiques suporta la classe (suma, producte, …)? Es poden operar complexos amb d’altres tipus numèrics?

    • Els operadors de comparació (== i !=, >, etc), funcionen amb complexos? Per què?

  2. Al mòdul us_complex (fitxer us_complex.py), implementeu-hi la funció següent:

    us_complex.quadrant(x)

    Donat un nombre complex x, retorna un string que indica el quadrant del pla complex on està x. El valor retornat ha de ser “I”, “II”, “III” o “IV” si x està situat en el primer, segon, tercer o quart quadrant, respectivament. Si està situat sobre un dels eixos de coordenades, ha de retornar “X” o “Y”, depenent de l’eix on estigui.

    Per exemple,

    
    >>> from us_complex import quadrant
    
    >>> quadrant(2+3j)
    'I'
    >>> quadrant(-2-3j)
    'III'
    >>> quadrant(7j)
    'Y'
    
    

    Disposeu de jocs de proves addicionals al fitxer test-complex1.txt.

  3. Al mateix mòdul us_complex, implementeu-hi la funció següent:

    us_complex.polar_a_complex(modul, angle)

    Donades unes coordenades polars modul i angle (en radians), retorna el nombre complex corresponent.

    Per exemple,

    >>> from us_complex import polar_a_complex
    
    >>> polar_a_complex(7, 0)
    (7+0j)
    >>> polar_a_complex(0, 0.8)
    0j
    >>> c = polar_a_complex(5, 1)
    >>> print('{:.4f}, {:.4f}'.format(c.real, c.imag))
    2.7015, 4.2074
    
    

    Disposeu de jocs de proves addicionals al fitxer test-complex2.txt.

Disposeu d’una solució al fitxer us_complex.py.