Посмотри как функция строится
F(0)=1, F(1)=1, F(2)=3, F(3)=7, F(4)=17, F(5)=41, F(6)=99
То есть последующий элемент равен сумме удвоенного предыдущего и препредыдущего.
Код возвращает порядковый номер элемента, котрый больше данного K
Больше 45 будет шестой элемент, который равен 99.
Он также будет больше 42,43 и т.д.
Всего их 99-41=58 Если требуется исключить 45, то остается 57
Поясню, что 99 нам не подходит, а 41 подходит.
Ответ:57
1.
Var S : String;
i : Byte;
Begin
Readln(S);
For i:=Length(S) downto 1 do Write(S[i]);
Writeln;
end.
2.
Function StRevers(St : String) : String;
Begin
If Length(St)>1 then StRevers:=St[Length(St)]+StRevers(Copy(St,2,Length(St)-2))+St[1]
else StRevers:=St;
end;
Var S : String;
Begin
Readln(S);
Writeln(StRevers(S));
end.
Const m=5; n=6;
var
a:array[1..m,1..n] of integer;
b:array[1..m] of integer;
i,j,min:integer;
begin
Randomize;
writeln('Исходный массив:');
for i:=1 to m do
begin
for j:=1 to n do
begin
a[i,j]:=random(50);
write(a[i,j]:4);
end;
writeln;
end;
for i:=1 to m do
begin
min:=a[i,1];
for j:=2 to n do
if a[i,j]<min then min:=a[i,j];
b[i]:=min;
end;
writeln('Полученный массив:');
for i:=1 to m do write(b[i]:4);
writeln;
end.
Пример:
Исходный массив:
44 30 35 16 47 3
30 15 23 40 15 46
46 11 2 3 16 40
19 17 8 22 10 25
41 23 9 47 7 36
Полученный массив:
3 15 2 8 7
512*4=4096)
половина кб это 512 бит