Функция f проверяет входные параметры на истинность. Верно, что f(0,1) и f(1,1). Также f(A,B) определена как C = A-1, f(C,D). При каком значении Q будет верно f(5,Q) ?
function colcifr(a: integer): integer; var s, k: string; i, j: integer; begin i := a; repeat str(i mod 10, k); i := i div 10; if (pos(k, s) = 0) then begin s := concat(s, k); inc(j); end; until (i = 0); colcifr := j; end;
function sum(i: integer): integer; var a, b: integer; begin a := i; repeat b := b + a mod 10; a := a div 10; until (a = 0); sum := b; end;
var i: integer;
begin for i := 1000 to 9999 do if (i mod 2 + i mod 7 + i mod 11 = 0) then if (colcifr(i) = 2) then if (sum(i) = 30) then writeln(i); end.
</head> <body> <p style="text-align: center"> Замыкание в Java Script для непосвященных. </p> <p align="left"> Появление «настоящих» замыканий в Java может спровоцировать волну новых споров о «чистоте» вроде споров об универсальных типах. </p> <p align="right"> Однако здесь снова всё неоднозначно, поскольку замыкания — идея очень простая, однако вместе с тем достаточно мощная. </p> <hr /> <div align="right"> <p> В этой статье я кратко расскажу о замыканиях для Java, которые, возможно, появятся уже в JDK 7. </p> <p> Скачать текущий прототип для экспериментов вот тут. </p> </div> </body> </html>
var
s, k: string;
i, j: integer;
begin
i := a;
repeat
str(i mod 10, k);
i := i div 10;
if (pos(k, s) = 0) then
begin
s := concat(s, k);
inc(j);
end;
until (i = 0);
colcifr := j;
end;
function sum(i: integer): integer;
var
a, b: integer;
begin
a := i;
repeat
b := b + a mod 10;
a := a div 10;
until (a = 0);
sum := b;
end;
var
i: integer;
begin
for i := 1000 to 9999 do
if (i mod 2 + i mod 7 + i mod 11 = 0) then
if (colcifr(i) = 2) then
if (sum(i) = 30) then
writeln(i);
end.
8778