program PrintMatrix; const m=10; n=10; RightDigits=2;{число знаков после запятой} var Mass: array [1..m,1..n] of real; i,j,MaxDigits: integer; k: longint; MaxNumber: real; begin MaxNumber:=0; for i:=1 to m do for j:=1 to n do begin write('Введите Mass[',i,'.',j,']='); readln(Mass[i,j]); {определение числа с максимальным количеством знаков до запятой} if Mass[i,j]<0 then begin {если число отрицательное, то умножаем его модуль на 10 для учёта знака минус} if abs(Mass[i,j]*10)>abs(MaxNumber) then MaxNumber:=abs(Mass[i,j]*10); end else begin if Mass[i,j]>MaxNumber then MaxNumber:=Mass[i,j]; end end; {определяем число знаков до запятой у числа с максимальным количеством знаков до запятой} MaxDigits:=0; k:=1; repeat inc(MaxDigits); k:=k*10; until (Trunc(MaxNumber) div k)=0; for i:=1 to m do begin for j:=1 to n do if j<>n then write(Mass[i,j]:MaxDigits+RightDigits+1:RightDigits,' ') else writeln(Mass[i,j]:MaxDigits+RightDigits+1:RightDigits); end end. |