The challenge
Complete the square sum function so that it squares each number passed into it and then sums the results together.
For example, for [1, 2, 2]
it should return 9
because 1^2 + 2^2 + 2^2 = 9
.
Complete the square sum function so that it squares each number passed into it and then sums the results together.
For example, for [1, 2, 2]
it should return 9
because 1^2 + 2^2 + 2^2 = 9
.
The solution in Python
Option 1:
def square_sum(numbers):
out = []
for i in numbers:
out.append(i**2)
return sum(out)
Option 2:
def square_sum(numbers):
return sum(x ** 2 for x in numbers)
Option 3:
def square_sum(numbers):
return sum(map(lambda x: x**2,numbers))
Test cases to validate our solution
import test
from solution import square_sum
@test.describe("Fixed Tests")
def basic_tests():
@test.it('Basic Test Cases')
def basic_test_cases():
test.assert_equals(square_sum([1,2]), 5)
test.assert_equals(square_sum([0, 3, 4, 5]), 50)
test.assert_equals(square_sum([]), 0)
test.assert_equals(square_sum([-1,-2]), 5)
test.assert_equals(square_sum([-1,0,1]), 2)