From 28d0ce35d7d8f769bdb021cf6aca8bde5af72941 Mon Sep 17 00:00:00 2001 From: Raseen7 <32290423+Raseen7@users.noreply.github.com> Date: Mon, 15 Oct 2018 14:01:11 +0500 Subject: [PATCH 01/18] Update warmup.js --- warmup.js | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/warmup.js b/warmup.js index eefda9891..41d3f5c3f 100644 --- a/warmup.js +++ b/warmup.js @@ -9,6 +9,7 @@ */ function abProblem(a, b) { // Ваше решение + return a+b; } /** @@ -20,6 +21,11 @@ function abProblem(a, b) { */ function centuryByYearProblem(year) { // Ваше решение + const yearStr = year.toString; + if (yearStr.length == 4){ + return parseInt(yearStr.substring(0,1), 10)+1; + } + else return 1; } /** @@ -30,7 +36,7 @@ function centuryByYearProblem(year) { * @returns {String} Цвет в формате RGB, например, '(255, 255, 255)' */ function colorsProblem(hexColor) { - // Ваше решение + // Ваше решение } /** From 218af49561de4e6ff66b4dd452ad9c487374a153 Mon Sep 17 00:00:00 2001 From: Raseen7 <32290423+Raseen7@users.noreply.github.com> Date: Fri, 19 Oct 2018 15:06:12 +0500 Subject: [PATCH 02/18] First --- warmup.js | 45 ++++++++++++++++++++++++++++++++++++++++++++- 1 file changed, 44 insertions(+), 1 deletion(-) diff --git a/warmup.js b/warmup.js index 41d3f5c3f..b476c70b6 100644 --- a/warmup.js +++ b/warmup.js @@ -36,7 +36,8 @@ function centuryByYearProblem(year) { * @returns {String} Цвет в формате RGB, например, '(255, 255, 255)' */ function colorsProblem(hexColor) { - // Ваше решение + // Ваше решение + return rgbColor = '('+ parseInt(hexColor.substring(1,2), 16) + parseInt(hexColor.substring(3,4), 16) + parseInt(hexColor.substring(5,6)) + ')'; } /** @@ -48,6 +49,11 @@ function colorsProblem(hexColor) { */ function fibonacciProblem(n) { // Ваше решение + const fibSequence = [0,1]; + for (let i = 2; i < 61; i++) { + fibSequence[i].push(fibSequence[i-1]+fibSequence[i-2]); + } + return fibSequence[n]; } /** @@ -58,6 +64,12 @@ function fibonacciProblem(n) { */ function matrixProblem(matrix) { // Ваше решение + const transposedMatrix; + for (let i =0; i < matrix.length; i++){ + for (let j=0; j Date: Fri, 19 Oct 2018 15:13:52 +0500 Subject: [PATCH 03/18] Second --- warmup.js | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/warmup.js b/warmup.js index b476c70b6..20718e6e6 100644 --- a/warmup.js +++ b/warmup.js @@ -64,12 +64,13 @@ function fibonacciProblem(n) { */ function matrixProblem(matrix) { // Ваше решение - const transposedMatrix; + let transposedMatrix = []; for (let i =0; i < matrix.length; i++){ for (let j=0; j Date: Fri, 19 Oct 2018 15:26:05 +0500 Subject: [PATCH 04/18] Update warmup.js --- warmup.js | 22 ++++++++++++---------- 1 file changed, 12 insertions(+), 10 deletions(-) diff --git a/warmup.js b/warmup.js index 20718e6e6..672ef1e81 100644 --- a/warmup.js +++ b/warmup.js @@ -9,7 +9,7 @@ */ function abProblem(a, b) { // Ваше решение - return a+b; + return a + b; } /** @@ -22,9 +22,9 @@ function abProblem(a, b) { function centuryByYearProblem(year) { // Ваше решение const yearStr = year.toString; - if (yearStr.length == 4){ - return parseInt(yearStr.substring(0,1), 10)+1; - } + if (yearStr.length === 4) { + return parseInt(yearStr.substring(0, 1), 10) + 1; +} else return 1; } @@ -37,7 +37,7 @@ function centuryByYearProblem(year) { */ function colorsProblem(hexColor) { // Ваше решение - return rgbColor = '('+ parseInt(hexColor.substring(1,2), 16) + parseInt(hexColor.substring(3,4), 16) + parseInt(hexColor.substring(5,6)) + ')'; + return rgbColor = '('+ parseInt(hexColor.substring(1, 2), 16) + parseInt(hexColor.substring(3, 4), 16) + parseInt(hexColor.substring(5, 6)) + ')'; } /** @@ -49,10 +49,11 @@ function colorsProblem(hexColor) { */ function fibonacciProblem(n) { // Ваше решение - const fibSequence = [0,1]; + const fibSequence = [0, 1]; for (let i = 2; i < 61; i++) { - fibSequence[i].push(fibSequence[i-1]+fibSequence[i-2]); + fibSequence[i].push(fibSequence[i - 1] + fibSequence[i - 2]); } + return fibSequence[n]; } @@ -65,8 +66,8 @@ function fibonacciProblem(n) { function matrixProblem(matrix) { // Ваше решение let transposedMatrix = []; - for (let i =0; i < matrix.length; i++){ - for (let j=0; j Date: Fri, 19 Oct 2018 15:31:56 +0500 Subject: [PATCH 05/18] Update warmup.js --- warmup.js | 11 +++++++---- 1 file changed, 7 insertions(+), 4 deletions(-) diff --git a/warmup.js b/warmup.js index 672ef1e81..1cdcdc644 100644 --- a/warmup.js +++ b/warmup.js @@ -24,8 +24,10 @@ function centuryByYearProblem(year) { const yearStr = year.toString; if (yearStr.length === 4) { return parseInt(yearStr.substring(0, 1), 10) + 1; -} - else return 1; + } + else { + return 1 + }; } /** @@ -37,7 +39,8 @@ function centuryByYearProblem(year) { */ function colorsProblem(hexColor) { // Ваше решение - return rgbColor = '('+ parseInt(hexColor.substring(1, 2), 16) + parseInt(hexColor.substring(3, 4), 16) + parseInt(hexColor.substring(5, 6)) + ')'; + const rgbColor; + return rgbColor = '(' + parseInt(hexColor.substring(1, 2), 16) + parseInt(hexColor.substring(3, 4), 16) + parseInt(hexColor.substring(5, 6)) + ')'; } /** @@ -120,7 +123,7 @@ function smilesProblem(text) { counter++; index2 = array.indexOf(element2, index2 + 1); } - + return counter; } From 7ac3fd0cf28304fb0bb084dd109bba04ce4b6d5e Mon Sep 17 00:00:00 2001 From: Raseen7 <32290423+Raseen7@users.noreply.github.com> Date: Fri, 19 Oct 2018 15:33:34 +0500 Subject: [PATCH 06/18] Update warmup.js --- warmup.js | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/warmup.js b/warmup.js index 1cdcdc644..f51828bcd 100644 --- a/warmup.js +++ b/warmup.js @@ -39,7 +39,7 @@ function centuryByYearProblem(year) { */ function colorsProblem(hexColor) { // Ваше решение - const rgbColor; + const rgbColor return rgbColor = '(' + parseInt(hexColor.substring(1, 2), 16) + parseInt(hexColor.substring(3, 4), 16) + parseInt(hexColor.substring(5, 6)) + ')'; } From 02fe0273ee0707eda6a230919c7f147d92c9661b Mon Sep 17 00:00:00 2001 From: Raseen7 <32290423+Raseen7@users.noreply.github.com> Date: Fri, 19 Oct 2018 15:35:56 +0500 Subject: [PATCH 07/18] Update warmup.js --- warmup.js | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/warmup.js b/warmup.js index f51828bcd..8a6482f17 100644 --- a/warmup.js +++ b/warmup.js @@ -39,7 +39,7 @@ function centuryByYearProblem(year) { */ function colorsProblem(hexColor) { // Ваше решение - const rgbColor + const rgbColor = ''; return rgbColor = '(' + parseInt(hexColor.substring(1, 2), 16) + parseInt(hexColor.substring(3, 4), 16) + parseInt(hexColor.substring(5, 6)) + ')'; } From f9a5644c327bd6be2df5513d90316c2fef427fd1 Mon Sep 17 00:00:00 2001 From: Raseen7 <32290423+Raseen7@users.noreply.github.com> Date: Fri, 19 Oct 2018 15:48:37 +0500 Subject: [PATCH 08/18] Update warmup.js --- warmup.js | 171 ++++++++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 171 insertions(+) diff --git a/warmup.js b/warmup.js index 8a6482f17..2e8496d8f 100644 --- a/warmup.js +++ b/warmup.js @@ -43,6 +43,55 @@ function colorsProblem(hexColor) { return rgbColor = '(' + parseInt(hexColor.substring(1, 2), 16) + parseInt(hexColor.substring(3, 4), 16) + parseInt(hexColor.substring(5, 6)) + ')'; } +/** + * Находит n-ое число Фибоначчи + * @param {Number} n Положение числа в ряде Фибоначчи + * @throws {TypeError} Когда в качестве положения в ряде передано не число'use strict'; + +/** + * Складывает два целых числа + * @param {Number} a Первое целое + * @param {Number} b Второе целое + * @throws {TypeError} Когда в аргументы переданы не числа + * @returns {Number} Сумма аргументов + */ +function abProblem(a, b) { + // Ваше решение + return a + b; +} + +/** + * Определяет век по году + * @param {Number} year Год, целое положительное число + * @throws {TypeError} Когда в качестве года передано не число + * @throws {RangeError} Когда год – отрицательное значение + * @returns {Number} Век, полученный из года + */ +function centuryByYearProblem(year) { + // Ваше решение + const yearStr = year.toString; + if (yearStr.length === 4) { + return parseInt(yearStr.substring(0, 1), 10) + 1; + } + else { + return 1; + } +} + +/** + * Переводит цвет из формата HEX в формат RGB + * @param {String} hexColor Цвет в формате HEX, например, '#FFFFFF' + * @throws {TypeError} Когда цвет передан не строкой + * @throws {RangeError} Когда значения цвета выходят за пределы допустимых + * @returns {String} Цвет в формате RGB, например, '(255, 255, 255)' + */ +function colorsProblem(hexColor) { + // Ваше решение + + return '(' + parseInt(hexColor.substring(1, 2), 16) + + parseInt(hexColor.substring(3, 4), 16) + parseInt(hexColor.substring(5, 6)) + ')'; +} + /** * Находит n-ое число Фибоначчи * @param {Number} n Положение числа в ряде Фибоначчи @@ -60,6 +109,128 @@ function fibonacciProblem(n) { return fibSequence[n]; } +/** + * Транспонирует матрицу + * @param {(Any[])[]} matrix Матрица размерности MxN + * @throws {TypeError} Когда в функцию передаётся не двумерный массив + * @returns {(Any[])[]} Транспонированная матрица размера NxM + */ +function matrixProblem(matrix) { + // Ваше решение + let transposedMatrix = []; + for (let i = 0; i < matrix.length; i++) { + for (let j = 0; j < matrix.length; j++) { + transposedMatrix[j][i] = matrix[i][j]; + } + } + + return transposedMatrix; +} + +/** + * Переводит число в другую систему счисления + * @param {Number} n Число для перевода в другую систему счисления + * @param {Number} targetNs Система счисления, в которую нужно перевести (Число от 2 до 36) + * @throws {TypeError} Когда переданы аргументы некорректного типа + * @throws {RangeError} Когда система счисления выходит за пределы значений [2, 36] + * @returns {String} Число n в системе счисления targetNs + */ +function numberSystemProblem(n, targetNs) { + // Ваше решение + return n.toString(targetNs); +} + +/** + * Проверяет соответствие телефонного номера формату + * @param {String} phoneNumber Номер телефона в формате '8–800–xxx–xx–xx' + * @returns {Boolean} Если соответствует формату, то true, а иначе false + */ +function phoneProblem(phoneNumber) { + // Ваше решение + const dashsEntry = phoneNumber.charAt(1) === '-'&&phoneNumber.charAt(5) === '-' + && phoneNumber.charAt(9) === '-' && phoneNumber.charAt(12) === '-'; + if (dashsEntry) { + return true; + } + else { + return false; + }; +} + +/** + * Определяет количество улыбающихся смайликов в строке + * @param {String} text Строка в которой производится поиск + * @throws {TypeError} Когда в качестве аргумента передаётся не строка + * @returns {Number} Количество улыбающихся смайликов в строке + */ +function smilesProblem(text) { + // Ваше решение + let counter = 0; + const element1 = ':-)'; + const element2 = '(-:'; + let index1 = text.indexOf(element1); + let index2 = text.indexOf(element2) + while(index1 != -1){ + counter++; + index1 = text.indexOf(element1, index1 + 1); + } + while(index2 != -1){ + counter++; + index2 = text.indexOf(element2, index2 + 1); + } + + return counter; +} + + +/** + * Определяет победителя в игре "Крестики-нолики" + * Тестами гарантируются корректные аргументы. + * @param {(('x' | 'o')[])[]} field Игровое поле 3x3 завершённой игры + * @returns {'x' | 'o' | 'draw'} Результат игры + */ +function ticTacToeProblem(field) { + // Ваше решение + for(let i = 0; i < 3; i++) { + if(field[i][0] == field[i][1] && field[i][0] == field[i][2]) + return field[i][0]; + } + for(let i = 0; i < 3; i++) { + if(field[0][i] == field[i][1] && field[0][i] == field[i][2]) + return field[0][i]; + } + if(field[0][0] == field[1][1] && field[1][1] == field[2][2]) + return field[0][0]; + if(field[0][2] == field[1][1] && field[1][1] == field[2][0]) + return field[0][2]; + return 'draw'; +} + + +module.exports = { + abProblem, + centuryByYearProblem, + colorsProblem, + fibonacciProblem, + matrixProblem, + numberSystemProblem, + phoneProblem, + smilesProblem, + ticTacToeProblem +}; + * @throws {RangeError} Когда положение в ряде не является целым положительным числом + * @returns {Number} Число Фибоначчи, находящееся на n-ой позиции + */ +function fibonacciProblem(n) { + // Ваше решение + const fibSequence = [0, 1]; + for (let i = 2; i < 61; i++) { + fibSequence[i].push(fibSequence[i - 1] + fibSequence[i - 2]); + } + + return fibSequence[n]; +} + /** * Транспонирует матрицу * @param {(Any[])[]} matrix Матрица размерности MxN From ad0662c418e2f4958e0e9936a11e2af6d864b610 Mon Sep 17 00:00:00 2001 From: Raseen7 <32290423+Raseen7@users.noreply.github.com> Date: Fri, 19 Oct 2018 15:50:15 +0500 Subject: [PATCH 09/18] Update warmup.js --- warmup.js | 162 ------------------------------------------------------ 1 file changed, 162 deletions(-) diff --git a/warmup.js b/warmup.js index 2e8496d8f..14635f2ba 100644 --- a/warmup.js +++ b/warmup.js @@ -12,54 +12,6 @@ function abProblem(a, b) { return a + b; } -/** - * Определяет век по году - * @param {Number} year Год, целое положительное число - * @throws {TypeError} Когда в качестве года передано не число - * @throws {RangeError} Когда год – отрицательное значение - * @returns {Number} Век, полученный из года - */ -function centuryByYearProblem(year) { - // Ваше решение - const yearStr = year.toString; - if (yearStr.length === 4) { - return parseInt(yearStr.substring(0, 1), 10) + 1; - } - else { - return 1 - }; -} - -/** - * Переводит цвет из формата HEX в формат RGB - * @param {String} hexColor Цвет в формате HEX, например, '#FFFFFF' - * @throws {TypeError} Когда цвет передан не строкой - * @throws {RangeError} Когда значения цвета выходят за пределы допустимых - * @returns {String} Цвет в формате RGB, например, '(255, 255, 255)' - */ -function colorsProblem(hexColor) { - // Ваше решение - const rgbColor = ''; - return rgbColor = '(' + parseInt(hexColor.substring(1, 2), 16) + parseInt(hexColor.substring(3, 4), 16) + parseInt(hexColor.substring(5, 6)) + ')'; -} - -/** - * Находит n-ое число Фибоначчи - * @param {Number} n Положение числа в ряде Фибоначчи - * @throws {TypeError} Когда в качестве положения в ряде передано не число'use strict'; - -/** - * Складывает два целых числа - * @param {Number} a Первое целое - * @param {Number} b Второе целое - * @throws {TypeError} Когда в аргументы переданы не числа - * @returns {Number} Сумма аргументов - */ -function abProblem(a, b) { - // Ваше решение - return a + b; -} - /** * Определяет век по году * @param {Number} year Год, целое положительное число @@ -207,120 +159,6 @@ function ticTacToeProblem(field) { } -module.exports = { - abProblem, - centuryByYearProblem, - colorsProblem, - fibonacciProblem, - matrixProblem, - numberSystemProblem, - phoneProblem, - smilesProblem, - ticTacToeProblem -}; - * @throws {RangeError} Когда положение в ряде не является целым положительным числом - * @returns {Number} Число Фибоначчи, находящееся на n-ой позиции - */ -function fibonacciProblem(n) { - // Ваше решение - const fibSequence = [0, 1]; - for (let i = 2; i < 61; i++) { - fibSequence[i].push(fibSequence[i - 1] + fibSequence[i - 2]); - } - - return fibSequence[n]; -} - -/** - * Транспонирует матрицу - * @param {(Any[])[]} matrix Матрица размерности MxN - * @throws {TypeError} Когда в функцию передаётся не двумерный массив - * @returns {(Any[])[]} Транспонированная матрица размера NxM - */ -function matrixProblem(matrix) { - // Ваше решение - let transposedMatrix = []; - for (let i = 0; i < matrix.length; i++){ - for (let j= 0; j < matrix.length; j++){ - transposedMatrix[j][i] = matrix[i][j]; - } - } - return transposedMatrix; -} - -/** - * Переводит число в другую систему счисления - * @param {Number} n Число для перевода в другую систему счисления - * @param {Number} targetNs Система счисления, в которую нужно перевести (Число от 2 до 36) - * @throws {TypeError} Когда переданы аргументы некорректного типа - * @throws {RangeError} Когда система счисления выходит за пределы значений [2, 36] - * @returns {String} Число n в системе счисления targetNs - */ -function numberSystemProblem(n, targetNs) { - // Ваше решение - return n.toString(targetNs); -} - -/** - * Проверяет соответствие телефонного номера формату - * @param {String} phoneNumber Номер телефона в формате '8–800–xxx–xx–xx' - * @returns {Boolean} Если соответствует формату, то true, а иначе false - */ -function phoneProblem(phoneNumber) { - // Ваше решение - const dashsEntry = phoneNumber.charAt(1) == '-'&&phoneNumber.charAt(5) == '-' && phoneNumber.charAt(9) == '-' && phoneNumber.charAt(12) == '-'; - if (dashsEntry) return true - else return false; -} - -/** - * Определяет количество улыбающихся смайликов в строке - * @param {String} text Строка в которой производится поиск - * @throws {TypeError} Когда в качестве аргумента передаётся не строка - * @returns {Number} Количество улыбающихся смайликов в строке - */ -function smilesProblem(text) { - // Ваше решение - let counter = 0; - const element1 = ':-)'; - const element2 = '(-:'; - let index1 = array.indexOf(element1); - let index2 = array.indexOf(element2) - while(index1 != -1){ - counter++; - index1 = array.indexOf(element1, index1 + 1); - } - while(index2 != -1){ - counter++; - index2 = array.indexOf(element2, index2 + 1); - } - - return counter; -} - - -/** - * Определяет победителя в игре "Крестики-нолики" - * Тестами гарантируются корректные аргументы. - * @param {(('x' | 'o')[])[]} field Игровое поле 3x3 завершённой игры - * @returns {'x' | 'o' | 'draw'} Результат игры - */ -function ticTacToeProblem(field) { - // Ваше решение - for(let i = 0; i < 3; i++) - if(matrix[i][0] == matrix[i][1] && matrix[i][0] == matrix[i][2]) - return matrix[i][0]; - for(let i = 0; i < 3; i++) - if(matrix[0][i] == matrix[i][1] && matrix[0][i] == matrix[i][2]) - return matrix[0][i]; - if(matrix[0][0] == matrix[1][1] && matrix[1][1] == matrix[2][2]) - return matrix[0][0]; - if(matrix[0][2] == matrix[1][1] && matrix[1][1] == matrix[2][0]) - return matrix[0][2]; - return 'draw'; -} - - module.exports = { abProblem, centuryByYearProblem, From 17d89acd100ea6cd2d1815ad32ef841ffda53e0f Mon Sep 17 00:00:00 2001 From: Raseen7 <32290423+Raseen7@users.noreply.github.com> Date: Fri, 19 Oct 2018 16:04:33 +0500 Subject: [PATCH 10/18] Update warmup.js --- warmup.js | 40 +++++++++++++++++++++------------------- 1 file changed, 21 insertions(+), 19 deletions(-) diff --git a/warmup.js b/warmup.js index 14635f2ba..646cd8b40 100644 --- a/warmup.js +++ b/warmup.js @@ -24,10 +24,9 @@ function centuryByYearProblem(year) { const yearStr = year.toString; if (yearStr.length === 4) { return parseInt(yearStr.substring(0, 1), 10) + 1; - } - else { - return 1; - } + }; + + return 1; } /** @@ -40,8 +39,8 @@ function centuryByYearProblem(year) { function colorsProblem(hexColor) { // Ваше решение - return '(' + parseInt(hexColor.substring(1, 2), 16) - + parseInt(hexColor.substring(3, 4), 16) + parseInt(hexColor.substring(5, 6)) + ')'; + return '(' + parseInt(hexColor.substring(1, 2), 16) + + parseInt(hexColor.substring(3, 4), 16) + parseInt(hexColor.substring(5, 6)) + ')'; } /** @@ -99,12 +98,11 @@ function numberSystemProblem(n, targetNs) { */ function phoneProblem(phoneNumber) { // Ваше решение - const dashsEntry = phoneNumber.charAt(1) === '-'&&phoneNumber.charAt(5) === '-' - && phoneNumber.charAt(9) === '-' && phoneNumber.charAt(12) === '-'; + const dashsEntry = phoneNumber.charAt(1) === '-'&&phoneNumber.charAt(5) === '-' && + phoneNumber.charAt(9) === '-' && phoneNumber.charAt(12) === '-'; if (dashsEntry) { return true; - } - else { + } else { return false; }; } @@ -121,12 +119,12 @@ function smilesProblem(text) { const element1 = ':-)'; const element2 = '(-:'; let index1 = text.indexOf(element1); - let index2 = text.indexOf(element2) - while(index1 != -1){ + let index2 = text.indexOf(element2); + while(index1 !== -1) { counter++; index1 = text.indexOf(element1, index1 + 1); } - while(index2 != -1){ + while(index2 !== -1) { counter++; index2 = text.indexOf(element2, index2 + 1); } @@ -144,17 +142,21 @@ function smilesProblem(text) { function ticTacToeProblem(field) { // Ваше решение for(let i = 0; i < 3; i++) { - if(field[i][0] == field[i][1] && field[i][0] == field[i][2]) + if(field[i][0] === field[i][1] && field[i][0] === field[i][2]) { return field[i][0]; } + } for(let i = 0; i < 3; i++) { - if(field[0][i] == field[i][1] && field[0][i] == field[i][2]) + if(field[0][i] === field[i][1] && field[0][i] === field[i][2]){ return field[0][i]; } - if(field[0][0] == field[1][1] && field[1][1] == field[2][2]) - return field[0][0]; - if(field[0][2] == field[1][1] && field[1][1] == field[2][0]) - return field[0][2]; + } + if(field[0][0] === field[1][1] && field[1][1] === field[2][2]) { + return field[0][0]; + } + if(field[0][2] === field[1][1] && field[1][1] === field[2][0]) { + return field[0][2]; + } return 'draw'; } From 3573b1eee410d65bb6048a6626a2b8bbaeca92cd Mon Sep 17 00:00:00 2001 From: Raseen7 <32290423+Raseen7@users.noreply.github.com> Date: Fri, 19 Oct 2018 16:11:59 +0500 Subject: [PATCH 11/18] Update warmup.js --- warmup.js | 27 +++++++++++++-------------- 1 file changed, 13 insertions(+), 14 deletions(-) diff --git a/warmup.js b/warmup.js index 646cd8b40..5fc75fb7a 100644 --- a/warmup.js +++ b/warmup.js @@ -24,7 +24,7 @@ function centuryByYearProblem(year) { const yearStr = year.toString; if (yearStr.length === 4) { return parseInt(yearStr.substring(0, 1), 10) + 1; - }; + } return 1; } @@ -38,7 +38,6 @@ function centuryByYearProblem(year) { */ function colorsProblem(hexColor) { // Ваше решение - return '(' + parseInt(hexColor.substring(1, 2), 16) + parseInt(hexColor.substring(3, 4), 16) + parseInt(hexColor.substring(5, 6)) + ')'; } @@ -98,13 +97,13 @@ function numberSystemProblem(n, targetNs) { */ function phoneProblem(phoneNumber) { // Ваше решение - const dashsEntry = phoneNumber.charAt(1) === '-'&&phoneNumber.charAt(5) === '-' && + const dashsEntry = phoneNumber.charAt(1) === '-' && phoneNumber.charAt(5) === '-' && phoneNumber.charAt(9) === '-' && phoneNumber.charAt(12) === '-'; if (dashsEntry) { return true; - } else { - return false; - }; + } + + return false; } /** @@ -120,11 +119,11 @@ function smilesProblem(text) { const element2 = '(-:'; let index1 = text.indexOf(element1); let index2 = text.indexOf(element2); - while(index1 !== -1) { + while (index1 !== -1) { counter++; index1 = text.indexOf(element1, index1 + 1); } - while(index2 !== -1) { + while (index2 !== -1) { counter++; index2 = text.indexOf(element2, index2 + 1); } @@ -141,25 +140,25 @@ function smilesProblem(text) { */ function ticTacToeProblem(field) { // Ваше решение - for(let i = 0; i < 3; i++) { + for (let i = 0; i < 3; i++) { if(field[i][0] === field[i][1] && field[i][0] === field[i][2]) { return field[i][0]; } } - for(let i = 0; i < 3; i++) { + for (let i = 0; i < 3; i++) { if(field[0][i] === field[i][1] && field[0][i] === field[i][2]){ return field[0][i]; } } - if(field[0][0] === field[1][1] && field[1][1] === field[2][2]) { + if (field[0][0] === field[1][1] && field[1][1] === field[2][2]) { return field[0][0]; } - if(field[0][2] === field[1][1] && field[1][1] === field[2][0]) { + if (field[0][2] === field[1][1] && field[1][1] === field[2][0]) { return field[0][2]; } + return 'draw'; -} - +} module.exports = { abProblem, From cdcdc8d946050be1b570dee214e80791bdfd0bd6 Mon Sep 17 00:00:00 2001 From: Raseen7 <32290423+Raseen7@users.noreply.github.com> Date: Fri, 19 Oct 2018 16:19:16 +0500 Subject: [PATCH 12/18] Update warmup.js --- warmup.js | 11 ++++------- 1 file changed, 4 insertions(+), 7 deletions(-) diff --git a/warmup.js b/warmup.js index 5fc75fb7a..0632ac45e 100644 --- a/warmup.js +++ b/warmup.js @@ -25,7 +25,6 @@ function centuryByYearProblem(year) { if (yearStr.length === 4) { return parseInt(yearStr.substring(0, 1), 10) + 1; } - return 1; } @@ -38,7 +37,7 @@ function centuryByYearProblem(year) { */ function colorsProblem(hexColor) { // Ваше решение - return '(' + parseInt(hexColor.substring(1, 2), 16) + + return '(' + parseInt(hexColor.substring(1, 2), 16) + parseInt(hexColor.substring(3, 4), 16) + parseInt(hexColor.substring(5, 6)) + ')'; } @@ -55,7 +54,6 @@ function fibonacciProblem(n) { for (let i = 2; i < 61; i++) { fibSequence[i].push(fibSequence[i - 1] + fibSequence[i - 2]); } - return fibSequence[n]; } @@ -130,7 +128,6 @@ function smilesProblem(text) { return counter; } - /** * Определяет победителя в игре "Крестики-нолики" @@ -141,12 +138,12 @@ function smilesProblem(text) { function ticTacToeProblem(field) { // Ваше решение for (let i = 0; i < 3; i++) { - if(field[i][0] === field[i][1] && field[i][0] === field[i][2]) { + if (field[i][0] === field[i][1] && field[i][0] === field[i][2]) { return field[i][0]; } } for (let i = 0; i < 3; i++) { - if(field[0][i] === field[i][1] && field[0][i] === field[i][2]){ + if (field[0][i] === field[i][1] && field[0][i] === field[i][2]){ return field[0][i]; } } @@ -158,7 +155,7 @@ function ticTacToeProblem(field) { } return 'draw'; -} +} module.exports = { abProblem, From 65c5db18899eb9d7505ace33cf68deeb7678d09d Mon Sep 17 00:00:00 2001 From: Raseen7 <32290423+Raseen7@users.noreply.github.com> Date: Fri, 19 Oct 2018 16:22:41 +0500 Subject: [PATCH 13/18] Update warmup.js --- warmup.js | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/warmup.js b/warmup.js index 0632ac45e..b497010e1 100644 --- a/warmup.js +++ b/warmup.js @@ -139,13 +139,13 @@ function ticTacToeProblem(field) { // Ваше решение for (let i = 0; i < 3; i++) { if (field[i][0] === field[i][1] && field[i][0] === field[i][2]) { - return field[i][0]; - } + return field[i][0]; + } } for (let i = 0; i < 3; i++) { if (field[0][i] === field[i][1] && field[0][i] === field[i][2]){ - return field[0][i]; - } + return field[0][i]; + } } if (field[0][0] === field[1][1] && field[1][1] === field[2][2]) { return field[0][0]; From c6b8b70398ea58ce7c8394ae25ffb8fb7b5245f3 Mon Sep 17 00:00:00 2001 From: Raseen7 <32290423+Raseen7@users.noreply.github.com> Date: Fri, 19 Oct 2018 16:26:17 +0500 Subject: [PATCH 14/18] Update warmup.js --- warmup.js | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/warmup.js b/warmup.js index b497010e1..5a0f59054 100644 --- a/warmup.js +++ b/warmup.js @@ -25,6 +25,7 @@ function centuryByYearProblem(year) { if (yearStr.length === 4) { return parseInt(yearStr.substring(0, 1), 10) + 1; } + return 1; } @@ -54,6 +55,7 @@ function fibonacciProblem(n) { for (let i = 2; i < 61; i++) { fibSequence[i].push(fibSequence[i - 1] + fibSequence[i - 2]); } + return fibSequence[n]; } @@ -143,7 +145,7 @@ function ticTacToeProblem(field) { } } for (let i = 0; i < 3; i++) { - if (field[0][i] === field[i][1] && field[0][i] === field[i][2]){ + if (field[0][i] === field[i][1] && field[0][i] === field[i][2]) { return field[0][i]; } } @@ -153,7 +155,7 @@ function ticTacToeProblem(field) { if (field[0][2] === field[1][1] && field[1][1] === field[2][0]) { return field[0][2]; } - + return 'draw'; } From 8a0e6389c34229603b767483b4c9fd94b841188f Mon Sep 17 00:00:00 2001 From: Raseen7 <32290423+Raseen7@users.noreply.github.com> Date: Fri, 19 Oct 2018 16:29:05 +0500 Subject: [PATCH 15/18] Update warmup.js --- warmup.js | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/warmup.js b/warmup.js index 5a0f59054..583f20c5b 100644 --- a/warmup.js +++ b/warmup.js @@ -143,12 +143,11 @@ function ticTacToeProblem(field) { if (field[i][0] === field[i][1] && field[i][0] === field[i][2]) { return field[i][0]; } - } - for (let i = 0; i < 3; i++) { if (field[0][i] === field[i][1] && field[0][i] === field[i][2]) { return field[0][i]; } } + if (field[0][0] === field[1][1] && field[1][1] === field[2][2]) { return field[0][0]; } From 1775c4ffd47b7febd8a1499daed7a9a560181d04 Mon Sep 17 00:00:00 2001 From: Raseen7 <32290423+Raseen7@users.noreply.github.com> Date: Fri, 19 Oct 2018 16:38:01 +0500 Subject: [PATCH 16/18] Update warmup.js --- warmup.js | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/warmup.js b/warmup.js index 583f20c5b..3f1190879 100644 --- a/warmup.js +++ b/warmup.js @@ -23,7 +23,7 @@ function centuryByYearProblem(year) { // Ваше решение const yearStr = year.toString; if (yearStr.length === 4) { - return parseInt(yearStr.substring(0, 1), 10) + 1; + return parseInt(yearStr.substring(0, 2), 10) + 1; } return 1; From 47f1d8474bc24bf4309c1e20529fcf1712780485 Mon Sep 17 00:00:00 2001 From: Raseen7 <32290423+Raseen7@users.noreply.github.com> Date: Fri, 19 Oct 2018 16:44:54 +0500 Subject: [PATCH 17/18] Update warmup.js --- warmup.js | 5 +---- 1 file changed, 1 insertion(+), 4 deletions(-) diff --git a/warmup.js b/warmup.js index 3f1190879..b3b678d2b 100644 --- a/warmup.js +++ b/warmup.js @@ -22,11 +22,8 @@ function abProblem(a, b) { function centuryByYearProblem(year) { // Ваше решение const yearStr = year.toString; - if (yearStr.length === 4) { - return parseInt(yearStr.substring(0, 2), 10) + 1; - } - return 1; + return parseInt(yearStr.substring(0, 2), 10) + 1; } /** From 5f7566944beb3db7f8847b4b36a95cfd7fb3653e Mon Sep 17 00:00:00 2001 From: Raseen7 <32290423+Raseen7@users.noreply.github.com> Date: Wed, 7 Nov 2018 19:17:29 +0500 Subject: [PATCH 18/18] Add files via upload --- warmup.js | 18 ++++++++++-------- 1 file changed, 10 insertions(+), 8 deletions(-) diff --git a/warmup.js b/warmup.js index b3b678d2b..a8b8c03e4 100644 --- a/warmup.js +++ b/warmup.js @@ -21,9 +21,12 @@ function abProblem(a, b) { */ function centuryByYearProblem(year) { // Ваше решение - const yearStr = year.toString; + const yearStr = year.toString(); + if (yearStr.length === 4) { + return parseInt(yearStr.substring(0, 2), 10) + 1; + } - return parseInt(yearStr.substring(0, 2), 10) + 1; + return 1; } /** @@ -35,8 +38,8 @@ function centuryByYearProblem(year) { */ function colorsProblem(hexColor) { // Ваше решение - return '(' + parseInt(hexColor.substring(1, 2), 16) + - parseInt(hexColor.substring(3, 4), 16) + parseInt(hexColor.substring(5, 6)) + ')'; + return '(' + parseInt(hexColor.substring(1, 3), 16) + ', ' + + parseInt(hexColor.substring(3, 5), 16) + ', ' + parseInt(hexColor.substring(5, 7), 16) + ')'; } /** @@ -47,10 +50,9 @@ function colorsProblem(hexColor) { * @returns {Number} Число Фибоначчи, находящееся на n-ой позиции */ function fibonacciProblem(n) { - // Ваше решение const fibSequence = [0, 1]; for (let i = 2; i < 61; i++) { - fibSequence[i].push(fibSequence[i - 1] + fibSequence[i - 2]); + fibSequence.push(fibSequence[i - 1] + fibSequence[i - 2]); } return fibSequence[n]; @@ -63,8 +65,7 @@ function fibonacciProblem(n) { * @returns {(Any[])[]} Транспонированная матрица размера NxM */ function matrixProblem(matrix) { - // Ваше решение - let transposedMatrix = []; + let transposedMatrix = [[0, 0, 0], [0, 0, 0], [0, 0, 0]]; for (let i = 0; i < matrix.length; i++) { for (let j = 0; j < matrix.length; j++) { transposedMatrix[j][i] = matrix[i][j]; @@ -74,6 +75,7 @@ function matrixProblem(matrix) { return transposedMatrix; } + /** * Переводит число в другую систему счисления * @param {Number} n Число для перевода в другую систему счисления