Обходите массив. На каждой итерации проверяете текущий итерируемый элемент: больше ли он нуля, либо же меньше. Складываете в результат только те, что больше нуля:
let array = [-2, 4, -10, 8];
let result = 0;
for (let i = 0; i < array.length; i++) {
if (array[i] > 0) {
result += array[i];
}
}
console.log(result);
let array = [-2, 4, -10, 8];
let summ = array.reduce((a,v)=>v>0?a+v:a, 0);
Более понятный вариант для начинающего
const array = [1, 2, 4, -15, 20, -5, -7] // массив
let value = 0 // сюда записываем результат
array.forEach((element) => value += element > 0 ? element : 0) // перебор массива array + условие (что нужно прибавить к value)
let array = [-2, 4, -10, 8];
let count = 0;
for (let i = 0; i < array.length; i++) {
if (!String(array[i]).startsWith("-")) {
count += array[i]
}
}
console.log(count) // 12
Информационный блок
Рекламный блок
Использование циклов. Сумма положительных элементов массива
Σ Сумма элементов массива. 🔁 Циклы for, while, repeat. Пять примеров решения задачи на языке Паскаль. В некоторых вариантах используется синтаксис для PascalABC.NET
Σ Сумма случайных чисел. 🔁 Циклы for, while. Три задачи на нахождение суммы случайно сгенерированных элементов. Для каждой задачи приведено два варианта — классический синтаксис (Turbo/Borland Pascal) и PascalABC.NET
🔀 Обмен двух чисел в массиве. Тема «Циклы и массивы». Два варианта решения задачи.
Σ Вычисление суммы цифр числа. Пять вариантов решения задачи, в том числе одно по рекомендациям PascalABC.NET (качество кода 149%).
Циклы for, while, repeat. Шесть примеров решения задачи на языке Паскаль. Варианты для Turbo/Borland/FreePascal и PascalABC.NET
Цикл for. Найти сумму положительных элементов вещественного массива
Задание:
Ввести с клавиатуры массив из 10 вещественных чисел.
Найти сумму положительных элементов массива.
Program Summa10;
Var
i : Integer;
Summa : Real;
A : array [1..10] of Real;
begin
writeln(‘Введите 10 вещественных чисел ‘);
for i := 1 to 10 do readln(A[i]);
Summa := 0;
for i := 1 to 10 do
if (A[i] > 0) then Summa := Summa + A[i];
writeln(‘Сумма = ‘, Summa);
end.
Цикл for. Найти сумму положительных элементов массива
Задание:
Ввести с клавиатуры массив из 10 вещественных чисел.
Найти сумму положительных элементов массива.
Вариант для PascalABC.NET
begin
var A : array [1..10] of Real;
var Summa := 0.0;
write(‘Введите 10 вещественных чисел ‘);
for var i := 1 to 10 do begin // Параметр цикла for в PascalABC.NET должен описываться в заголовке цикла
A[i] := ReadlnReal;
if (A[i] > 0) then Summa := Summa + A[i];
end;
writeln(‘Сумма = ‘, Summa);
end.
Цикл while. Найти сумму положительных элементов массива
Задание:
Ввести с клавиатуры массив из 10 вещественных чисел.
Найти сумму положительных элементов массива.
Program CalcSum;
Var
i : Integer;
Summa : Real;
A : array [1..10] of Real;
begin
writeln(‘Введите 10 вещественных чисел ‘);
i := 1;
while i <= 10 do begin
readln(A[i]);
i := i + 1;
end;
Summa := 0;
i := 1;
while i <= 10 do begin
if (A[i] > 0) then Summa := Summa + A[i];
i := i + 1;
end;
writeln(‘Сумма = ‘, Summa);
end.
Цикл while. Вычислить сумму положительных элементов массива
Задание:
Ввести с клавиатуры массив из 10 вещественных чисел.
Найти сумму положительных элементов массива.
var
i: Integer;
Summa: Real;
A: array [1..10] of Real;
begin
write(‘Введите 10 вещественных чисел ‘);
i := 1;
Summa := 0;
while i <= 10 do
begin
readln(A[i]);
if (A[i] > 0) then Summa := Summa + A[i];
i := i + 1;
end;
writeln(‘Сумма = ‘, Summa);
end.
Цикл while. Сумма положительных элементов массива. Вариант для PascalABC.NET
Задание:
Ввести с клавиатуры массив из 10 вещественных чисел.
Найти сумму положительных элементов массива.
begin
Var
A : array of Real := New real[10]; // Динамический массив. Индексы в массиве начинаются с 0
Var
i : Integer := 1;
Var
Summa : Real := 0;
writeln(‘Введите 10 вещественных чисел ‘);
while i <= 10 do begin
A[i-1] := ReadReal;
if (A[i-1] > 0) then Summa += A[i-1];
i += 1;
end;
Println(‘Сумма = ‘, Summa);
end.
Цикл repeat. Сумма положительных элементов массива
Задание:
Ввести с клавиатуры массив из 10 вещественных чисел.
Найти сумму положительных элементов массива.
Вариант для PascalABC.NET
Var
i : Integer = 1;
Summa : Real = 0;
A : array [1..10] of Real;
begin
writeln(‘Введите 10 вещественных чисел ‘);
repeat
A[i] := ReadReal(‘Введите число ‘);
if (A[i] > 0) then Summa += A[i];
i += 1;
until i > 10;
Println(‘Сумма = ‘, Summa);
end.
Σ Сумма элементов массива. 🔁 Циклы for, while, repeat. Пять примеров решения задачи на языке Паскаль. В некоторых вариантах используется синтаксис для PascalABC.NET
Σ Сумма случайных чисел. 🔁 Циклы for, while. Три задачи на нахождение суммы случайно сгенерированных элементов. Для каждой задачи приведено два варианта — классический синтаксис (Turbo/Borland Pascal) и PascalABC.NET
🔀 Обмен двух чисел в массиве. Тема «Циклы и массивы». Два варианта решения задачи.
Σ Вычисление суммы цифр числа. Пять вариантов решения задачи, в том числе одно по рекомендациям PascalABC.NET (качество кода 149%).
Рекламный блок
Информационный блок
0 / 0 / 0 Регистрация: 20.01.2016 Сообщений: 26 |
|
1 |
|
Найти сумму всех положительных элементов массива02.02.2016, 14:01. Показов 14643. Ответов 10
написать на программе на c# найти сумму всех положительных элементов массива результат вывести на экран.
0 |
Евгений Ратник 1 / 1 / 1 Регистрация: 04.01.2016 Сообщений: 44 |
||||
02.02.2016, 14:11 |
2 |
|||
Решение
Дальше сам
1 |
Legend072 24 / 24 / 22 Регистрация: 22.02.2015 Сообщений: 125 |
||||
02.02.2016, 14:14 |
3 |
|||
РешениеСттас,
1 |
0 / 0 / 0 Регистрация: 20.01.2016 Сообщений: 26 |
|
02.02.2016, 15:15 [ТС] |
4 |
спасибо Добавлено через 15 минут Добавлено через 27 минут
0 |
24 / 24 / 22 Регистрация: 22.02.2015 Сообщений: 125 |
|
02.02.2016, 15:35 |
5 |
Сттас, выложите код, который у вас не работает.
1 |
greg zakharov Покинул форум 5642 / 1427 / 350 Регистрация: 07.05.2015 Сообщений: 2,803 |
||||
02.02.2016, 16:39 |
6 |
|||
Решение
1 |
Psilon Master of Orion 6094 / 4950 / 905 Регистрация: 10.07.2011 Сообщений: 14,522 Записей в блоге: 5 |
||||
02.02.2016, 17:20 |
7 |
|||
0 |
Ankoo 2 / 2 / 3 Регистрация: 20.03.2015 Сообщений: 112 |
||||
02.02.2016, 17:48 |
8 |
|||
1 |
0 / 0 / 0 Регистрация: 20.01.2016 Сообщений: 26 |
|
02.02.2016, 19:07 [ТС] |
9 |
using System; namespace massiv13 static void Main(string[] args) }
0 |
24 / 24 / 22 Регистрация: 22.02.2015 Сообщений: 125 |
|
02.02.2016, 21:12 |
10 |
Сттас, каким образом этот код относится к задаче? Вы тут что-то сортируете, а сами просите найти сумму всех положительных в теме. Вам нужно отсортировать массив или все таки найти сумму положительных?
0 |
0 / 0 / 0 Регистрация: 20.01.2016 Сообщений: 26 |
|
03.02.2016, 08:36 [ТС] |
11 |
найти сумму
0 |
var arr = [2, 5, 9, 15, 0, 4];
for (var i = 0; i < arr.length; i++) {
if (arr[i]%2 !=1){
console.log(arr[i]*2)
}
}
задан 27 апр 2021 в 9:04
1
Не ясно зачем вы проверяли число на четность, но если надо положительные, то так:
var arr = [2, 5, 9, 15, 0, 4, -9];
var sum = 0;
for (var i = 0; i < arr.length; i++) {
if (arr[i] > 0){
sum += arr[i];
}
}
console.log(sum);
Либо:
const arr = [2, 5, 9, 15, 0, 4, -9];
console.log(arr.reduce((a, c) => c > 0 ? a + c : a, 0));
ответ дан 27 апр 2021 в 9:06
entithatentithat
13.1k2 золотых знака19 серебряных знаков37 бронзовых знаков
4
**Тоже недавно начал изучать JS и тоже видел эту задачу, сделал её так: **
let arr = [1,2,5,5,-1,-2,-3,-4,-5];
let result = 0;
for (let i = 0; i < arr.length; i++){
if (arr[i] < 0) continue
else if(arr[i] > 0){
result += arr[i]
}
}
console.log(result);
ответ дан 16 мар 2022 в 13:22
2
Напишем программу, которая вычисляет сумму положительных элементов в массиве.
Вычисление суммы положительных элементов массива.
program massiv6; uses crt; const N=10; type x=array [1..N] of integer; var a:x; i:integer; s:integer; begin clrscr; randomize; for i:=1 to N do begin a[i]:= -100+random(201); write (A[i]:5) end; writeln; s:=0; for i:=1 to N do if a[i]>0 then begin s:=s+a[i] end; writeln (‘Сумма положительных элементов = ’,s:5); readln end.
В строке №7 переменная «S» – для хранения суммы.
В строке №13 генерируем 10 различных чисел в диапазоне от – 100 до + 100.
В строке №14 выводим эти числа на экран.
В строке №17 обнуляем переменную «S»
В строке 19 задаем условие: если значение элемента массива (т.е. если сгенерированное число) больше 0, тогда в строке №21 прибавляем к сумме это число. Таким образом, после выполнения цикла, все положительные числа должны прибавиться к общей сумме.
Предыдущая статья : Нахождение максимального элемента массива.
Оглавление : Уроки Паскаль.
Следующая статья : Подсчет количества четных элементов в массиве.