def triangulars():
    n = 1
    tn = 1
    while True:
        yield tn
        n = n + 1
        tn = tn + n

def quants_cal_sumar(v):
    q = 0
    s = 0
    for t in triangulars():
        if s >= v:
            break
        s = s + t
        q = q + 1
    return q

def llista_mespetits(v):
    r = []
    for t in triangulars():
        if t > v:
            break
        r.append(t)
    return r

def mitjana_parells(v):
    np = 0
    sp = 0
    for t in triangulars():
        if t > v:
            break
        if t%2 == 0:
            sp = sp + t
            np = np + 1
    return sp/np

def es_triangular(n):
    for b, t in enumerate(triangulars(), 1):
        if t >= n:
            break
    if t == n:
        r = b
    else:
        r = 0
    return r
