Справочник функций

Ваш аккаунт

Войти через: 
Забыли пароль?
Регистрация
Информацию о новых материалах можно получать и без регистрации:

Почтовая рассылка

Подписчиков: -1
Последний выпуск: 19.06.2015

Помогите с матрицей

79K
13 марта 2012 года
Blackjeck
4 / / 13.03.2012
Помогите с задачей, кто сможет!

Дана матрица Q размером m,n. Если наибольший элемент матрицы расположен в четной строке и нечетном столбце, то создать процедуру преобразования исходной матрицы путем деления всех ее элементов на этот наибольший элемент.

Заранее спасибо.
79K
14 марта 2012 года
FIRON
17 / / 13.03.2012
Код:
program xlx;
type
Tcord = record
  i : integer;
  j : integer;
end;
Tarr = array[1..1000,1..1000] of double;
var
a : Tarr;
max : double;
i,j,n,m : integer;
comax : Tcord;
procedure editarr(Var a : Tarr;n,m : integer;max : double);
var
i,j : integer;
begin
  for i := 1 to n do
    for j := 1 to m do
    begin
      a[i,j] := a[i,j]/max;
    end;
end;
begin
  writeln('input n');
  readln(n);
  writeln('input m');
  readln(m);
  comax.i := 1;
  comax.j := 1;
  for i := 1 to n do
    for j := 1 to m do
    begin
      write('a[',i,',',j,']=');
      readln(a[i,j]);
      if a[comax.i,comax.j]<a[i,j]
      then
      begin
        comax.i := i;
        comax.j := j;
      end;
    end;
  max := a[comax.i,comax.j];
  if ((comax.i mod 2) = 0) and ((comax.j mod 2) <> 0) then editarr(a,n,m,max);
  for i := 1 to n do
    for j := 1 to m do
      writeln('a[',i,',',j,']=',a[i,j]:8:3);
  readln;
  readln;
end.
79K
16 марта 2012 года
Blackjeck
4 / / 13.03.2012
Цитата: FIRON
Код:
program xlx;
type
Tcord = record
  i : integer;
  j : integer;
end;
Tarr = array[1..1000,1..1000] of double;
var
a : Tarr;
max : double;
i,j,n,m : integer;
comax : Tcord;
procedure editarr(Var a : Tarr;n,m : integer;max : double);
var
i,j : integer;
begin
  for i := 1 to n do
    for j := 1 to m do
    begin
      a[i,j] := a[i,j]/max;
    end;
end;
begin
  writeln('input n');
  readln(n);
  writeln('input m');
  readln(m);
  comax.i := 1;
  comax.j := 1;
  for i := 1 to n do
    for j := 1 to m do
    begin
      write('a[',i,',',j,']=');
      readln(a[i,j]);
      if a[comax.i,comax.j]<a[i,j]
      then
      begin
        comax.i := i;
        comax.j := j;
      end;
    end;
  max := a[comax.i,comax.j];
  if ((comax.i mod 2) = 0) and ((comax.j mod 2) <> 0) then editarr(a,n,m,max);
  for i := 1 to n do
    for j := 1 to m do
      writeln('a[',i,',',j,']=',a[i,j]:8:3);
  readln;
  readln;
end.



Спасибо за код, но при конпиляции Паскаль начинает ругатся(((сразу же на массив, точнее на - "double".

Знаете кого-то, кто может ответить? Поделитесь с ним ссылкой.

Ваш ответ

Реклама на сайте | Обмен ссылками | Ссылки | Экспорт (RSS) | Контакты
Добавить статью | Добавить исходник | Добавить хостинг-провайдера | Добавить сайт в каталог