@Varolou

Что не так с кодом js?

/*Создать функцию которая будет принимать массив и переменную k ,

а в результате выполнения возвращать

true если сумма любых двух членов массива равна k и false если нет.*/

let n=0
let x=0

function func(arr,k){
    for(let i=0;
i<arr.length;i++)
{

if(n===arr[i]){
  x++

for(let i=0;
i<arr.length;i++)
{

  if(n+arr[i]===k){
      console.log(n)
      console.log(arr[i])
    return  true
  
   }}}}

  if(x<arr.length){                                 
n++
func(arr,k)        
 }
if(x>=arr.length){
return false
}
}
console.log(func([11,25,34,46,5],59))
  • Вопрос задан
  • 145 просмотров
Решения вопроса 2
WblCHA
@WblCHA
Очень интересный код, который упадёт ещё на проверке синтаксиса.

const hasPairSum = (nums, desiredValue) => {
    if(nums.length < 2) {
      return false;
    }
    const [firstNum, ...tailNums] = nums;
    const hasDesiredValue = tailNums.some((num) => firstNum + num === desiredValue);
    return hasDesiredValue || hasPairSum(tailNums, desiredValue);
  };
Ответ написан
Stalker_RED
@Stalker_RED
const func = (arr, k) => arr.some(a =>
  arr.some(b => a + b === k)
);

console.log(func([11,25,34,46,5],59));
Ответ написан
Комментировать
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы