type me=array of array of integer; var m1:array of integer; m2: me; i,j,k,t,imin,imax:integer; n,dl,d,x,g,e:integer; it,max:cardinal; begin writeln('vvedite dlinnu'); readln(n); writeln('maksimal''nii element'); readln(max); {delaem massiv} setlength(m1,n); writeln; randomize; for i:=0 to n-1 do begin m1[i]:=random(max); write(m1[i],' '); end; writeln; {URAA!!! Sdelali!!!} dl:=round(sqrt(n)); it:=round(n/dl); {kak by zapolnit'' teper'' novyi massiv...} setlength(m2,it,dl); j:=0; for j:=0 to it-1 do begin k:=0; for i:=j*dl to dl+(dl*j)-1 do begin m2[j,k]:=m1[i]; k:=k+1; end; end; for j:=0 to it-1 do begin for i:=0 to dl-1 do if m2[j,i]<10 then write(m2[j,i],' ') else write(m2[j,i],' '); writeln; writeln; end; writeln; writeln; for i:=0 to dl-1 do for j:=0 to it-1 do for k:=0 to it-j-2 do if m2[i,k+1]<m2[i,k] then begin t:=m2[i,k]; m2[i,k]:=m2[i,k+1]; m2[i,k+1]:=t; end; for j:=0 to it-1 do begin for k:=0 to dl-1 do write(m2[j,k],' '); writeln; writeln; end; writeln; finalize(m1); finalize(m2); readln; end. |