diff --git a/numpy_questions.py b/numpy_questions.py index 07a10c1..5669872 100644 --- a/numpy_questions.py +++ b/numpy_questions.py @@ -37,11 +37,12 @@ def max_index(X): If the input is not a numpy array or if the shape is not 2D. """ - i = 0 - j = 0 - - # TODO + if not isinstance(X, np.ndarray): + raise ValueError("Input must be a numpy array.") + if X.ndim != 2: + raise ValueError("Input array must be 2D.") + i, j = np.unravel_index(np.argmax(X), X.shape) return i, j @@ -64,4 +65,13 @@ def wallis_product(n_terms): """ # XXX : The n_terms is an int that corresponds to the number of # terms in the product. For example 10000. - return 0. + # return 0. + + if n_terms == 0: + return 2 + + p = 1 + for n in range(1, n_terms+1): + p *= (4*n**2) / (4*n**2 - 1) + + return 2*p