From 1b5e325cfb706ff49bd0f21b970001c245fd09be Mon Sep 17 00:00:00 2001 From: ramadis Date: Tue, 9 Oct 2018 21:33:18 +0200 Subject: [PATCH 01/10] Add new 'target' excercise --- exercises/target/canonical-data.json | 65 ++++++++++++++++++++++++++++ exercises/target/description.md | 15 +++++++ exercises/target/metadata.yml | 3 ++ 3 files changed, 83 insertions(+) create mode 100644 exercises/target/canonical-data.json create mode 100644 exercises/target/description.md create mode 100644 exercises/target/metadata.yml diff --git a/exercises/target/canonical-data.json b/exercises/target/canonical-data.json new file mode 100644 index 0000000000..f0a56b1a4d --- /dev/null +++ b/exercises/target/canonical-data.json @@ -0,0 +1,65 @@ +{ + "exercise": "target", + "version": "1.0.0", + "cases": [ + { + "description": "Retun the correct amount earnt by a dart landing in a given point in the target problem.", + "cases": [ + { + "property": "result", + "description": "A dart lands outside the targetOnly a single book", + "input": { + "x":15.3, + "y":13.2 + }, + "expected": 0 + }, + { + "property": "result", + "description": "A dart lands just in the border of the target", + "input": { + "x":10, + "y": 0 + }, + "expected": 1 + }, + { + "property": "result", + "description": "Input is not a number", + "input": { + "x":"WRONG", + "y":10 + }, + "expected": null + }, + { + "property": "result", + "description": "A dart lands in the middle circle", + "input": { + "x":3, + "y":3.7 + }, + "expected": 5 + }, + { + "property": "result", + "description": "A dart lands right in the border between outside and middle circles", + "input": { + "x":0, + "y":5 + }, + "expected": 5 + }, + { + "property": "result", + "description": "A dart arrives in the inner circle", + "input": { + "x":0, + "y":0 + }, + "expected": 10 + } + ] + } + ] +} diff --git a/exercises/target/description.md b/exercises/target/description.md new file mode 100644 index 0000000000..2aa073cb19 --- /dev/null +++ b/exercises/target/description.md @@ -0,0 +1,15 @@ +Write a function that returns the earned points in a Darts game. + +[Darts](https://en.wikipedia.org/wiki/Darts) is a game where players +throw darts to a [target](https://en.wikipedia.org/wiki/Darts#/media/File:Darts_in_a_dartboard.jpg). + +In our particular instance of the game, the target rewards with 4 different amount of points, depending on where the dart lands: + +* If the dart lands outside the target, player earns no points (0 points). +* If the dart lands in the outer circle of the target, player earns 1 point. +* If the dart lands in the middle circle of the target, player earns 5 points. +* If the dart lands in the inner circle of the target, player earns 10 points. + +The outer circle has a radius of 10 units (This is equivalent to the total radius for the entire target), the middle circle a radius of 5 units, and the inner circle a radius of 1. Of course, they are all centered to the same point (That is, the circles are [concentrics](http://mathworld.wolfram.com/ConcentricCircles.html)). + +Write a function that given a point in the target (defined by its `real` cartesian coordinates `x` and `y`), returns the correct amount earnt by a dart landing in that point. \ No newline at end of file diff --git a/exercises/target/metadata.yml b/exercises/target/metadata.yml new file mode 100644 index 0000000000..f87c780a32 --- /dev/null +++ b/exercises/target/metadata.yml @@ -0,0 +1,3 @@ +--- +blurb: "Write a function that returns the earned points in a Darts game" +source: "Inspired by an excersie created by a professor Della Paolera in Argentina" From 9b5137cbaa45eb8946f200daa3903d53cfb9d527 Mon Sep 17 00:00:00 2001 From: ramadis Date: Tue, 9 Oct 2018 22:14:19 +0200 Subject: [PATCH 02/10] Correct grammatical, ortographic, and style mistakes --- exercises/target/canonical-data.json | 26 +++++++++++++------------- exercises/target/description.md | 4 ++-- 2 files changed, 15 insertions(+), 15 deletions(-) diff --git a/exercises/target/canonical-data.json b/exercises/target/canonical-data.json index f0a56b1a4d..0ca2a8255e 100644 --- a/exercises/target/canonical-data.json +++ b/exercises/target/canonical-data.json @@ -3,14 +3,14 @@ "version": "1.0.0", "cases": [ { - "description": "Retun the correct amount earnt by a dart landing in a given point in the target problem.", + "description": "Return the correct amount earned by a dart landing in a given point in the target problem.", "cases": [ { "property": "result", - "description": "A dart lands outside the targetOnly a single book", + "description": "A dart lands outside the target", "input": { - "x":15.3, - "y":13.2 + "x": 15.3, + "y": 13.2 }, "expected": 0 }, @@ -18,7 +18,7 @@ "property": "result", "description": "A dart lands just in the border of the target", "input": { - "x":10, + "x": 10, "y": 0 }, "expected": 1 @@ -27,8 +27,8 @@ "property": "result", "description": "Input is not a number", "input": { - "x":"WRONG", - "y":10 + "x": "WRONG", + "y": 10 }, "expected": null }, @@ -36,8 +36,8 @@ "property": "result", "description": "A dart lands in the middle circle", "input": { - "x":3, - "y":3.7 + "x": 3, + "y": 3.7 }, "expected": 5 }, @@ -45,8 +45,8 @@ "property": "result", "description": "A dart lands right in the border between outside and middle circles", "input": { - "x":0, - "y":5 + "x": 0, + "y": 5 }, "expected": 5 }, @@ -54,8 +54,8 @@ "property": "result", "description": "A dart arrives in the inner circle", "input": { - "x":0, - "y":0 + "x": 0, + "y": 0 }, "expected": 10 } diff --git a/exercises/target/description.md b/exercises/target/description.md index 2aa073cb19..d5a28a9c5b 100644 --- a/exercises/target/description.md +++ b/exercises/target/description.md @@ -3,7 +3,7 @@ Write a function that returns the earned points in a Darts game. [Darts](https://en.wikipedia.org/wiki/Darts) is a game where players throw darts to a [target](https://en.wikipedia.org/wiki/Darts#/media/File:Darts_in_a_dartboard.jpg). -In our particular instance of the game, the target rewards with 4 different amount of points, depending on where the dart lands: +In our particular instance of the game, the target rewards with 4 different amounts of points, depending on where the dart lands: * If the dart lands outside the target, player earns no points (0 points). * If the dart lands in the outer circle of the target, player earns 1 point. @@ -12,4 +12,4 @@ In our particular instance of the game, the target rewards with 4 different amou The outer circle has a radius of 10 units (This is equivalent to the total radius for the entire target), the middle circle a radius of 5 units, and the inner circle a radius of 1. Of course, they are all centered to the same point (That is, the circles are [concentrics](http://mathworld.wolfram.com/ConcentricCircles.html)). -Write a function that given a point in the target (defined by its `real` cartesian coordinates `x` and `y`), returns the correct amount earnt by a dart landing in that point. \ No newline at end of file +Write a function that given a point in the target (defined by its `real` cartesian coordinates `x` and `y`), returns the correct amount earned by a dart landing in that point. \ No newline at end of file From dd05cfa4e89578d80d991139326588a06c9c6b2c Mon Sep 17 00:00:00 2001 From: ramadis Date: Tue, 9 Oct 2018 22:26:37 +0200 Subject: [PATCH 03/10] Renamed exercise to darts --- exercises/{target => darts}/canonical-data.json | 2 +- exercises/{target => darts}/description.md | 0 exercises/{target => darts}/metadata.yml | 0 3 files changed, 1 insertion(+), 1 deletion(-) rename exercises/{target => darts}/canonical-data.json (98%) rename exercises/{target => darts}/description.md (100%) rename exercises/{target => darts}/metadata.yml (100%) diff --git a/exercises/target/canonical-data.json b/exercises/darts/canonical-data.json similarity index 98% rename from exercises/target/canonical-data.json rename to exercises/darts/canonical-data.json index 0ca2a8255e..0ee8e55568 100644 --- a/exercises/target/canonical-data.json +++ b/exercises/darts/canonical-data.json @@ -1,5 +1,5 @@ { - "exercise": "target", + "exercise": "darts", "version": "1.0.0", "cases": [ { diff --git a/exercises/target/description.md b/exercises/darts/description.md similarity index 100% rename from exercises/target/description.md rename to exercises/darts/description.md diff --git a/exercises/target/metadata.yml b/exercises/darts/metadata.yml similarity index 100% rename from exercises/target/metadata.yml rename to exercises/darts/metadata.yml From e7ded9081b3f494a70fc8e810897d54a72627066 Mon Sep 17 00:00:00 2001 From: ramadis Date: Tue, 9 Oct 2018 22:48:49 +0200 Subject: [PATCH 04/10] Fixed small typo --- exercises/darts/description.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/exercises/darts/description.md b/exercises/darts/description.md index d5a28a9c5b..62eb29dbe6 100644 --- a/exercises/darts/description.md +++ b/exercises/darts/description.md @@ -10,6 +10,6 @@ In our particular instance of the game, the target rewards with 4 different amou * If the dart lands in the middle circle of the target, player earns 5 points. * If the dart lands in the inner circle of the target, player earns 10 points. -The outer circle has a radius of 10 units (This is equivalent to the total radius for the entire target), the middle circle a radius of 5 units, and the inner circle a radius of 1. Of course, they are all centered to the same point (That is, the circles are [concentrics](http://mathworld.wolfram.com/ConcentricCircles.html)). +The outer circle has a radius of 10 units (This is equivalent to the total radius for the entire target), the middle circle a radius of 5 units, and the inner circle a radius of 1. Of course, they are all centered to the same point (That is, the circles are [concentric](http://mathworld.wolfram.com/ConcentricCircles.html)). Write a function that given a point in the target (defined by its `real` cartesian coordinates `x` and `y`), returns the correct amount earned by a dart landing in that point. \ No newline at end of file From 0d5683b00c49b53ef0641ba1f0b4050307fbebcc Mon Sep 17 00:00:00 2001 From: ramadis Date: Wed, 10 Oct 2018 16:28:21 +0200 Subject: [PATCH 05/10] Fix error expected result in canonical-data.json --- exercises/darts/canonical-data.json | 14 +++++++------- 1 file changed, 7 insertions(+), 7 deletions(-) diff --git a/exercises/darts/canonical-data.json b/exercises/darts/canonical-data.json index 0ee8e55568..3c61b825ae 100644 --- a/exercises/darts/canonical-data.json +++ b/exercises/darts/canonical-data.json @@ -6,7 +6,7 @@ "description": "Return the correct amount earned by a dart landing in a given point in the target problem.", "cases": [ { - "property": "result", + "property": "score", "description": "A dart lands outside the target", "input": { "x": 15.3, @@ -15,7 +15,7 @@ "expected": 0 }, { - "property": "result", + "property": "score", "description": "A dart lands just in the border of the target", "input": { "x": 10, @@ -24,16 +24,16 @@ "expected": 1 }, { - "property": "result", + "property": "score", "description": "Input is not a number", "input": { "x": "WRONG", "y": 10 }, - "expected": null + "expected": {"error": "Every input should be a number"} }, { - "property": "result", + "property": "score", "description": "A dart lands in the middle circle", "input": { "x": 3, @@ -42,7 +42,7 @@ "expected": 5 }, { - "property": "result", + "property": "score", "description": "A dart lands right in the border between outside and middle circles", "input": { "x": 0, @@ -51,7 +51,7 @@ "expected": 5 }, { - "property": "result", + "property": "score", "description": "A dart arrives in the inner circle", "input": { "x": 0, From e486cd513aef3d973c1725f8cb2e654dc93559a0 Mon Sep 17 00:00:00 2001 From: ramadis Date: Tue, 16 Oct 2018 15:36:39 +0200 Subject: [PATCH 06/10] Remove test for incorrect input --- exercises/darts/canonical-data.json | 9 --------- 1 file changed, 9 deletions(-) diff --git a/exercises/darts/canonical-data.json b/exercises/darts/canonical-data.json index 3c61b825ae..ce96105ffe 100644 --- a/exercises/darts/canonical-data.json +++ b/exercises/darts/canonical-data.json @@ -23,15 +23,6 @@ }, "expected": 1 }, - { - "property": "score", - "description": "Input is not a number", - "input": { - "x": "WRONG", - "y": 10 - }, - "expected": {"error": "Every input should be a number"} - }, { "property": "score", "description": "A dart lands in the middle circle", From 1d56cdce892960eb28d7f1788903d944ec3c50e1 Mon Sep 17 00:00:00 2001 From: ramadis Date: Tue, 16 Oct 2018 16:40:54 +0200 Subject: [PATCH 07/10] Darts land, they don't arrive --- exercises/darts/canonical-data.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/exercises/darts/canonical-data.json b/exercises/darts/canonical-data.json index ce96105ffe..9221ece325 100644 --- a/exercises/darts/canonical-data.json +++ b/exercises/darts/canonical-data.json @@ -43,7 +43,7 @@ }, { "property": "score", - "description": "A dart arrives in the inner circle", + "description": "A dart lands in the inner circle", "input": { "x": 0, "y": 0 From 0637a525b05019344cbc23290db63d06783cfefb Mon Sep 17 00:00:00 2001 From: ramadis Date: Wed, 17 Oct 2018 17:35:36 +0200 Subject: [PATCH 08/10] Improved specificity of the description --- exercises/darts/description.md | 2 +- exercises/darts/metadata.yml | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/exercises/darts/description.md b/exercises/darts/description.md index 62eb29dbe6..e9fe3564bd 100644 --- a/exercises/darts/description.md +++ b/exercises/darts/description.md @@ -1,4 +1,4 @@ -Write a function that returns the earned points in a Darts game. +Write a function that returns the earned points in a single toss of a Darts game. [Darts](https://en.wikipedia.org/wiki/Darts) is a game where players throw darts to a [target](https://en.wikipedia.org/wiki/Darts#/media/File:Darts_in_a_dartboard.jpg). diff --git a/exercises/darts/metadata.yml b/exercises/darts/metadata.yml index f87c780a32..790fc4c2ec 100644 --- a/exercises/darts/metadata.yml +++ b/exercises/darts/metadata.yml @@ -1,3 +1,3 @@ --- -blurb: "Write a function that returns the earned points in a Darts game" +blurb: "Write a function that returns the earned points in a single toss of a Darts game" source: "Inspired by an excersie created by a professor Della Paolera in Argentina" From 0e67743ec4360de0b7a8d5813cb9fe81870c3fbc Mon Sep 17 00:00:00 2001 From: ramadis Date: Mon, 22 Oct 2018 22:14:09 +0200 Subject: [PATCH 09/10] Explicitly say the center of the target is (0, 0) --- .DS_Store | Bin 0 -> 6148 bytes exercises/.DS_Store | Bin 0 -> 28676 bytes exercises/darts/description.md | 2 +- 3 files changed, 1 insertion(+), 1 deletion(-) create mode 100644 .DS_Store create mode 100644 exercises/.DS_Store diff --git a/.DS_Store b/.DS_Store new file mode 100644 index 0000000000000000000000000000000000000000..61558ba1963ef7a6e9e8067e12393c5d05b42915 GIT binary patch literal 6148 zcmeHK&2G~`5T0!UwMit5)I%%vV8MY)B@%*Yk8VhBNFW^113#%9TaA(9jclhuiXyo$ zzykmWF8myM0}k*2+~CYRaA#(BD-y*yf+*UNX20>y&w9U=cfA0>+T)-JU;%)EN?5&w zO^J}7bV=4!59Kkc(RBNKI9iI+9hw2nz`w}=eY+L#A%Y}6p8tN${okG;?{tE3-Us;h z<)IAi zavo!VNb7q3!zi5etc^Q7$-O8EQ&C&iczhTo0iU$_I0-TluZkPSHRq_HDS&C1J!^A1 zZ8cjv_N~3fY{#DN?l#bF-JZ=%W9xeB!P94_FJ8WS{r27a51&O6Fx(!6Tv2!iU(hI_ zWnn35H?EdP%`eNRucBm0t@$Nd9ksAr+i$2?Nv#t%O=6xLqxWn^6shH0GN6{wsGZBV z*DtLZ&aDYi-mcR1%6SB#IPl)Nw2fI*K<@g`m$S1JO}fNW>l#{Uab~ L(2Zu`uQKopy)T^^ literal 0 HcmV?d00001 diff --git a/exercises/.DS_Store b/exercises/.DS_Store new file mode 100644 index 0000000000000000000000000000000000000000..393048e0df8f31765ffe68eacbb586f417c4c05d GIT binary patch literal 28676 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 Date: Mon, 22 Oct 2018 22:21:32 +0200 Subject: [PATCH 10/10] Remove .DS_Store --- .DS_Store | Bin 6148 -> 0 bytes exercises/.DS_Store | Bin 28676 -> 0 bytes 2 files changed, 0 insertions(+), 0 deletions(-) delete mode 100644 .DS_Store delete mode 100644 exercises/.DS_Store diff --git a/.DS_Store b/.DS_Store deleted file mode 100644 index 61558ba1963ef7a6e9e8067e12393c5d05b42915..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 6148 zcmeHK&2G~`5T0!UwMit5)I%%vV8MY)B@%*Yk8VhBNFW^113#%9TaA(9jclhuiXyo$ zzykmWF8myM0}k*2+~CYRaA#(BD-y*yf+*UNX20>y&w9U=cfA0>+T)-JU;%)EN?5&w zO^J}7bV=4!59Kkc(RBNKI9iI+9hw2nz`w}=eY+L#A%Y}6p8tN${okG;?{tE3-Us;h z<)IAi zavo!VNb7q3!zi5etc^Q7$-O8EQ&C&iczhTo0iU$_I0-TluZkPSHRq_HDS&C1J!^A1 zZ8cjv_N~3fY{#DN?l#bF-JZ=%W9xeB!P94_FJ8WS{r27a51&O6Fx(!6Tv2!iU(hI_ zWnn35H?EdP%`eNRucBm0t@$Nd9ksAr+i$2?Nv#t%O=6xLqxWn^6shH0GN6{wsGZBV z*DtLZ&aDYi-mcR1%6SB#IPl)Nw2fI*K<@g`m$S1JO}fNW>l#{Uab~ L(2Zu`uQKopy)T^^ diff --git a/exercises/.DS_Store b/exercises/.DS_Store deleted file mode 100644 index 393048e0df8f31765ffe68eacbb586f417c4c05d..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 28676 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