Технический форум

Технический форум (http://www.tehnari.ru/)
-   Помощь студентам (http://www.tehnari.ru/f41/)
-   -   С клавиатуры вводится матрица n*m (http://www.tehnari.ru/f41/t246428/)

evgenya_ 18.05.2016 23:46

С клавиатуры вводится матрица n*m
 
Добрый вечер ! Помогите пожалуйста напечатать программу в паскале .сам не шарю в это а курсач сдать надо !

1.найти максимальные элементы в каждом столбце матрицы и записать их в последнюю строку матрицы .
2.найти сумму чисел кратным трем в каждой строке матрицы и записать эту сумму в последний столбец .
3.с клавиатуры вводится номер столбца упорядочить по убыванию элементы в этом столбце.

Евгений 19.05.2016 22:09

Код:

uses  Crt;
const n=3; m=4;
var  a:array[1..(n+1),1..(m+1)] of integer;
      i,j,t,k,max,sum:integer;
begin
      ClrScr;
      for i:=1 to n do
        begin
          for j:=1 to m do
          Read(a[i,j]);
          Readln;
        end;
      Writeln;
      for i:=1 to n do
        begin
          for j:=1 to m do
          Write(a[i,j]:5);
          Writeln;
        end;
      Writeln;
      t:=n+1;
      j:=1;
        repeat
          max:=-Maxint;
          for i:=1 to n do
            if a[i,j]>max
            then max:=a[i,j];
          a[t,j]:=max;
          Inc(j);
        until j>m;
      for i:=1 to t do
        begin
          for j:=1 to m do
          Write(a[i,j]:5);
          Writeln;
        end;
      Writeln;
      i:=1; t:=m+1;
        repeat
          sum:=0;
          for j:=1 to m do
            if (a[i,j] mod 3)=0
            then sum:=sum+a[i,j];
          a[i,t]:=sum;
          Inc(i);
        until i>(n+1);
      for i:=1 to n+1 do
        begin
          for j:=1 to t do
          Write(a[i,j]:5);
          Writeln;
        end;
      Writeln;
        repeat
          Write('Nomer stolbca = ');
          Readln(k);
        until (k>0) and (k<(t+1));
      Writeln;
      t:=n+1;
      for i:=1 to t-1 do
        for j:=1 to t-i do
        if a[j,k]<a[j+1,k]
          then
          begin
            max:=a[j,k];
            a[j,k]:=a[j+1,k];
            a[j+1,k]:=max;
          end;
      for i:=1 to t do
        begin
          for j:=1 to m+1 do
          Write(a[i,j]:5);
          Writeln;
        end;
      ReadKey;
end.



Часовой пояс GMT +4, время: 16:15.

Powered by vBulletin® Version 4.5.3
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.