trackler 2.0.8.44 → 2.0.8.45
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- 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
|