trackler 2.0.8.44 → 2.0.8.45
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/lib/trackler/version.rb +1 -1
- data/tracks/crystal/.github/stale.yml +0 -0
- data/tracks/purescript/.github/stale.yml +0 -0
- data/tracks/purescript/config.json +7 -0
- data/tracks/purescript/exercises/difference-of-squares/bower.json +16 -0
- data/tracks/purescript/exercises/difference-of-squares/examples/src/DifferenceOfSquares.purs +19 -0
- data/tracks/purescript/exercises/difference-of-squares/src/DifferenceOfSquares.purs +5 -0
- data/tracks/purescript/exercises/difference-of-squares/test/Main.purs +47 -0
- metadata +8 -2
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: d1c04b72d954089029c43862cf7bbb1fcf13bbbf
|
4
|
+
data.tar.gz: 452d2160fb563b8b50a3018c1269ec2906dde5b7
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 8d324682cc79c3e6abed6543b160eb1c6ace6d5d1e3d51a39a49f1e807f72d45df45a6860f8809bb883e5d475929ddb6595b2e0e124b233023dc60fce82d8aa3
|
7
|
+
data.tar.gz: 88c3251393a317be5a09b90da19931c53c7e161704e165f1a22bdb257cf3f0e91cc97c0c4f6c193f988f5d5836a9d7ab68bb6a7a9f28507896ad9fdc645de9d4
|
data/lib/trackler/version.rb
CHANGED
File without changes
|
File without changes
|
@@ -0,0 +1,16 @@
|
|
1
|
+
{
|
2
|
+
"name": "difference-of-squares",
|
3
|
+
"ignore": [
|
4
|
+
"**/.*",
|
5
|
+
"node_modules",
|
6
|
+
"bower_components",
|
7
|
+
"output"
|
8
|
+
],
|
9
|
+
"dependencies": {
|
10
|
+
"purescript-prelude": "^2.5.0"
|
11
|
+
},
|
12
|
+
"devDependencies": {
|
13
|
+
"purescript-psci-support": "^2.0.0",
|
14
|
+
"purescript-test-unit": "^10.1.0"
|
15
|
+
}
|
16
|
+
}
|
@@ -0,0 +1,19 @@
|
|
1
|
+
module DifferenceOfSquares
|
2
|
+
( differenceOfSquares
|
3
|
+
, squareOfSum
|
4
|
+
, sumOfSquares
|
5
|
+
) where
|
6
|
+
|
7
|
+
import Prelude
|
8
|
+
import Data.Array (range)
|
9
|
+
import Data.Foldable (sum)
|
10
|
+
import Data.Int (pow)
|
11
|
+
|
12
|
+
squareOfSum :: Int -> Int
|
13
|
+
squareOfSum n = sum (range 1 n) `pow` 2
|
14
|
+
|
15
|
+
sumOfSquares :: Int -> Int
|
16
|
+
sumOfSquares n = map (_ `pow` 2) (range 1 n) # sum
|
17
|
+
|
18
|
+
differenceOfSquares :: Int -> Int
|
19
|
+
differenceOfSquares n = squareOfSum n - sumOfSquares n
|
@@ -0,0 +1,47 @@
|
|
1
|
+
module Test.Main where
|
2
|
+
|
3
|
+
import Prelude
|
4
|
+
import Control.Monad.Eff (Eff)
|
5
|
+
import Data.Maybe (Maybe(..))
|
6
|
+
import Test.Unit.Assert as Assert
|
7
|
+
import Test.Unit (suite, test)
|
8
|
+
import Test.Unit.Main (runTest)
|
9
|
+
import DifferenceOfSquares (differenceOfSquares, squareOfSum, sumOfSquares)
|
10
|
+
|
11
|
+
main :: Eff _ Unit
|
12
|
+
main = runTest do
|
13
|
+
suite "Square the sum of the numbers up to the given number" do
|
14
|
+
|
15
|
+
test "square of sum 5" $
|
16
|
+
Assert.equal 225 (squareOfSum 5)
|
17
|
+
|
18
|
+
test "square of sum 10" $
|
19
|
+
Assert.equal 3025 (squareOfSum 10)
|
20
|
+
|
21
|
+
test "square of sum 100" $
|
22
|
+
Assert.equal 25502500 (squareOfSum 100)
|
23
|
+
|
24
|
+
suite "Sum the squares of the numbers up to the given number" do
|
25
|
+
|
26
|
+
test "sum of squares 5" $
|
27
|
+
Assert.equal 55 (sumOfSquares 5)
|
28
|
+
|
29
|
+
test "sum of squares 10" $
|
30
|
+
Assert.equal 385 (sumOfSquares 10)
|
31
|
+
|
32
|
+
test "sum of squares 100" $
|
33
|
+
Assert.equal 338350 (sumOfSquares 100)
|
34
|
+
|
35
|
+
suite "Subtract sum of squares from square of sums" do
|
36
|
+
|
37
|
+
test "difference of squares 0" $
|
38
|
+
Assert.equal 0 (differenceOfSquares 0)
|
39
|
+
|
40
|
+
test "difference of squares 5" $
|
41
|
+
Assert.equal 170 (differenceOfSquares 5)
|
42
|
+
|
43
|
+
test "difference of squares 10" $
|
44
|
+
Assert.equal 2640 (differenceOfSquares 10)
|
45
|
+
|
46
|
+
test "difference of squares 100" $
|
47
|
+
Assert.equal 25164150 (differenceOfSquares 100)
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: trackler
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 2.0.8.
|
4
|
+
version: 2.0.8.45
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Katrina Owen
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date: 2017-04-
|
11
|
+
date: 2017-04-09 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: rubyzip
|
@@ -1301,6 +1301,7 @@ files:
|
|
1301
1301
|
- tracks/cpp/exercises/word-count/word_count_test.cpp
|
1302
1302
|
- tracks/cpp/img/icon.png
|
1303
1303
|
- tracks/crystal/.git
|
1304
|
+
- tracks/crystal/.github/stale.yml
|
1304
1305
|
- tracks/crystal/.gitignore
|
1305
1306
|
- tracks/crystal/.travis.yml
|
1306
1307
|
- tracks/crystal/LICENSE
|
@@ -6559,6 +6560,7 @@ files:
|
|
6559
6560
|
- tracks/prolog/img/.keep
|
6560
6561
|
- tracks/prolog/img/icon.png
|
6561
6562
|
- tracks/purescript/.git
|
6563
|
+
- tracks/purescript/.github/stale.yml
|
6562
6564
|
- tracks/purescript/.gitignore
|
6563
6565
|
- tracks/purescript/.travis.yml
|
6564
6566
|
- tracks/purescript/LICENSE
|
@@ -6605,6 +6607,10 @@ files:
|
|
6605
6607
|
- tracks/purescript/exercises/bracket-push/examples/src/BracketPush.purs
|
6606
6608
|
- tracks/purescript/exercises/bracket-push/src/BracketPush.purs
|
6607
6609
|
- tracks/purescript/exercises/bracket-push/test/Main.purs
|
6610
|
+
- tracks/purescript/exercises/difference-of-squares/bower.json
|
6611
|
+
- tracks/purescript/exercises/difference-of-squares/examples/src/DifferenceOfSquares.purs
|
6612
|
+
- tracks/purescript/exercises/difference-of-squares/src/DifferenceOfSquares.purs
|
6613
|
+
- tracks/purescript/exercises/difference-of-squares/test/Main.purs
|
6608
6614
|
- tracks/purescript/exercises/hello-world/bower.json
|
6609
6615
|
- tracks/purescript/exercises/hello-world/examples/src/HelloWorld.purs
|
6610
6616
|
- tracks/purescript/exercises/hello-world/src/HelloWorld.purs
|