difference-of-squares
This commit is contained in:
16
difference-of-squares/src/difference_of_squares.gleam
Normal file
16
difference-of-squares/src/difference_of_squares.gleam
Normal file
@@ -0,0 +1,16 @@
|
||||
pub fn square_of_sum(n: Int) -> Int {
|
||||
let sum = sum_to(n)
|
||||
sum * sum
|
||||
}
|
||||
|
||||
fn sum_to(n: Int) -> Int {
|
||||
n * { n + 1 } / 2
|
||||
}
|
||||
|
||||
pub fn sum_of_squares(n: Int) -> Int {
|
||||
n * { n + 1 } * { 2 * n + 1 } / 6
|
||||
}
|
||||
|
||||
pub fn difference(n: Int) -> Int {
|
||||
square_of_sum(n) - sum_of_squares(n)
|
||||
}
|
||||
Reference in New Issue
Block a user