import july2

def calc_pi():
    sum = 0
    prev = -1
    k = 0
    while round(sum - prev, 7) != 0:
        prev = sum
        if k % 2 == 0:
            sum = sum + 1.0/((2 * k) + 1)
        else:
            sum = sum - 1.0/((2 * k) + 1)
        k = k + 1
        print(sum * 4)
    return sum * 4

def gcd(a, b):
    if b == 0:
        return a
    else:
        return gcd(b, a % b)


def factorial(num):
    if num == 1:
        return 1
    else:
        return factorial(num-1) * num


def waste_of_time(num):
    sum = 0
    while num != sum:
        sum += 1

    return sum

def only_primes(nums):
    primes = []
    
    for num in nums:
        if july2.is_prime(num):
            primes += [num]

    return primes

def only_even(nums):
    evens = []

    for num in nums:
        if num % 2 == 0:
            evens += [num]

    return evens

def print10(num):
    #while num == 10: # can cause infinite loop
    if num == 10:  # good
        print(num)


def scale_to_int(num):
    while num != int(num):
        num *= 10

    return num

def asterisk_triangle(size):
    triangle = ''
    for line in range(1, size+1):
        print('*' * line)
        triangle += ('*' * line) + '\n'

    return triangle

def solid_box(size):
    for line in range(size):
        print(size * '*')
        
        
