Haskell 006

This commit is contained in:
Correl Roush 2011-10-11 20:30:29 -04:00
parent 9a94e60e14
commit 19d8515416

20
haskell/e006.hs Normal file
View file

@ -0,0 +1,20 @@
{- What is the difference between the sum of the squares and the square of the sums?
The sum of the squares of the first ten natural numbers is,
12 + 22 + ... + 102 = 385
The square of the sum of the first ten natural numbers is,
(1 + 2 + ... + 10)2 = 552 = 3025
Hence the difference between the sum of the squares of the first ten natural numbers and the square of the sum is 3025 385 = 2640.
Find the difference between the sum of the squares of the first one hundred natural numbers and the square of the sum.
-}
import Text.Printf
squarediff n = do
let squares = sum (map (^2) [1..n])
let sums = sum [1..n] ^ 2
sums - squares
main = do
printf "Difference between the sum of the squares and square of the sum of the first ten natural numbers is: %d\n" (squarediff 10 :: Integer)
printf "Difference between the sum of the squares and square of the sum of the first hundred natural numbers is: %d\n" (squarediff 100 :: Integer)