Обязаны, учитывая строку, заменить каждую букву на ее позицию в алфавите.
Если что-то в тексте не является письмом, проигнорируйте его и не возвращайте.
"а" = 1, "Б" = 2 и т. д.
function alphabetPosition(text) {
let obj = {
"a": 1, "b": 2, "c": 3, "d": 4, "e": 5, "f": 6, "g": 7,
"h": 8, "i": 9, "j": 10, "k": 11, "l":12, "m": 13, "n": 14, "o": 15, "p": 16, "q": 17, "r": 18, "s": 19, "t": 20,
"u": 21, "v": 22, "w": 23, "x": 24, "y": 25, "z": 26
}
let arr = [];
let str = '';
text = text.replace(/[^a-zA-Z]+/g, '');
for (let key in obj) {
for (let i = 0; i < text.length; i++) {
if(text[i].toLowerCase() == key.toLowerCase() && text[i] !== '') {
arr[i] = obj[key];
}
}
}
str = arr.join(' ');
return str;
}
Test.assertEquals(alphabetPosition("The sunset sets at twelve o' clock."), "20 8 5 19 21 14 19 5 20 19 5 20 19 1 20 20 23 5 12 22 5 15 3 12 15 3 11");
Test.assertEquals(alphabetPosition("The narwhal bacons at midnight."), "20 8 5 14 1 18 23 8 1 12 2 1 3 15 14 19 1 20 13 9 4 14 9 7 8 20");
Cоздать функцию, которая может принимать в качестве аргумента любое неотрицательное целое число и возвращать его с цифрами в порядке убывания. По существу, измените порядок цифр, чтобы создать максимально возможное число.
function descendingOrder(n){
n = n.toString();
let arr = n.split('');
let N = arr.length;
if (n.length === 1) {
return parseInt(n, 10);
}
for (let i = 0; i < N; i++) {
for (let j = 0; j < N-i-1; j++) {
if (arr[j] < arr[j+1]) {
let k = arr[j];
arr[j] = arr[j+1];
arr[j+1] = k;
}
}
}
n = arr.join('');
n = parseInt(n, 10);
return n;
}
Test.assertEquals(descendingOrder(0), 0)
Test.assertEquals(descendingOrder(1), 1)
Test.assertEquals(descendingOrder(111), 111)
Test.assertEquals(descendingOrder(15), 51)
Test.assertEquals(descendingOrder(1021), 2110)
Test.assertEquals(descendingOrder(123456789), 987654321)