diff --git a/exercises/difference-of-squares/difference_of_squares.py b/exercises/difference-of-squares/difference_of_squares.py index e5f44fc767..2b2ec94480 100644 --- a/exercises/difference-of-squares/difference_of_squares.py +++ b/exercises/difference-of-squares/difference_of_squares.py @@ -1,10 +1,10 @@ -def square_of_sum(count): +def square_of_sum(number): pass -def sum_of_squares(count): +def sum_of_squares(number): pass -def difference(count): +def difference_of_squares(number): pass diff --git a/exercises/difference-of-squares/difference_of_squares_test.py b/exercises/difference-of-squares/difference_of_squares_test.py index 8c87403625..1020f8d283 100644 --- a/exercises/difference-of-squares/difference_of_squares_test.py +++ b/exercises/difference-of-squares/difference_of_squares_test.py @@ -1,6 +1,10 @@ import unittest -from difference_of_squares import difference, square_of_sum, sum_of_squares +from difference_of_squares import ( + difference_of_squares, + square_of_sum, + sum_of_squares +) # Tests adapted from `problem-specifications//canonical-data.json` @ v1.2.0 @@ -25,13 +29,13 @@ def test_sum_of_squares_100(self): self.assertEqual(sum_of_squares(100), 338350) def test_difference_of_squares_1(self): - self.assertEqual(difference(1), 0) + self.assertEqual(difference_of_squares(1), 0) def test_difference_of_squares_5(self): - self.assertEqual(difference(5), 170) + self.assertEqual(difference_of_squares(5), 170) def test_difference_of_squares_100(self): - self.assertEqual(difference(100), 25164150) + self.assertEqual(difference_of_squares(100), 25164150) if __name__ == '__main__': diff --git a/exercises/difference-of-squares/example.py b/exercises/difference-of-squares/example.py index 89c6a0ea25..5879a75a96 100644 --- a/exercises/difference-of-squares/example.py +++ b/exercises/difference-of-squares/example.py @@ -1,11 +1,12 @@ -def square_of_sum(count): - sum_ = count * (count + 1) / 2 +def square_of_sum(number): + sum_ = number * (number + 1) / 2 return sum_ * sum_ -def sum_of_squares(count): - return sum(m * m for m in range(count + 1)) +def sum_of_squares(number): + numerator = number * (number + 1) * (2 * number + 1) + return numerator / 6 -def difference(count): - return square_of_sum(count) - sum_of_squares(count) +def difference_of_squares(number): + return square_of_sum(number) - sum_of_squares(number)