Tin học Viết chương trình in ra màn hình tất cả các hoán vị của n số nguyên dương đầu tiên . Số nguyên dương n nhập từ bàn phím 22/07/2021 By Charlie Viết chương trình in ra màn hình tất cả các hoán vị của n số nguyên dương đầu tiên . Số nguyên dương n nhập từ bàn phím
uses crt;const maxn=10;var a: array[1..maxn] of integer; n,m: integer; sn: longint;procedure init;var i: integer; begin write(‘Nhap so N=’);readln(n); for i:=1 to n do a[i]:=i; end;procedure swap( var x,y: integer);var z: integer; begin z:=x; x:=y; y:=z; end;procedure print;var i: integer; begin sn:=sn+1; for i:=1 to n do write(a[i]); writeln; end;procedure hv(k: integer);var j: integer; begin if k=1 then print else for j:=k downto 1 do begin swap(a[k],a[j]); hv(k-1); swap(a[k],a[j]); end; end;BEGIN clrscr; sn:=0; init; hv(n); if sn<>0 then writeln(‘Co tat ca’,sn,’ hoan vi cua ‘,n,’ so’) else writeln(‘Vo nghiem’); readln; END. Trả lời