<h3>PascalABC.NET 3.4.2, сборка 1814 от 02.10.2018</h3>
function ReadWhileSum(cond: integer->boolean): sequence of integer;
begin
var s := 0;
while True do
begin
var x := ReadInteger();
s += x;
if not cond(s) then break;
yield x;
end;
end;
begin
Println('Сред. арифм. =',ReadWhileSum(sum -> sum < 150)
.Where(t->t.IsEven).Average);
end.
#include <iostream>
using namespace std;
const int N = 8; //длина массива
double s = 0; //начальное значение суммы
double mas[N]; //объявляем статический массив длины N
int main()
{
//вводим элементы массива
for(int i = 0; i < N; ++i)
{
cin >> mas[i];
}
//пробегаемся по элементам массива
for(int i = 0; i < N; ++i)
{
if(mas[i] != 0.0) //если элемент массива не равен 0
s += 1. / mas[i]; //прибавляем значение обратного элемента к итоговой сумме
}
cout << s; //вывод суммы на экран
return 0;
<span>}</span>