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

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

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

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

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

Ответ
 
Опции темы Поиск в этой теме
Старый 20.01.2010, 21:00   #1
Nubik
Пользователь
 
Регистрация: 07.12.2009
Сообщений: 17
Вопрос Двумерные массивы

Объясните плх алгоритм рабыты программы
И как сделать чтоб проверять значения максимума в указанной зоне матрицы
[][][][][][][][][][]
[] []
[] []
[] []
[] []
[] []
[][][][][][][][][][]
uses crt;
var a:array[1..10,1..10] of integer; q,w,mx:integer;
begin mx:=-MaxInt;

for q:=1 to 10 do begin
for w:=1 to 10 do begin
a[q,w]:=random(99)+1;write(a[q,w]:4);
if mx<a[q,w] then mx:=a[q,w];
end;
writeln;
end;
writeln(mx);

end.
Nubik вне форума Ответить с цитированием
Старый 20.01.2010, 21:08   #2
Chudo4258
Форумчанин
 
Аватар для Chudo4258
 
Регистрация: 19.02.2009
Сообщений: 622
По умолчанию

Код:
for q:=1 to 10 do begin
for w:=1 to 10 do begin
a[q,w]:=random(99)+1;write(a[q,w]:4);
end;
writeln;
end;

max:=a[1,1];
for q:=1 to 10 do
if (q=1)or(q=10) then
    for w:=1 to 10 do 
      if  a[q,w]> max then max:=a[q,w];
   else 
     for w:=1 to 2 do 
       if  a[q,w]> max then max:=a[q,w];
writeln('max= ',max)
Жми на весы!!!
Chudo4258 вне форума Ответить с цитированием
Старый 20.01.2010, 21:12   #3
Базиля
Участник клуба
 
Аватар для Базиля
 
Регистрация: 03.12.2009
Сообщений: 1,013
По умолчанию

у тебя матрица заполняется рандомом, т.е. случайным образом матрица(10на10) заполнятеся элементами.
И находится максимум этой матрицы
Цитата:
значения максимума в указанной зоне матрицы
смотря где тебе нужно искать, в какой-то строке или столбце.
если в строке то
Код:
writeln('введите номер строки в которой нужно найти максимальный элемент');
readln(q);
max:=a[q,1];
for w:=1 to 10 do
if max<a[q,w] then max:=a[q,w];
writeln('максимум в этой строке=',max);
end.
если же требуется найти в каком-либо столбце то задаешь номер столбца т.е. w и анологично ищешь максимум только циклом проходишь по строкам.
Код:
writeln('введите cтолбец в котором нужно искать макс элемент');
readln(w);
max:=a[1,w];
for q:=1 to 10 do
if max<a[q,w] then max:=a[q,w];
writeln('максимум=',max);

end.
тьфу не правильно понял условие :D
а я то думал для чего это:
Цитата:
[][][][][][][][][][]
[] []
[] []
[] []
[] []
[] []
[][][][][][][][][][]
Но все равно, то что я написал думаю тебе будет полезно
Базиля вне форума Ответить с цитированием
Старый 20.01.2010, 21:20   #4
Базиля
Участник клуба
 
Аватар для Базиля
 
Регистрация: 03.12.2009
Сообщений: 1,013
По умолчанию

Цитата:
И как сделать чтоб проверять значения максимума в указанной зоне матрицы
[][][][][][][][][][]
[] []
[] []
[] []
[] []
[] []
[][][][][][][][][][]
Код:
max:=a[1,1];
for q:=1 to 7 do
begin
if (q=1)or(q=7) then
begin
for w:=1 to 10 do
if a[q,w]>max then 
max:=a[q,w];
end
else
for w:=1 to 2 do
if  a[q,w]> max then 
max:=a[q,w];
end;
writeln('максимум= ',max);
P.S. немного подкорректировал код товарища Chudo4258
Базиля вне форума Ответить с цитированием
Старый 20.01.2010, 22:54   #5
Nubik
Пользователь
 
Регистрация: 07.12.2009
Сообщений: 17
По умолчанию

СПасиб парни) буду разбираться=)
Nubik вне форума Ответить с цитированием
Ответ


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



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
двумерные массивы в Си osichev Помощь студентам 1 04.06.2009 18:00
C++ Двумерные массивы АНЮТКА555 Помощь студентам 1 10.12.2007 12:42