题目: |
Program cx2016p4;
var n:integer;
first:boolean;
function find(n:integer):integer;
var a, b, c:integer;
begin
a:=1;
b:=1;
repeat
c:=a+b;
a:=b;
b:=c;
until b>=n;
if b=n then find:=b else find:=a;
end;
procedure p(n:integer);
var a:integer;
begin
a:=find(n);
if first then begin write(a); first:=false; end
else write('+', a);
if a<n then p(n-a);
end;
begin
readln(n);
first:=true;
p(n);
end.
输入:143 输出:89+34+13+5+2
|