Guest User

Untitled

a guest
Apr 23rd, 2018
60
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 2.33 KB | None | 0 0
  1. program laba5;
  2. {$APPTYPE CONSOLE}
  3. {Если ниже главной диагонали матрицы нет ни одного отрицательного элемента, изменить матрицу , умножив каждый ее элемент на находящийся с ним в одной строке элемент главной диагонали, иначе каждый элемент матрицы умножить на максимальный элемент соответствующей строки.}
  4. uses
  5. SysUtils,
  6. Ruslib in 'D:\Software\Borland\Delphi7\Projects\Ruslib.pas';
  7.  
  8. Var
  9. X: array[0..255, 0..255] of Integer;
  10. k, jp, s, N, i, j, Imax, Jmax: integer;
  11. Xmax:integer;
  12. z: boolean;
  13. BEGIN
  14. Writeln('Введите n-ый порядок массива:'); {Размерность массива}
  15. Readln(N);
  16. For i:=0 to (N-1) do {Заполнение массива}
  17. For j:=0 to (N-1) do begin
  18. Write('Введите элемент',' X[',i,',',j,']= ');
  19. Readln(X[i,j]);
  20. end;
  21.  
  22. z := false;
  23. for i:=1 to (N-1) do
  24. begin
  25. for j:=0 to i - 1 do
  26. if X[i,j]<0 then
  27. begin
  28. z:=true;
  29. Writeln('Условие выполнено');
  30. break
  31. end;
  32. end;
  33. if z=false then
  34. for i:=0 to (N-1) do
  35. begin
  36. Xmax := x[i, 0]; {умножение всей строки на максимальный элемент. для каждой строки}
  37. for j:=1 to (N-1) do
  38. if x[i, j] > xmax then
  39. xmax := x[i, j];
  40. for j:=0 to (N-1) do
  41. x[i, j] := x[i, j]*xmax;
  42. end
  43. else
  44. for i:=0 to (N-1) do {умножение всей строки на элемент, находящийся на главной диагонали. для всей строки}
  45. begin
  46. xmax := x[i, i]; //Запомним элемент на диагонали
  47. for j:=0 to (N-1) do
  48. X[i,j]:=X[i,j]*xmax;
  49. end;
  50.  
  51. Writeln('Конечный массив:'); {Вывод элементов массива}
  52. For i:=0 to (N-1) do
  53. begin
  54. For j:=0 to (N-1) do Write (X[i,j],' ');
  55. Writeln;
  56. end;
  57. Writeln;
  58. Writeln('Нажмите Enter для выхода...');
  59. readln;
  60. End.
Add Comment
Please, Sign In to add comment