Skip to content

Latest commit

 

History

History
70 lines (46 loc) · 3.07 KB

README.md

File metadata and controls

70 lines (46 loc) · 3.07 KB

Правила и регламент

Задание

Ваша задача написать и экспортировать из файла index.js 5 функций, каждая из которых является решением определенного задания.

Примечания

Вы можете самостоятельно протестировать работу функций, введя в терминал команду:

node index.js

Или запустить тесты, с помощью команды:

make test

Вам не разрешено изменять какие-либо файлы в каталоге, кроме файла index.js.

1 задача

Напишите функцию sumTwoIntegers(), которая принимает на вход 2 целых числа и возвращает их сумму.

sumTwoIntegers(1, 2); // 3
sumTwoIntegers(123121, 0); // 123121

2 задача

Напишите функцию unsafeDivision(), которая принимает два целых числа и возвращает результат деления первого аргумента на второй. При этом, если второй аргумент является нулем, то функция должна вернуть строку the universe collapsed!

unsafeDivision(10, 2); // 5
unsafeDivision(1, 0); // 'the universe collapsed!'

3 задача

Напишите функцию castBoolean(), которая приводит аргумент к булевому типу, в том случае, если аргумент уже является булевым значением, то верните строку already boolean;

castBoolean(2); // true
castBoolean(0); // false
castBoolean(console.log); // true
castBoolean(castBoolean(castBoolean)); // 'already boolean'

4 задача

Напишите функцию sortByLength(), которая принимает 3 строковых значения на вход и возвращает одну строку, которая располагает эти слова друг за другом в порядке увеличения длины, начиная с самого короткого слова и соединяет их пробелами.

sortByLength('a', 'bcd', 'yz'); // 'a yz bcd'
sortByLength('let', 'ex', 'H'); // 'H ex let'

5 задача

Напишите функцию encrypt(), которая принимает на вход 3 аргумента: строку, букву и символ. Эта функция заменяет в строке все буквы, кроме соответствующих 2 аргументу на символ.

encrypt('Hexlet', 'e', 'e') // 'eeeeee'
encrypt('Hello, world!', '!', '*') // '************!'