Технический форум
Вернуться   Технический форум > Программирование > Форум программистов > Помощь студентам


Ответ
 
Опции темы Опции просмотра
Старый 24.12.2010, 09:12   #1 (permalink)
avatar3000
Новичок
 
Регистрация: 24.12.2010
Сообщений: 9
Сказал(а) спасибо: 0
Поблагодарили 0 раз(а) в 0 сообщениях
Репутация: 10
По умолчанию Двумерные массивы

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

Старый 24.12.2010, 09:12
Helpmaster
Member
 
Аватар для Helpmaster
 
Регистрация: 08.03.2016
Сообщений: 0

Очень эффективно в решении проблемы просто пролистать похожие обсуждения

Двумерные массивы и процедуры PASCAL
Массивы
Двумерные массивы через процедуру

Старый 25.12.2010, 00:13   #2 (permalink)
MrSTEP
一步一步地会到目的
 
Аватар для MrSTEP
 
Регистрация: 09.05.2009
Адрес: Черноземье
Сообщений: 10,920
Записей в дневнике: 10
Сказал(а) спасибо: 139
Поблагодарили 80 раз(а) в 33 сообщениях
Репутация: 28107
По умолчанию

В чем проблема конкретно, что непонятно?
MrSTEP вне форума   Ответить с цитированием
Старый 25.12.2010, 20:19   #3 (permalink)
avatar3000
Новичок
 
Регистрация: 24.12.2010
Сообщений: 9
Сказал(а) спасибо: 0
Поблагодарили 0 раз(а) в 0 сообщениях
Репутация: 10
По умолчанию

Цитата:
Сообщение от MrSTEP Посмотреть сообщение
В чем проблема конкретно, что непонятно?
Не получается написать прогу саму(
Пишу а все не то что то,не так постоянно выдает,или вообще ничего.
Уже запарился делать,слава богу хоть сайт этот нашел может кто поможет написать...
avatar3000 вне форума   Ответить с цитированием
Старый 25.12.2010, 23:57   #4 (permalink)
MrSTEP
一步一步地会到目的
 
Аватар для MrSTEP
 
Регистрация: 09.05.2009
Адрес: Черноземье
Сообщений: 10,920
Записей в дневнике: 10
Сказал(а) спасибо: 139
Поблагодарили 80 раз(а) в 33 сообщениях
Репутация: 28107
По умолчанию

Выкладывайте свою программу, поправим, расскажем, по порядку объясним
MrSTEP вне форума   Ответить с цитированием
Старый 26.12.2010, 11:41   #5 (permalink)
avatar3000
Новичок
 
Регистрация: 24.12.2010
Сообщений: 9
Сказал(а) спасибо: 0
Поблагодарили 0 раз(а) в 0 сообщениях
Репутация: 10
По умолчанию

Сейчас снова напишу че смог,а то удалил уже все)
avatar3000 вне форума   Ответить с цитированием
Ads

Яндекс

Member
 
Регистрация: 31.10.2006
Сообщений: 40200
Записей в дневнике: 0
Сказал(а) спасибо: 0
Поблагодарили 0 раз(а) в 0 сообщениях
Репутация: 55070
Старый 26.12.2010, 12:17   #6 (permalink)
avatar3000
Новичок
 
Регистрация: 24.12.2010
Сообщений: 9
Сказал(а) спасибо: 0
Поблагодарили 0 раз(а) в 0 сообщениях
Репутация: 10
По умолчанию

Цитата:
Сообщение от avatar3000 Посмотреть сообщение
Здравствуйте уважаемые форумчане!! Если есть у кого нибудь свободное время или желание помочь студенту,будьте любезны помочь в решении задачи.
Получить матрицу [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].

Последний раз редактировалось avatar3000; 26.12.2010 в 12:23
avatar3000 вне форума   Ответить с цитированием
Старый 26.12.2010, 12:45   #7 (permalink)
avatar3000
Новичок
 
Регистрация: 24.12.2010
Сообщений: 9
Сказал(а) спасибо: 0
Поблагодарили 0 раз(а) в 0 сообщениях
Репутация: 10
По умолчанию

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 [i]);

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

Последний раз редактировалось avatar3000; 26.12.2010 в 12:51
avatar3000 вне форума   Ответить с цитированием
Старый 26.12.2010, 12:59   #8 (permalink)
avatar3000
Новичок
 
Регистрация: 24.12.2010
Сообщений: 9
Сказал(а) спасибо: 0
Поблагодарили 0 раз(а) в 0 сообщениях
Репутация: 10
По умолчанию

Цитата:
Сообщение от avatar3000 Посмотреть сообщение
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 [i]);

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,да вообще как то не тк все
avatar3000 вне форума   Ответить с цитированием
Старый 26.12.2010, 14:25   #9 (permalink)
Vladimir_S
Специалист
 
Аватар для Vladimir_S
 
Регистрация: 27.08.2008
Адрес: Санкт-Петербург
Сообщений: 26,358
Сказал(а) спасибо: 289
Поблагодарили 507 раз(а) в 165 сообщениях
Репутация: 91953
По умолчанию

Да уж, накрутили...
И на кой пёс, скажите на милость, Вам эти пользовательские типы сдались? И потом зачем-то в первом варианте квадратные (по условию) матрицы начали переделывать в прямоугольные, да еще разные вдобавок... На самом деле всё много проще. Примерно так:
Код:
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.
__________________
With Mozilla Firefox - straight to communism!
Vladimir_S вне форума   Ответить с цитированием
Старый 26.12.2010, 14:39   #10 (permalink)
avatar3000
Новичок
 
Регистрация: 24.12.2010
Сообщений: 9
Сказал(а) спасибо: 0
Поблагодарили 0 раз(а) в 0 сообщениях
Репутация: 10
По умолчанию

Цитата:
Сообщение от Vladimir_S Посмотреть сообщение
Да уж, накрутили...
И на кой пёс, скажите на милость, Вам эти пользовательские типы сдались? И потом зачем-то в первом варианте квадратные (по условию) матрицы начали переделывать в прямоугольные, да еще разные вдобавок... На самом деле всё много проще. Примерно так:
Код:
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.
Спасибо большое,теперь попробую разобраться)
avatar3000 вне форума   Ответить с цитированием
Ads

Яндекс

Member
 
Регистрация: 31.10.2006
Сообщений: 40200
Записей в дневнике: 0
Сказал(а) спасибо: 0
Поблагодарили 0 раз(а) в 0 сообщениях
Репутация: 55070
Ответ

Опции темы
Опции просмотра

Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Выкл.
HTML код Выкл.
Trackbacks are Вкл.
Pingbacks are Вкл.
Refbacks are Выкл.




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

Powered by vBulletin® Version 6.2.5.
Copyright ©2000 - 2014, Jelsoft Enterprises Ltd.