Pagini recente » Cod sursa (job #1674458) | Cod sursa (job #2682136) | Cod sursa (job #3126070) | Cod sursa (job #472653) | Cod sursa (job #264982)
Cod sursa(job #264982)
uses crt;
var f,g:text;
n,k:byte;
sol:array[1..9]of byte;
procedure init(vf:byte);
begin
sol[vf]:=0;
end;
function succ(vf:byte):boolean;
begin
if sol[vf]<n then
begin
inc(sol[vf]);
succ:=true;
end else
succ:=false;
end;
function valid(vf:byte):boolean;
var i:byte;
begin
valid:=true;
for i:=1 to vf-1 do
if (sol[i]=sol[vf])or(sol[i]>sol[vf]) then valid:=false;
end;
function ok(vf:byte):boolean;
begin
if vf=k+1 then ok:=true
else ok:=false;
end;
procedure tipar;
var i:byte;
begin
for i:=1 to k do
write(sol[i],' ');
writeln{(g)};
end;
procedure comb(vf:byte);
begin
if ok(vf) then tipar
else
begin
init(vf);
while succ(vf) do
if valid(vf) then comb(vf+1);
end;
end;
begin
{assign(f,'combinari.in');
assign(g,'combinari.out');
reset(f);
rewrite(g);}
clrscr;
read(n,k);
comb(1);
readkey;
{close(f);
close(g);}
end.