ArtemKornishon, А вот мои рассуждения об этой задаче:
Декомпозиция.
На выходе должны быть две суммы. Значит нам понадобится, как минимум, две переменные, в которых эти суммы будут накапливаться. Очевидно, что в начале надо эти переменные обнулить.
Как отличить друг от друга отрицательные и положительные числа? Да просто сравнить их с нулём. Те, что меньше нуля - отрицательные, остальные - положительные.
Нам нужно проверить все числа массива. Значит нужно пройти по массиву циклом, внутри которого будет проверка числа и прибавление его к тому или другому счётчику.
Синтез.
Заведём две переменные для сумм и обнулим их
Для каждого числа из массива
Если число меньше нуля, то прибавим его к сумме отрицательных чисел
Иначе прибавим его к сумме положительных чисел
Вернём ответ с полученными суммами
Как видите, я получил алгоритм действий, который не зависит от языка программирования.
Дальше реализация.
function summs(numbers) {
let summPositive = 0;
let summNegative = 0;
for (let i = 0; i < numbers.length; ++i) {
if (numbers[i] < 0) {
summNegative += numbers[i];
} else {
summPositive += numbers[i];
}
}
return { summPositive, summNegative };
}
Из специфического для JS здесь только возврат двух значений в виде объекта. Остальной код будет практически таким же на любом C-подобном языке программирования.
Вы уверены, что ваша проблема именно в слабом знании JS? По описанным симптомам больше похоже, что у вас беда с программированием в целом, безотносительно к языку.
Определитесь, что именно вам не даётся - понимание того, что нужно сделать для решения, или реализация полностью понятного вам алгоритма на JS.
Не стоит говорить сразу о всех редакторах.
Например, mcedit ничего не добавляет сам и спокойно создаёт файл из одного символа без переноса строки.
echo тоже можно заставить не добавлять конец строки, для этого есть ключ -n.
touch вообще создаёт пустой файл, а символ конца строки дописывает ваш редактор.
Ничего не отломано. Эти пины по стандарту укороченные, на них сигналы PRSNT#1 и PRSNT#2 для обнаружения карты в hotplug (включение на горячую). Они соединяются последними, когда остальные контакты уже подключены.
Valentine5, Не нужны тут ни curl, ни file_get_contents. Вам надо не посылать свой запрос, а отдать ответ в течение 60 секунд после запроса к webhook'у. Самый простой способ это сделать - завершить скрипт.
My1Name, Строка - запись.
Для каждой отдельной блокировки создаётся отдельная запись, в которой только id заблокировавшего и id заблокированного. При снятии блокировки эта запись удаляется.
Декомпозиция.
На выходе должны быть две суммы. Значит нам понадобится, как минимум, две переменные, в которых эти суммы будут накапливаться. Очевидно, что в начале надо эти переменные обнулить.
Как отличить друг от друга отрицательные и положительные числа? Да просто сравнить их с нулём. Те, что меньше нуля - отрицательные, остальные - положительные.
Нам нужно проверить все числа массива. Значит нужно пройти по массиву циклом, внутри которого будет проверка числа и прибавление его к тому или другому счётчику.
Синтез.
Как видите, я получил алгоритм действий, который не зависит от языка программирования.
Дальше реализация.
Из специфического для JS здесь только возврат двух значений в виде объекта. Остальной код будет практически таким же на любом C-подобном языке программирования.