Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Delphi программирование > Паскаль, Turbo Pascal, PascalABC.NET
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 25.01.2012, 20:47   #1
Lizonka-88
Пользователь
 
Регистрация: 24.01.2012
Сообщений: 23
По умолчанию Даны три матрицы

Заданы 3 матрицы: А(третий порядок), В(второй порядок), С(третий порядок). найти макс из трех чисел x,y,z - след матриц соот-но (сумма элементов главной диагоноали).
нужно исправить процедуру, чтобы можно было двумерный массив использовать
Код:
Program zad6; 
uses crt;
const
n=3; k=2;
type
mas= array[1..n,1..n] of integer;
mas_2= array[1..k,1..k] of integer;
var
a,c: mas; b: mas_2; x,y,z,Max: integer;
i,j:byte;
procedure GetSum (mas: array[1..n,1..n] of integer;  var sum: integer);
var
    i: integer;
begin
    sum := 0;
    for i := 1 to n do
        Inc(sum, mas[i,i]);
end;
Begin
clrscr;
 writeln('vvedite massiv A');
  for i:= 1 to n do
    for j:= 1 to n do
        readln(a[i,j]);
 GetSum(a,x);
 {writeln('vvedite massiv B');
  for i:= 1 to n do
    for j:= 1 to n do
        readln(b[i,j]);
 GetSum(b,y);}
 writeln('vvedite massiv C');
  for i:= 1 to n do
    for j:= 1 to n do
        readln(c[i,j]);
 GetSum(c,z);
max:=x;
if (x>y) and (x>z) then writeln('x - íàèáîëüøåå ÷èñëî è ðàâíî ', x:3) else
if (y>x) and (x>z) then writeln('y - íàèáîëüøåå ÷èñëî è ðàâíî ', y:3)
                   else writeln('z - íàèáîëüøåå ÷èñëî è ðàâíî ', z:3);

end.
Lizonka-88 вне форума Ответить с цитированием
Старый 26.01.2012, 10:15   #2
Exoo
Пользователь
 
Регистрация: 25.03.2010
Сообщений: 53
По умолчанию

r -размер передаваемой матрицы
Код:
Program zad6;
uses crt;
const
n=3; k=2;
type
mas= array[1..n,1..n] of integer;
var
a,c,b: mas; x,y,z,Max: integer;
i,j:byte;
procedure GetSum (r:byte;mas: array[1..n,1..n] of integer;  var sum: integer);
var
    i: integer;
begin
    sum := 0;
    for i := 1 to r do
        Inc(sum, mas[i,i]);
end;
Begin
clrscr;
 writeln('vvedite massiv A');
  for i:= 1 to n do
    for j:= 1 to n do
        readln(a[i,j]);
 GetSum(3,a,x);
 writeln('vvedite massiv B');
  for i:= 1 to k do
    for j:= 1 to k do
        readln(b[i,j]);
 GetSum(2,b,y);
 writeln('vvedite massiv C');
  for i:= 1 to n do
    for j:= 1 to n do
        readln(c[i,j]);
 GetSum(3,c,z);
max:=x;
if (x>y) and (x>z) then writeln('x - iaeaieuoaa ?enei e ?aaii ', x:3) else
if (y>x) and (x>z) then writeln('y - iaeaieuoaa ?enei e ?aaii ', y:3)
                   else writeln('z - iaeaieuoaa ?enei e ?aaii ', z:3);

end.
Мастерство программиста не в том, чтобы писать программы, работающие без ошибок, а в том, чтобы писать программы, работающие при любом количестве ошибок.
Exoo вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Даны три числа..... konj Помощь студентам 5 19.12.2011 18:26
Даны три открытых хеш-таблицы... nicklifs Помощь студентам 0 11.12.2011 16:29
С++.три матрицы, упорядочить строки той матрицы у которой больше нулевых строк Ирина1992 Помощь студентам 12 20.11.2011 13:01
Даны три массива по 10 элементов в каждом. ЮРИЙ ЮРЫЧ Помощь студентам 0 23.12.2009 19:38
Даны три числа. Выберите те из них, которые принадлежат заданному отрезку [а, b]. Sheff903 Помощь студентам 1 27.11.2007 21:28