Mail.ruПочтаМой МирОдноклассникиВКонтактеИгрыЗнакомстваНовостиКалендарьОблакоЗаметкиВсе проекты

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

Vasya Ученик (174), открыт 2 дня назад
!) Во всех функциях должна быть проверка наличия элементов. Если элементы не передавались в функцию, то нет смысла что-либо считать и можно сразу возвращать ноль. - ???
1) Функция summElementsWorker, должна находить сумму элементов массива и возвращать её (c помощью цикла или метода reduce)
 function summElementsWorker(arr) {  
var sum = 0;
for (var i = 0; i < arr.length; i++) {
sum += arr[i];
}
return sum;
}
2) Функция differenceMaxMinWorker для вычисления разницы min\max
 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), если элемент чётный, то увеличивайте одну переменную, а если нечётный, то другую. Возвращать разницу элементов. ???
 function differenceEvenOddWorker (arr) {  

}
4) averageEvenElementsWorker среднее значение чётных элементов. 2 переменные, в которых будут накапливаться сумма чётных элементов и их количество (начальные ноль), цикл для перебора всех элементов (проверка с if), если элемент чётный, то увеличивайте одну переменную на перебираемый элемент, а другую переменную — на единицу. Результат - деление суммы элементов на их количество. ???
 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);
}
Дополнен 2 дня назад
как их правильно написать?
3 ответа
Никита Игнатович Мастер (1475) 2 дня назад
как человек который в этом не разбирается, скажу да
Татьяна Шеховцова Высший разум (526875) 2 дня назад
Нет ни одного ответа, полностью отвечающего заданию
Николай Веселуха Высший разум (374407) 1 день назад
 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;
}
Похожие вопросы