pascal递归问题,第十六届信息学奥林匹克竞赛普及组阅读程序第三题,为什么第一题答案是1,第二个答案是4
constnum=5;varn:integer;functionr(n:integer):integer;vari:integer;beginifn<=numthenbe...
const
num = 5;
var
n: integer;
function r(n : integer) : integer;
var
i : integer;
begin
if n <= num then
begin
r := n;
exit;
end;
for i :=1 to num do
if r(n-i) < 0 then
begin
r:=i;
exit;
end;
r:=-1;
end;
begin
readln(n);
writeln(r(n));
end.
(1)
输入:7
输出:__________(4分)
(2)
输入 16
输出:__________(4分) 展开
num = 5;
var
n: integer;
function r(n : integer) : integer;
var
i : integer;
begin
if n <= num then
begin
r := n;
exit;
end;
for i :=1 to num do
if r(n-i) < 0 then
begin
r:=i;
exit;
end;
r:=-1;
end;
begin
readln(n);
writeln(r(n));
end.
(1)
输入:7
输出:__________(4分)
(2)
输入 16
输出:__________(4分) 展开
2个回答
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询