program z1;
var
i,j,m,k,z,x,l:integer;
begin
readln(m);
for i:=0 to m do begin z:=1;
if i=0 then z:=1 else begin
x:=i;
while x<>0 do begin
z:=z*4;
x:=x-1;
end; end;
if ((z<m) and (z*4>m)) then writeln(i);
if z=m then writeln(i-1);
end;
end.
program z2;
var
i,j,n,k,z,x,l:integer;
begin
readln(n);
for i:=0 to n do begin z:=1;
if i=0 then z:=1 else begin
x:=i;
while x<>0 do begin
z:=z*2;
x:=x-1;
end; end;
if ((z>n) and (z/2<n)) then writeln(i);
if z=n then writeln(i+1);
end;
end.
program z3;
var
i,j,n,k,z,x,s:integer;
begin
readln(n); s:=0;
for i:=1 to n do begin z:=1;
for j:=i to 2*i do
z:=z*j;
s:=s+z; end;
writeln(s);
end.
время 2 ночи
...думаю пора спать )
Поделитесь своими знаниями, ответьте на вопрос:
ниже на пяти языках ( в pascal) записан алгоритм. получив на вход число x, этот алгоритм печатает два числа a и b. укажите наименьшее из таких чисел x, при вводе которых алгоритм печатает сначала 6 , а потом 18.
ответ: 100288
объяснение:
если интеренсно , как я решил , то вот
#include
int main()
{
unsigned long a = 0, b = 0,x;
for (unsigned long y = 1; y < 2; y++)
{
x=y;
a=0;
b=0;
while (x > 0)
{
a++;
if (x % 2 == 0)
b = b + x % 10;
x = x / 10;
};
if(a==6 & & b==18)
{std: : cout < < y< < ")" < < a < < " " < < b;
exit(0);
}
};
}