Advertisement
Guest User

Untitled

a guest
May 24th, 2015
214
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Pascal 2.15 KB | None | 0 0
  1. {Поменяйте местами последний и первый столбцы массива.
  2. В матрице размером n на m (1<n, m<10) (ввод n,m и матрицы с клавиатуры) найти
  3. минимальный элемент в каждой строке и заменить все элементы строки левее
  4. минимального на 0. Вывести минимальный элемент для каждой строки, исходную и
  5. получившуюся матрицы. Использовать подпрограммы.}
  6. program z2;
  7.  
  8. type arr = array[1..10,1..10] of real;
  9.  
  10. procedure InputArray(var a:arr; var n:integer; var m:integer);
  11. var i,j:integer;
  12. begin
  13.   Write('Введите N:');
  14.   readln(n);
  15.   Write('Введите M:');
  16.   readln(m);
  17.   writeln('Заполните матрицу:');
  18.   for i:=1 to n do
  19.     for j:=1 to m do
  20.     begin
  21.       write('a[',i,',',j,']=');
  22.       readln(a[i,j]);
  23.     end;
  24. end;
  25.  
  26.  
  27. procedure OutputArray(a:arr; var n,m:integer);
  28. var i,j:integer;
  29. begin
  30.   for i:=1 to n do
  31.   begin
  32.     for j:=1 to m do  
  33.       write(a[i,j]:6:2,' ');
  34.     writeln;
  35.   end;  
  36. end;
  37.  
  38. procedure ProcessArray(a:arr; var n,m:integer);
  39. var i,j,minindx:integer;
  40. begin
  41.   for i:=1 to n do
  42.   begin
  43.     minindx := 1;
  44.     for j:=2 to m do
  45.       if (a[i,minindx]>a[i,j]) then
  46.           minindx := j;
  47.     Writeln('Минимальный элемента для ',i,'-й строки:',a[i,minindx]);
  48.     for j:=1 to minindx-1 do
  49.        a[i,j]:=0;
  50.   end;
  51. end;
  52.  
  53. procedure SwapColumns(var a:arr;n,m:Integer);
  54. var i:integer;
  55. temp:real;
  56. begin
  57.   for i:=1 to n do
  58.   begin
  59.     temp := a[i,1];
  60.     a[i,1] := a[i,m];
  61.     a[i,m] := temp;
  62.   end;
  63. end;
  64.  
  65. var
  66.   a:arr;
  67.  
  68.   n,m:integer;
  69. begin
  70.  
  71.  InputArray(a,n,m);
  72.  
  73.  Writeln('Введенная матрица:');
  74.  OutputArray(a,n,m);
  75.  
  76.  SwapColumns(a,n,m);
  77.  Writeln('Матрица с поменянными местами первым и последним столбцом.');
  78.  OutputArray(a,n,m);
  79.  
  80.  ProcessArray(a,n,m);
  81.  
  82.   Writeln('Матрица после обработки:');
  83.   OutputArray(a,n,m);
  84. end.
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement