Алгоритм называется линейным<span>, </span>если<span>. он составлен так, что его выполнение предполагает многократное повторение одних и тех же действий</span>
Все легко и просто. открой учебник и прочитай его все станет понятно)
Не более 16 этажей и не менее 10:
<span>1 бит - половина дома (верхняя или нижняя) </span>
<span>2 бит - половина половины </span>
<span>3 бит - п. п. п. </span>
<span>4 бит - п. п. п. п. </span>
<span>может быть: 4,8,16, 32 и т. п. этажей.. . </span>
<span>при том, что в доме не менее 10 этажей </span>
<span>число 10 в двоичной системе: 1010</span>
Program n1;
var a,sum,i: integer;
begin
sum:=0;
for i:=1 to 10 do
begin
readln(a);
if a mod 10=3 then sum:=sum+a;
end;
write(sum);
end.
<em>// PascalABC.NET 3.2, сборка 1427 от 24.04.2017</em>
<em>// Внимание! Если программа не работает, обновите версию!</em>
function Pow(x,y:BigInteger):BigInteger;
begin
Result:=x;
for var i:=int64(2) to int64(y) do Result*=x
end;
begin
var x,y:integer;
Write('Введите натуральные х и у: '); Read(x,y);
if (x<=0) or (y<=0) then begin
Writeln('Неверный ввод'); Exit
end;
if x=1 then Writeln('Результат: ',y+1)
else begin
var x1:=Range(2,x).Aggregate(BigInteger(1),(a,b)->a*b);
Writeln('Результат ',Pow(x,y)+Pow(y,x1))
end
end.
<u>Пример</u>
Введите натуральные х и у: 5 8
Результат 2348542582773833227889480596789337027375682548908319870707290971532209025114608443463698998384768703032325601