• Добро пожаловать на компьютерный форум Tehnari.ru. Здесь разбираемся с проблемами ПК и ноутбуков: Windows, драйверы, «железо», сборка и апгрейд, софт и безопасность. Форум работает много лет, сейчас он переехал на новый движок, но старые темы и аккаунты мы постарались сохранить максимально аккуратно.

    Форум не связан с магазинами и сервисами – мы ничего не продаём и не даём «рекламу под видом совета». Отвечают обычные участники и модераторы, которые следят за порядком и качеством подсказок.

    Если вы у нас впервые, загляните на страницу о форуме и правила – там коротко описано, как задать вопрос так, чтобы быстро получить ответ. Чтобы создавать темы и писать сообщения, сначала зарегистрируйтесь, а затем войдите под своим логином.

    Не знаете, с чего начать? Создайте тему с описанием проблемы – подскажем и при необходимости перенесём её в подходящий раздел.
    Задать вопрос Новые сообщения Как правильно спросить
    Если пришли по старой ссылке со старого Tehnari.ru – вы на нужном месте, просто продолжайте обсуждение.

Двумерные массивы

avatar3000

Ученик
Регистрация
24 Дек 2010
Сообщения
9
Реакции
0
Баллы
0
Двумерные массивы

Здравствуйте уважаемые форумчане!! Если есть у кого нибудь свободное время или желание помочь студенту,будьте любезны помочь в решении задачи.
Получить матрицу [Cij] i,j= из матриц [Aij] i,j= и [Bij] i,j= путем умножения элементов каждой строки матрицы [Aij] на максимальный элемент соответствующей строки матрицы [Bij].
Помогите пожалуйста,не могу разобраться что то.
 
В чем проблема конкретно, что непонятно?
 
В чем проблема конкретно, что непонятно?

Не получается написать прогу саму(
Пишу а все не то что то,не так постоянно выдает,или вообще ничего.
Уже запарился делать,слава богу хоть сайт этот нашел может кто поможет написать...
 
Выкладывайте свою программу, поправим, расскажем, по порядку объясним
 
Сейчас снова напишу че смог,а то удалил уже все)
 
Здравствуйте уважаемые форумчане!! Если есть у кого нибудь свободное время или желание помочь студенту,будьте любезны помочь в решении задачи.
Получить матрицу [Cij] i,j= из матриц [Aij] i,j= и [Bij] i,j= путем умножения элементов каждой строки матрицы [Aij] на максимальный элемент соответствующей строки матрицы [Bij].
Помогите пожалуйста,не могу разобраться что то.

Получить матрицу [Cij] i,j=от 1 до М из матриц [Aij] i,j=от 1 до М и [Bij] i,j=от 1 до М путем умножения элементов каждой строки матрицы [Aij] на максимальный элемент соответствующей строки матрицы [Bij].
 
Последнее редактирование:
program labo4;

Const n = 2; m = 2;
Type omA = Array[1..m] Of integer;
dmA = Array[1..n] Of omA;
Var v : omA;
a : dmA;
Const h = 2; t = 2;
Type omB = Array[1..h] Of integer;
dmB = Array[1..t] Of omB;
Var p : omB;
f : dmB;
I,J,x:integer;
begin
for i:=1 to n do
for j :=1 to m do
readln ( v [ i ]);
for i:=1 to h do
for j :=1 to t do
readln ( p );

