有几道题百思不得其解,希望大家多多帮忙!!!
number one
program ex404;
var x,x2:longint;由OIFans.cn收集
procedure digit(n,m:longint);
var n2:integer;
begin
if(m>0) then begin
n2:=n mod 10;
write(n2:2);
if(m>1) then digit(n div 10,m div 10);
n2:=n mod 10; write(n2:2); end;
end;
begin
writeln('Input a number:');
readln(x);
x2:=1;
while(x2<x) do x2:=x2*10;
x2:=x2 div 10; digit(x,x2); writeln;
end.
输入:9734526
输出:
number two
var
n : longint;
function g(k : longint) : longint;
begin
if k <= 1 then g := k
else g := (2002 * g(k - 1) + 2003 * g(k - 2)) mod 2005;
end;
begin
read(n);
writeln(g(n));
end.
输入:2005
输出:
number three
program program2;
var
i, number, ndata, sum: integer;
data: array[1..100] of integer;
procedure solve(s, sign, n: integer);
var i: integer;
begin
for i := s to ndata do begin
inc(sum, sign * (number div (n * data)));
solve(i + 1, -sign, n * data);
end;
end;
begin
read(number ,ndata);
sum := 0;
for i := 1 to ndata do read(data);
solve(1, 1, 1);
writeln(sum);
end.
输入:1000 3 5 13 11
输出: 。
这一贴就先发这三个,希望大家多多帮忙!!!!thanks.