Top.Mail.Ru
Ответы
Аватар пользователя
Аватар пользователя
Аватар пользователя
Аватар пользователя
Программирование
+3

Помогите, пожалуйста, правильно ли написаны функций JavaScript

!) Во всех функциях должна быть проверка наличия элементов. Если элементы не передавались в функцию, то нет смысла что-либо считать и можно сразу возвращать ноль. - ???
1) Функция summElementsWorker, должна находить сумму элементов массива и возвращать её (c помощью цикла или метода reduce)

1234567
 function summElementsWorker(arr) {  
  var sum = 0;  
  for (var i = 0; i < arr.length; i++) {  
    sum += arr[i];  
  }  
  return sum;  
} 

2) Функция differenceMaxMinWorker для вычисления разницы min\max

1234567891011121314
 function differenceMaxMinWorker (arr) {  
let min = Infinity;  
let max = -Infinity;  
let array = [1, 2, 3, 4, 5];  
for (let num of array) {  
  if (num < min) {  
    min = num;  
  }  
  if (num > max) {  
    max = num;  
  }  
}  
const difference = Math.abs(max - min);  
} 

3) differenceEvenOddWorker для разницы сумм чётных и нечётных элементов. 2 переменные для накапливания элементов (начальное ноль), перебрать все элементы (проверка if / else), если элемент чётный, то увеличивайте одну переменную, а если нечётный, то другую. Возвращать разницу элементов. ???

123
 function differenceEvenOddWorker (arr) {  
 
} 

4) averageEvenElementsWorker среднее значение чётных элементов. 2 переменные, в которых будут накапливаться сумма чётных элементов и их количество (начальные ноль), цикл для перебора всех элементов (проверка с if), если элемент чётный, то увеличивайте одну переменную на перебираемый элемент, а другую переменную — на единицу. Результат - деление суммы элементов на их количество. ???

12345678910111213
 function averageEvenElementsWorker (arr) {  
let x = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20];   
var count = 0;  
var summ = 0;  
for (let i = 0; i < x.length; i++) {  
  if (x[i] % 2 == 0) {  
    count += 1;  // Если чётное, считаем сколько чётных цифр  
    summ += x[i];  // Если чётное, считаем сумму чётных  
  }  
}  
var itog = summ / count;   
console.log(itog);  
} 
Дополнен

как их правильно написать?

По дате
По рейтингу
Аватар пользователя
Высший разум
5мес
1234567891011121314151617181920212223242526272829303132333435363738
 function summElementsWorker(arr) { 
    let sum = 0;   
    for (let num of arr) sum += num; 
    return sum; 
} 
 
function differenceMaxMinWorker(arr) { 
    let min = arr[0]; 
    let max = arr[0]; 
    for (let num of arr) { 
        if (num < min) min = num; 
        if (num > max) max = num; 
    } 
    return max - min; 
} 
 
 
function differenceEvenOddWorker(arr) { 
    let odd = 0; 
    let even = 0; 
    for (let num of arr) { 
        if (0 == num % 2) even += num; 
        else odd += num; 
    } 
    return even - odd; 
} 
 
function averageEvenElementsWorker(arr) { 
    let sum = 0; 
    let count = 0; 
    for (let num of arr) { 
        if (0 == num % 2) { 
            sum += num; 
            count += 1; 
        } 
    } 
    return count ? sum / count : NaN; 
} 
Аватар пользователя
Высший разум
5мес

Нет ни одного ответа, полностью отвечающего заданию

Аватар пользователя
5мес

как человек который в этом не разбирается, скажу да