end.
У меня тут ввод одномерного или двумерного массива получился что то я не понимаю,а то изза этого дальше двигаться не могу,и есть ли смысл?(
 
Последнее редактирование:
program labo4;

Const n = 2; m = 2;
Type omA = Array[1..m] Of integer;
dmA = Array[1..n] Of omA;
Var v : omA;
a : dmA;
Const h = 2; t = 2;
Type omB = Array[1..h] Of integer;
dmB = Array[1..t] Of omB;
Var p : omB;
f : dmB;
I,J,x:integer;
begin
for i:=1 to n do
for j :=1 to m do
readln ( v [ i ]);
for i:=1 to h do
for j :=1 to t do
readln ( p );

end.
У меня тут ввод одномерного или двумерного массива получился что то я не понимаю,а то изза этого дальше двигаться не могу,и есть ли смысл?(

program labo4;

Const n = 2; m = 2;
Type omA = Array[1..m,1..n] Of integer;
Var v : omA;
Const h = 2; t = 2;
Type omB = Array[1..h,1..t] Of integer;
Var p : omB;
I,J,x:integer;
begin
for i:=1 to m do
for j :=1 to n do
readln ( v [ i ,j]);
for i:=1 to t do
for j :=1 to h do
readln ( p [i,j]);
for i :=1 to m do
for j :=1 to n do
write ( v [ i,j ]:4);
writeln;
for i :=1 to t do
for j :=1 to h do
write ( v [ i,j ]:4);
writeln ;

end.
Вот немного по другому,но он не разделяет на матрицу A и B,да вообще как то не тк все:tehnari_ru_117:
 
Да уж, накрутили...
И на кой пёс, скажите на милость, Вам эти пользовательские типы сдались? И потом зачем-то в первом варианте квадратные (по условию) матрицы начали переделывать в прямоугольные, да еще разные вдобавок... На самом деле всё много проще. Примерно так:
Код:
CONST
 M=4;
VAR
 A,B:Array[1..M,1..M] of Real;
 Max:Array[1..M] of Real;
 i,j:Byte;
BEGIN
 For i:=1 to M do
  For j:=1 to M do
   begin
    Write('A[',i,',',j,']= ');
    ReadLn(A[i,j]);
   end;
 For i:=1 to M do
  For j:=1 to M do
   begin
    Write('B[',i,',',j,']= ');
    ReadLn(B[i,j]);
   end;
 WriteLn('Initial matrices:');
 For i:=1 to M do
  begin
   For j:=1 to M do
    Write(A[i,j]:6:1);
   Write('    ');
   For j:=1 to M do
    Write(B[i,j]:6:1);
   WriteLn;
  end;
 For i:=1 to M do
  begin
   Max[i]:=B[i,1];
    for j:=2 to M do
     if B[i,j]>Max[i] then Max[i]:=B[i,j];
  end;
 WriteLn;
 Write('Maximum values: ');
 For i:=1 to M do
  Write(Max[i]:6:1);
 WriteLn;
 WriteLn;
 WriteLn('Modified matrix:');
 For i:=1 to M do
  begin
   For j:=1 to M do
    Write(A[i,j]*Max[i]:12:1);
   WriteLn;
  end;
 ReadLn;
END.
 
Да уж, накрутили...
И на кой пёс, скажите на милость, Вам эти пользовательские типы сдались? И потом зачем-то в первом варианте квадратные (по условию) матрицы начали переделывать в прямоугольные, да еще разные вдобавок... На самом деле всё много проще. Примерно так:
Код:
CONST
 M=4;
VAR
 A,B:Array[1..M,1..M] of Real;
 Max:Array[1..M] of Real;
 i,j:Byte;
BEGIN
 For i:=1 to M do
  For j:=1 to M do
   begin
    Write('A[',i,',',j,']= ');
    ReadLn(A[i,j]);
   end;
 For i:=1 to M do
  For j:=1 to M do
   begin
    Write('B[',i,',',j,']= ');
    ReadLn(B[i,j]);
   end;
 WriteLn('Initial matrices:');
 For i:=1 to M do
  begin
   For j:=1 to M do
    Write(A[i,j]:6:1);
   Write('    ');
   For j:=1 to M do
    Write(B[i,j]:6:1);
   WriteLn;
  end;
 For i:=1 to M do
  begin
   Max[i]:=B[i,1];
    for j:=2 to M do
     if B[i,j]>Max[i] then Max[i]:=B[i,j];
  end;
 WriteLn;
 Write('Maximum values: ');
 For i:=1 to M do
  Write(Max[i]:6:1);
 WriteLn;
 WriteLn;
 WriteLn('Modified matrix:');
 For i:=1 to M do
  begin
   For j:=1 to M do
    Write(A[i,j]*Max[i]:12:1);
   WriteLn;
  end;
 ReadLn;
END.

Спасибо большое,теперь попробую разобраться)
 
Назад
Сверху