-
-
Save MarshalX/f4b9b3b59121a2c1d074f696fefa2422 to your computer and use it in GitHub Desktop.
program merge_sort; | |
const | |
n = 10; | |
var | |
mas: array [1..n] of integer; | |
i: integer; | |
procedure MergeSort(a, c: integer); | |
var | |
x, j, i, n1, n2: integer; | |
rez: array[1..1000] of integer; | |
begin | |
if c <= a then | |
exit | |
else | |
begin | |
x := (a + c) div 2; | |
MergeSort(a, x); | |
MergeSort(x + 1, c); | |
n1 := a; | |
n2 := x + 1; | |
for i := a to c do | |
begin | |
if (n1 < x + 1) and ((n2 > c) or (mas[n1] < mas[n2])) then | |
begin | |
rez[i] := mas[n1]; | |
inc(n1); | |
end | |
else | |
begin | |
rez[i] := mas[n2]; | |
inc(n2); | |
end; | |
end; | |
for j := a to c do | |
mas[j] := rez[j]; | |
end; | |
end; | |
begin | |
for i := 1 to n do | |
mas[i] := random(20); | |
writeln(mas); | |
MergeSort(1, n); | |
writeln(mas); | |
end. |
Hi,
is it possible to use (download and adjust) this code for https://github.com/geohot/mergesorts?
Hi. Yes it's possible
Thank you!
Have a good day!
program perhalamanvt;
uses crt;
var
kode : array [1..4] of String ;
nama : array [1..4] of string ;
hrg, jmlbl : array [1..4] of LongInt ;
jmlhrg, diskon, jmlbyr : array [1..4] of Real;
sjmlhrg, sdiskon, sjmlbyr : array [1..4] of Real ;
tjmlhrg, tdiskon, tjmlbyr : array [1..4] of Real ;
i, j: Integer ;
brs, hal : integer ;
temp: real;
procedure JudulLap;
begin
writeln('Data belum urut') ;
WriteLn('');
WriteLn('Laporan Penjualan Online');
WriteLn('PT. Kuda Laut Semarang');
WriteLn(' Halaman:',hal,3) ;
WriteLn('-------------------------------------------') ;
WriteLn() ;
GotoXY(0,15); Write('no.');
GotoXY(5,15); Write('kode');
GotoXY(10,15); Write('nama');
GotoXY(20,15); Write('harga');
GotoXY(27,15); Write('jml');
GotoXY(36,15); Write('jml');
GotoXY(45,15); Write('diskon');
GotoXY(55,15); Write('jml');
GotoXY(5, 16) ;write('Oli') ;
GotoXY(20,16); Write('bl');
GotoXY(36,16); Write('harga');
GotoXY(55,16); Write('bayar');
GotoXY(0, 17) ;Write('-------------------------------------------') ;
WriteLn() ;
end;
begin
clrscr;
for i:=1 to 4 do
begin
clrscr;
if brs >3 then
begin
GotoXY(0, 18+brs) ;writeln('-------------------------------------------') ;
GotoXY(5, 19+brs) ;WriteLn('SubTotal') ;
GotoXY(36, 19+brs) ;write(sjmlhrg[i]:0) ;
GotoXY(45, 19+brs) ;write(sdiskon[i]:0) ;
GotoXY(55, 19+brs) ;write(sjmlbyr[i]:0) ;
GotoXY(0, 20+brs) ;writeln('-------------------------------------------') ;
readkey;
sjmlhrg[i]:=0 ; sdiskon[i]:=0 ; sjmlbyr[i]:=0 ;
hal:=hal+1;
brs:=brs+1;
clrscr;
JudulLap;
end;
WriteLn('Masukkan Data ke:',i);
Write('Masukkan kode(huruf kapital):') ; ReadLn(kode[i]);
Write('jmlbl:') ;ReadLn(jmlbl[i]);
if kode[i] ='S' then nama[i] :='Shell' else
if kode[i] ='C' then nama[i] :='Castrol' else
if kode[i] ='M' then nama[i] :='BM1' else
if kode[i] ='E' then nama[i] :='Enduro' ;
if kode[i] ='S' then hrg[i] :=45000 else
if kode[i] ='C' then hrg[i] := 50000 else
if kode[i] ='M' then hrg[i] := 60000 else
if kode[i] ='E' then hrg[i] := 35000 ;
jmlhrg[i]:= jmlbl[i] * hrg[i] ;
if jmlbl[i] >=9 then
diskon[i]:= 15/100*jmlhrg[i]
else if jmlbl[i] >=6 then
diskon[i]:= 10/100*jmlhrg[i]
else if jmlbl[i] <=6 then
diskon[i]:=0 ;
jmlbyr[i]:= jmlhrg[i]-diskon[i] ;
sjmlhrg[i]:=0 ; sdiskon[i]:=0 ; sjmlbyr[i]:=0 ;
tjmlhrg[i]:=0 ; tdiskon[i]:=0 ; tjmlbyr[i]:=0 ;
writeln('')
end;
clrscr;
brs:=1;
hal:=1;
JudulLap;
for i:= 1 to 4 do
begin
GotoXY(0, 17) ;write(i:3) ;
GotoXY(5, 17+brs) ;write(kode[i]) ;
GotoXY(10, 17+brs) ;write(nama[i]) ;
GotoXY(20, 17+brs) ;write(hrg[i]) ;
GotoXY(27, 17+brs) ;write(jmlbl[i]) ;
GotoXY(36, 17+brs) ;write(jmlhrg[i]) ;
GotoXY(45, 17+brs) ;write(diskon[i]) ;
GotoXY(55, 17+brs) ;write(jmlbyr[i]) ;
sjmlhrg[i]:=sjmlhrg[i] + jmlhrg[i] ;
sdiskon[i]:=sdiskon[i] + diskon[i] ;
sjmlbyr[i]:=sjmlbyr[i] + jmlbyr[i] ;
tjmlhrg[i]:=tjmlhrg[i] + jmlhrg[i] ;
tdiskon[i]:=tdiskon[i] + diskon[i] ;
tjmlbyr[i]:=tjmlbyr[i] + jmlbyr[i] ;
brs :=brs+1;
end;
GotoXY(0, 18+brs) ;writeln('-------------------------------------------') ;
GotoXY(5, 19+brs) ;WriteLn('SubTotal') ;
GotoXY(36, 19+brs) ;write(sjmlhrg[i]:0) ;
GotoXY(45, 19+brs) ;write(sdiskon[i]:0) ;
GotoXY(55, 19+brs) ;write(sjmlbyr[i]:0) ;
GotoXY(5, 20+brs) ;WriteLn('Total') ;
GotoXY(36, 20+brs) ;write(tjmlhrg[i]:0) ;
GotoXY(45, 20+brs) ;write(tdiskon[i]:0) ;
GotoXY(55, 20+brs) ;write(tjmlbyr[i]:0) ;
GotoXY(0, 21+brs) ;writeln('-------------------------------------------') ;
for i:=1 to 4 do
for i:=1 to 4-1 do
begin
for j:= i+1 to 4 do
begin
if jmlhrg[i] < jmlhrg[j] then
begin
temp:=jmlhrg[i];
jmlhrg[i]:=jmlhrg[j];
jmlhrg[j]:=temp;
end;
end;
end;
writeln('Data sudah urut') ;
writeln;
for i:=1 to 4 do
Readln;
end.
Hi,
is it possible to use (download and adjust) this code for https://github.com/geohot/mergesorts?