На бейсике
Dim A(20) As Integer, k As Integer, S As Integer, i As Integer
Randomize
For i = 1 To 20
A(i) = Int(Rnd(1)*45) - 15 ' Заполняем массив случайными числами от -15 до 30
Next i
k = 0: S = 0
For i = 1 To 20
If A(i) <> 0 Then k = k + 1 ' Нашли ненулевой элемент - прибавляем счетчик
If A(i) > 0 Then S = S + A(i) ' Нашли положительный элемент - складываем
Next i
Print "Количество ненулевых элементов " & k
Print "Сумма положительных элементов " & S
End