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

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

Вернуться   Форум программистов > IT форум > Помощь студентам
Регистрация

Восстановить пароль

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

Ответ
 
Опции темы Поиск в этой теме
Старый 04.05.2010, 23:02   #1
LastBreath
Пользователь
 
Регистрация: 04.05.2010
Сообщений: 12
Восклицание двумерный массив Паскаль

Описать процедуру, которая в заданной матрице размером n*m меняет местами строку, содержащую минимальный по величине элемент матрицы, со строкой, содержащей максимальный по величине элемент. Взять n=5, m=6.
Помогите, пожалуйста, с решением...очень нужно и как можно быстрее...прошу...
LastBreath вне форума Ответить с цитированием
Старый 04.05.2010, 23:27   #2
fbus
Форумчанин
 
Аватар для fbus
 
Регистрация: 23.10.2008
Сообщений: 460
По умолчанию

тогда стучись ко мне в аську
fbus вне форума Ответить с цитированием
Старый 05.05.2010, 00:34   #3
ROMA2PVT
ТАМБОВСКИЙ ВОЛК.
Участник клуба
 
Аватар для ROMA2PVT
 
Регистрация: 16.03.2010
Сообщений: 1,354
По умолчанию

////////////////////////////////////
にんじゃ

Последний раз редактировалось ROMA2PVT; 05.05.2010 в 00:36. Причина: Наверное уже советуют.
ROMA2PVT вне форума Ответить с цитированием
Старый 05.05.2010, 00:49   #4
ROMA2PVT
ТАМБОВСКИЙ ВОЛК.
Участник клуба
 
Аватар для ROMA2PVT
 
Регистрация: 16.03.2010
Сообщений: 1,354
По умолчанию

Код:
uses crt;
Const
 n=5;m=6;
Type
 a=array[1..n,1..m] of integer;
var
    i,j,imx,imn:integer;
    mn,mx,x:integer;
    k:a;
    
Procedure obmen(mas:a);
begin
  for i:=1 to n do
   begin
    x:=k[imn,i];
    k[imn,i]:=k[imx,i];
    k[imx,i]:=x;
   end;
  writeln;
  writeln('Обмен строк ',imn,' и ',imx);
  end;
  
begin
clrscr;
randomize;
writeln('Исходная матрица:');
for i:=1 to n do
 begin
   for j:=1 to m do
    begin
     k[i,j]:=random(20);
     write(k[i,j]:4);
    end;
   writeln;
 end;
imn:=1;
imx:=1;
mn:=k[1,1];
mx:=k[1,1];
for i:=1 to n do
for j:=1 to m do
 begin
  if k[i,j]<mn then
   begin
    mn:=k[i,j];
    imn:=i;
   end;
  if k[i,j]>mx then
   begin
    mx:=k[i,j];
    imx:=i;
   end;
 end;
writeln('Минимальный элемент=',mn,' в строке-',imn,' макимальный=',mx,' в строке-',imx);
if imx=imn then write('Минимальный и максимальный элементы в одной строке!')
else

Obmen(k);

for i:=1 to n do
   begin
    for j:=1 to m do
    write(k[i,j]:4);
    writeln;
   end;
end.
にんじゃ
ROMA2PVT вне форума Ответить с цитированием
Ответ


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



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Двумерный массив (паскаль) Гамбит Помощь студентам 1 22.11.2009 18:48
Двумерный массив (паскаль) mislagusla Помощь студентам 6 19.10.2009 22:16
Двумерный массив. ПАскаль stasig Помощь студентам 18 15.12.2008 17:18
Паскаль (двумерный массив) RAVAL)) Помощь студентам 5 16.06.2008 00:27