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

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

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

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

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

Ответ
 
Опции темы Поиск в этой теме
Старый 25.10.2012, 20:45   #1
MOSTEN
Новичок
Джуниор
 
Регистрация: 25.10.2012
Сообщений: 1
По умолчанию Массив.

Дана матрица B[N,M]. Найти в каждой строке матрицы максимальный и минимальный элемент и поменять их местами с первым и последним элементом строки соотвественно.
MOSTEN вне форума Ответить с цитированием
Старый 25.10.2012, 23:10   #2
Stilet
Белик Виталий :)
Старожил
 
Аватар для Stilet
 
Регистрация: 23.07.2007
Сообщений: 57,097
По умолчанию

Ну покажи хотя бы как ты вводишь матрицу
I'm learning to live...
Stilet вне форума Ответить с цитированием
Старый 26.10.2012, 11:11   #3
leejack
Пользователь
 
Регистрация: 23.01.2011
Сообщений: 21
По умолчанию

Код:
program matrix;

type 
  MinMax = record
     min : integer;
     max : integer;
     Row : integer;
     Cow : integer;
  end;

const
  N=3;
  M=3;
var
   i, j, k : integer;
   min, max : MinMax;
   B : array [1..N,1..M] of integer;
begin
   k:=100;
   WriteLn;
   min.min :=k;
   max.max := 0; 
//------------------------------Заполняем массив NxM-----------------------------------
   for i := 1 to N do
   begin
       for j := 1 to M do
       begin
           B[i,j] := random(k);
           Write(B[i,j], ' ');
//----------------Поиск Min------------------------------
           if B[i,j]<min.min then
           begin
              min.min := B[i,j];
              min.Row := i;
              min.Cow :=j;
           end;
//--------------------------------------------------------
//----------------Поиск Max------------------------------
           if B[i,j]>max.max then
           begin
              max.max := B[i,j];
              max.Row := i;
              max.Cow :=j;
           end;
//--------------------------------------------------------
       end;
       WriteLn;
//---------------Меняем местами Min и Max---------------
       B[min.Row, min.Cow] := max.max;
       B[max.Row, max.Row] := min.min;

       min.min := k;
       max.max := 0;
   end;   
//--------------------------------------------------------
   WriteLn;
//-------Выводим результатирующую матрицу------------
 for i := 1 to N do
   begin
       for j := 1 to M do
       begin           
           Write(B[i,j], ' ');
       end;
       WriteLn;
   end;   
end;
//--------------------------------------------------------

Последний раз редактировалось leejack; 26.10.2012 в 11:20.
leejack вне форума Ответить с цитированием
Ответ


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



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
С# задан массив 5х5. сформировать массивы А и В. в массив А поместить элементы с четными индексами, в массив В с нечетны Koksa Помощь студентам 0 10.10.2011 11:26
Запись координат в массив в реал тайм, Как записать координаты в массив Dark19 Visual C++ 2 21.06.2011 18:45
Из массив А получить массив В, удвоив все нечётные элементы удвоены ( на Pascal) KARTER Помощь студентам 1 18.06.2011 19:58
Массив - Нужно написать массив и распечатать на экран с конца в начало(язык С++) econ Помощь студентам 1 29.05.2011 22:02