Question: 
Write a python function to find the largest prime factor of a given number.


Model's Code:
def max_Prime_Factors(n):
    if n <= 1:
        return None
    max_prime = -1
    while n % 2 == 0:
        max_prime = 2
        n //= 2
    for i in range(3, int(n**0.5) + 1, 2):
        while n % i == 0:
            max_prime = i
            n //= i
    if n > 2:
        max_prime = n
    return max_prime



Sample Correct Code:
import math 
def max_Prime_Factors (n): 
    maxPrime = -1 
    while n%2 == 0: 
        maxPrime = 2
        n >>= 1    
    for i in range(3,int(math.sqrt(n))+1,2): 
        while n % i == 0: 
            maxPrime = i 
            n = n / i 
    if n > 2: 
        maxPrime = n  
    return int(maxPrime)


Asserts:
assert max_Prime_Factors(15) == 5
assert max_Prime_Factors(6) == 3
assert max_Prime_Factors(2) == 2


Tests:
Test 1 of 3: PASS
Test 2 of 3: PASS
Test 3 of 3: PASS

Test 32 of 974: 25/32 (78.125%): success