Задания
3) Задача с собеседований. Напишите функцию
reverse, которая принимает в себя строку и возвращает эту строку в обратном порядке.
Пример:
const someString = 'This is some strange string';
reverse(someString) => 'gnirts egnarts emos si sihT'
4) Представьте такую реальную ситуацию. У вас есть банкомат, который выдает деньги из двух разных банков в разных валютах. Один банк основной с базовыми валютами, второй дополнительный с прочими валютами:
Код
const baseCurrencies = ['USD', 'EUR'];
const additionalCurrencies = ['UAH', 'RUB', 'CNY'];
Вам нужно создать главную функцию банкомата
availableCurr, которая принимает два аргумента: первый - это массив со всеми доступными валютами из двух банков сразу (сейчас представим, что они не могут повторяться), второй - необязательный аргумент, который указывает ту валюту, которая сейчас закончилась в банкомате. Если массив в первом аргументе пустой - то функция возвращает строку '
Нет доступных валют'. Функция возвращает строку в нужном виде.
Пример:
Код
availableCurr(['UAH', 'RUB', 'CNY'], 'CNY')
Вернет строку:
Цитата
Доступные валюты:
UAH
RUB
Заметьте:
- CNY (юань) исчез из списка валют, значит такая валюта закончилась
- После валюты: стоит перенос строки
\n, и после каждой валюты тоже. Это важно для тестов
- Данные для первого аргумента должны приходить сразу из двух банков, причем сначала
baseCurrencies, потом
additionalCurrencies по порядку
Код
const someString = 'This is some strange string';
function reverse(str) {
}
const baseCurrencies = ['USD', 'EUR'];
const additionalCurrencies = ['UAH', 'RUB', 'CNY'];
function availableCurr(arr, missingCurr) {
}
Решение
Код
const someString = "This is some strange string";
function reverse(str) {
if (typeof str === "string") {
const newStr = str.split("");
return newStr.reverse().join("");
} else {
return "Ошибка!";
}
}
reverse(someString); // gnirts egnarts emos si sihT
Вариант второй:
Код
const someString = "This is some strange string";
function reverse(str) {
let newStr = "";
if (typeof str === "string") {
for (let i = str.length - 1; i >= 0; i--) {
newStr += str[i];
}
} else {
newStr += 'Ошибка!';
}
return newStr;
}
Решение задачи 4:
Код
const baseCurrencies = ["USD", "EUR"];
const additionalCurrencies = ["UAH", "RUB", "CNY"];
const allCurrencies = [...baseCurrencies, ...additionalCurrencies];
function availableCurr(arr, missingCurr) {
let currencies = "Доступные валюты:\n";
if (arr.length > 0) {
arr.forEach((item) => {
if (item != missingCurr) {
currencies += item + "\n";
}
});
return currencies;
} else {
return "Нет доступных валют";
}
}
Всего комментариев: 1