From e44673d5a34aba8de1287a3ec32acc9f2f5980b6 Mon Sep 17 00:00:00 2001 From: MIkita Liaukovich Date: Mon, 7 Dec 2020 23:30:46 +0300 Subject: [PATCH 1/4] fix: wrong example in readme (#2) --- README.md | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/README.md b/README.md index d94b4553..cd2266e2 100644 --- a/README.md +++ b/README.md @@ -7,9 +7,9 @@ You should implement 3 functions: `max`, `min`, and `avg` for searching minimal For example: ```js -min(1, 2, 3, 4) // returns 1; -max(1, 2, 3, 4) // returns 4; -avg(1, 2, 3, 4) // returns 2.5; +min([1, 2, 3, 4]) // returns 1; +max([1, 2, 3, 4]) // returns 4; +avg([1, 2, 3, 4]) // returns 2.5; ``` Please note, that you should return 0 if no params specified or an empty array passed From 1d31765b6233772865907dddba536187349b98db Mon Sep 17 00:00:00 2001 From: Ryabaa <73956155+Ryabaa@users.noreply.github.com> Date: Fri, 26 Feb 2021 17:21:15 +0200 Subject: [PATCH 2/4] feat: add --- src/index.js | 47 ++++++++++++++++++++++++++++++++++++++--------- 1 file changed, 38 insertions(+), 9 deletions(-) diff --git a/src/index.js b/src/index.js index d54b3622..868972ab 100644 --- a/src/index.js +++ b/src/index.js @@ -1,12 +1,41 @@ - -exports.min = function min (array) { - return 0; +function min(arr) { + let type = null; + array.forEach(n => type = typeof n); + if (type == 'string') { + return 0; + } else if (arr = NaN) { + return 0; + } else if (arr.length > 0) { + return Math.min.apply(null, arr); + } else { + return 0; + } } - -exports.max = function max (array) { - return 0; +function avg(arr) { + let type = null; + array.forEach(n => type = typeof n); + if (type == 'string') { + return 0; + } else if (arr = NaN) { + return 0; + } else if (arr.length > 0) { + let min = Math.min.apply(null, arr); + let max = Math.max.apply(null, arr); + return (min + max) / 2; + } else { + return 0; + } } - -exports.avg = function avg (array) { - return 0; +function max(arr) { + let type = null; + array.forEach(n => type = typeof n); + if (type == 'string') { + return 0; + } else if (arr = NaN) { + return 0; + } else if (arr.length > 0) { + return Math.max.apply(null, arr); + } else { + return 0; + } } From 5325659b4103722f188d1ac3e6c81dfd4170cf3c Mon Sep 17 00:00:00 2001 From: Ryabaa <73956155+Ryabaa@users.noreply.github.com> Date: Mon, 1 Mar 2021 21:11:19 +0200 Subject: [PATCH 3/4] feat: F to pay respect --- src/index.js | 24 +++--------------------- 1 file changed, 3 insertions(+), 21 deletions(-) diff --git a/src/index.js b/src/index.js index 868972ab..e066157a 100644 --- a/src/index.js +++ b/src/index.js @@ -1,24 +1,12 @@ function min(arr) { - let type = null; - array.forEach(n => type = typeof n); - if (type == 'string') { - return 0; - } else if (arr = NaN) { - return 0; - } else if (arr.length > 0) { + if (arr.length > 0) { return Math.min.apply(null, arr); } else { return 0; } } function avg(arr) { - let type = null; - array.forEach(n => type = typeof n); - if (type == 'string') { - return 0; - } else if (arr = NaN) { - return 0; - } else if (arr.length > 0) { + if (arr.length > 0) { let min = Math.min.apply(null, arr); let max = Math.max.apply(null, arr); return (min + max) / 2; @@ -27,13 +15,7 @@ function avg(arr) { } } function max(arr) { - let type = null; - array.forEach(n => type = typeof n); - if (type == 'string') { - return 0; - } else if (arr = NaN) { - return 0; - } else if (arr.length > 0) { + if (arr.length > 0) { return Math.max.apply(null, arr); } else { return 0; From 53ad4d63ac6c86f74cba9eb62b5b4e4ab2e254f5 Mon Sep 17 00:00:00 2001 From: Ryabaa <73956155+Ryabaa@users.noreply.github.com> Date: Mon, 1 Mar 2021 21:41:18 +0200 Subject: [PATCH 4/4] feat: laodas --- src/index.js | 36 +++++++++++++++++++----------------- 1 file changed, 19 insertions(+), 17 deletions(-) diff --git a/src/index.js b/src/index.js index e066157a..4d235a6f 100644 --- a/src/index.js +++ b/src/index.js @@ -1,23 +1,25 @@ function min(arr) { - if (arr.length > 0) { - return Math.min.apply(null, arr); - } else { - return 0; - } + return arr.reduce(function (p, v) { + return ( p < v ? p : v ); + }); + } + + function arrayMin(arr) { + return arr.reduce(function (p, v) { + return ( p < v ? p : v ); + }); } function avg(arr) { - if (arr.length > 0) { - let min = Math.min.apply(null, arr); - let max = Math.max.apply(null, arr); - return (min + max) / 2; - } else { - return 0; - } + } function max(arr) { - if (arr.length > 0) { - return Math.max.apply(null, arr); - } else { - return 0; - } + return arr.reduce(function (p, v) { + return ( p > v ? p : v ); + }); + } + + function arrayMax(arr) { + return arr.reduce(function (p, v) { + return ( p > v ? p : v ); + }); }