Решите три задачи разными операторами цикла: (pascal abc)
1. Дана последовательность натуральных чисел, заканчивающаяся нулем. А также найти среднее арифметическое данной последовательности чисел, 0 при этом не учитывается.
2. Найти сумму всех чисел Фибоначчи, не превосходящих заданного натурального числа N.
3. Дано действительное число n>1. Получить наибольшее число вида 2^n (2 в степени n), не превосходящее n.
Answers & Comments
var a, b:integer;
s:real;
begin
a:=1;
s:=0;
b:=0;
while a <> 0 do
begin
read (a);
s:=s+a;
b:=b+1;
end;
s:=s/(b-1);
writeln (s);
end.
-------------------------------------------------------------
program zadanie2 (input, output);
var a, p, b, c, n, s:integer;
begin
a:=1;
b:=0;
c:=0;
s:=0;
read (n);
repeat
c:=a+b;
b:=a;
a:=c;
s:=s+c;
if s < n then
p:=s;
until s > n;
writeln (p);
end.
--------------------------------------------------
program zadanie3 (input, output);
var n, I:integer;
a, b:real;
begin
read (n);
a:=0;
for I:=0 to n do
begin
a:=exp(I*ln(2));
if a < n then
b:=a;
end;
writeln (b);
end.