import matplotlib.pyplot as plt
from math import e, pi
import numpy as np


def kruznica():
    p = 1 +1j*0.001
    q = p

    X = np.array([q])

    while True:
        q = q * p
        X = np.append(X,[q])

        if 1 - q.real < 0.005 and -0.01 < q.imag < 0:
            break

    return X
    
##    fig = plt.figure()
##    ax = plt.axes()
##
##    ax.plot(X.real, X.imag)
##    fig.show()

def spirala():
    
    p = 1 +1j*0.1
    q = p

    X = np.array([q])

    for i in range(10000):
        q = q * p
        X = np.append(X,[q])

    return X

##    fig = plt.figure()
##    ax = plt.axes()
##
##    ax.plot(X.real, X.imag)
##    fig.show()

plt.figure(1)

plt.subplot(121)
X_kruh = kruznica()
plt.plot(X_kruh.real, X_kruh.imag)
##plt.yscale('kruznica')
plt.title('kruznica - q = 1+0.001j')
plt.grid(True)

plt.subplot(122)
X_spirala = spirala()
plt.plot(X_spirala.real, X_spirala.imag)
##plt.yscale('spirala')
plt.title('spirala - q = 1+0.1j')
plt.grid(True)


plt.show()
