(() => {
const solution = (arr, iteration = 1) => {
if(arr.every(num => num === arr[0])) {
return arr[0] * arr.length;
}
const minNum = Math.min(...arr)
arr.forEach((num, i) => {
if(num > minNum) {
arr[i] = num % minNum || minNum;
}
});
console.log(`Iteration ${iteration}`, arr);
return solution(arr, iteration + 1);
}
console.log(solution([6,9,21]));
console.log(solution([56, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 142]));
})()
(() => {
const solution = (arr, iteration = 1) => {
const minNum = Math.min(...arr);
let hasDif = false;
arr.forEach((num, i) => {
if(num > minNum) {
hasDif = true;
arr[i] = num % minNum || minNum;
}
});
if(hasDif) {
console.log(`Iteration ${iteration}`, arr);
return solution(arr, iteration + 1);
}
return arr[0] * arr.length;
}
console.log(solution([6,9,21]));
console.log(solution([56, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 142]));
})()
(() => {
const solution = (arr) => {
let iteration = 1;
const baseSet = new Set(arr);
if(baseSet.size < 2) {
return arr[0] * arr.length;
}
const solve = (set) => {
const minNum = Math.min(...set);
const nextSet = new Set();
set.forEach((num, i) => {
if(num > minNum) {
nextSet.add(num % minNum || minNum);
}
});
if(nextSet.size < 2) {
return minNum * arr.length;
}
console.log(`Iteration ${iteration}`, arr);
return solve(nextSet);
}
return solve(baseSet);
}
console.log(solution([6,9,21]));
console.log(solution([56, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 142]));
})()
'<h tml><b ody><i nput>'.replace(/(<\/?[a-z])\s([a-z0-9]+)(?=[\s>])/g, '$1$2')
После успешного выполнения возвращает массив объектов пользователей.
Я имею ввиду как сделать так чтобы после условия я мог выполнить 2 действия, а не одно? К примеру age < 3 ? 'Привет', 'Как дела?' : 'Хай', 'Бай'
condition ? (..., ..., ...) : (...)
const arr = [
{ number: 100, pr: 1 },
{ number: 101, pr: 2 },
{ number: 190, pr: 5 },
{ number: 223, pr: 4 }
];
// если порядок оригинального массива нужно отсортировать,
// то: arr.sort
const sortedArr = [...arr].sort((el1, el2) => el1.pr - el2.pr);
sortedArr.forEach((el, index) => {
el.pr = index + 1;
});
console.log(arr);
console.log(sortedArr);
alert('Ввод не распознан');
return checkAnswer(question);
function checkAnswer(question) {
var answer = prompt(question).toLowerCase();
if (answer == 'да') {
return true;
} else if (answer == 'нет') {
return false;
}
alert('Ввод не распознан');
checkAnswer(question); // возвращает true / false / undefined и идёт дальше, т.к. нет return
return undefined;
}
eCSStractor
.