program raf105;
var
i,n: integer;
s: real;
begin
write('Введите N: ');
readln(n);
repeat
i:= i+1;
s:= s + 1/i;
until i = n;
writeln('S = ',s);
end.
<h3><u>PascalABC 3.4.2</u></h3>
A1 A2 B1 B2 C1 C2 ---> 6 ячеек
<span><em>uses crt;</em>
<em>var a,b,c,d,x:real;
</em>
<em>begin</em>
<em>clrscr;</em>
<em> writeln('введите A,B,C');
</em>
<em> readln( a,b,c );
</em>
<em> d:=sqr(b)-4*a*c;
</em>
<em> if d<0 then </em>
<em> writeln('действительных корней нет') </em>
<em> else if d=0 then </em>
<em> begin
</em>
<em> x:=(-b)/2*a;
</em>
<em> writeln('корень уравнения: ',x);
</em>
<em> end else </em>
<em> begin
</em>
<em> x:=(-b+sqrt(d))/2*a;
</em>
<em> writeln('1-ый корень уравнения: ',x);
</em>
<em> x:=(-b-sqrt(d))/2*a;
</em>
<em> writeln('2-ой корень уравнения: ',x);
</em>
<em> end
</em>
<em>end.</em>
<em><u>P.S. Надеюсь на благодарность и лучший ответ.</u></em>
</span>
<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.