Отправляет email-рассылки с помощью сервиса Sendsay
  Все выпуски  

RusFAQ.ru: Программирование на языке Pascal


Информационный Канал Subscribe.Ru

РАССЫЛКИ ПОРТАЛА RUSFAQ.RU

/ КОМПЬЮТЕРЫ И ПО / Языки программирования / Pascal

Выпуск № 111
от 07.12.2005, 19:09

Администратор:Калашников О.А.
В рассылке:Подписчиков: 148, Экспертов: 43
В номере:Вопросов: 1, Ответов: 3


Вопрос № 30648: Здраствуйте. Подскажите алгоритм решения задачи: Дана квадратная матрица. Нужно определить какие строки являются возрастающими или убывающими?...

Вопрос № 30.648
Здраствуйте.
Подскажите алгоритм решения задачи:
Дана квадратная матрица. Нужно определить какие строки являются возрастающими или убывающими?
Отправлен: 02.12.2005, 19:08
Вопрос задал: korsar (статус: Посетитель)
Всего ответов: 3
Мини-форум вопроса >>> (сообщений: 2)

Отвечает: Vitava
Здравствуйте, korsar!
var n : Integer; // размерность матрицы
i,j, max, min : Integer;
M : array[1..n,1..n] of Integer;

begin

for i:=1 to n do begin
min := A[i,j];
max := A[i,j];
for j:=2 to n do begin
if (A[i,j] > max) then begin
max := A[i,j];
end;
if (A[i,j] < min) then begin
min := A[i,j];
end;
end;
if (max = A[i,n]) then write('Row', i, ' - Upper Row'); // возрастающая строка
if (min = A[i,n]) then write('Row', i, ' - Down Row'); // убывающая строка
end

Суть алгоритма в том, чтобы проверить от первого элемента до последнего
возрастают или убывают элементы. Считаем, что первый элемент ряда есть min или max, а делее сравниваем их со следующим элементов.
Если max или min является последним в строке, то значит мы дошли до конца и строка либо возрастаюдщая либо убывающая.

Удачи вам.
Ответ отправил: Vitava (статус: 5-ый класс)
Отправлен: 03.12.2005, 00:27

Отвечает: sir henry
Здравствуйте, korsar!
Перебор построчно и проверка каждой строки, сравнивая между собой соседние значения.
Ответ отправил: sir henry (статус: Академик)
Отправлен: 03.12.2005, 06:54

Отвечает: Schmak
Здравствуйте, korsar!
Пример решения приведён в приложении. Тут стои уточнить лишь то, что в данном примере под убывающей строкой подразумевается невозрастающая, а под возрастающей не убывающая. Т.е например строка 1 1 2 будет считаться возрастающе1. Если же вам надо, чтобы такая строка считалась несортированной, то замените a[i,1]*=a[i,2] на a[i,1]*a[i,2], где * соответственно > и <

Приложение:

---------
Не всё то Windows, что висит!

Ответ отправил: Schmak (статус: Студент)
Отправлен: 03.12.2005, 11:10


Отправить вопрос экспертам этой рассылки

Приложение (если необходимо):

* Код программы, выдержки из закона и т.п. дополнение к вопросу.
Эта информация будет отображена в аналогичном окне как есть.

Обратите внимание!
Вопрос будет отправлен всем экспертам данной рассылки!

Для того, чтобы отправить вопрос выбранным экспертам этой рассылки или
экспертам другой рассылки портала RusFAQ.ru, зайдите непосредственно на RusFAQ.ru.


Форма НЕ работает в почтовых программах The BAT! и MS Outlook (кроме версии 2003+)!
Чтобы отправить вопрос, откройте это письмо в браузере или зайдите на сайт RusFAQ.ru.


© 2001-2005, Портал RusFAQ.ru, Россия, Москва.
Идея, дизайн, программирование: Калашников О.А.
Email: adm@rusfaq.ru, Тел.: +7 (926) 535-23-31
Авторские права | Реклама на портале
Яндекс Rambler's Top100 hotlog_js="1.0"; hotlog_r=""+Math.random()+"&s=314124&im=101&r="+escape(document.referrer)+"&pg="+ escape(window.location.href); document.cookie="hotlog=1; path=/"; hotlog_r+="&c="+(document.cookie?"Y":"N"); hotlog_js="1.1";hotlog_r+="&j="+(navigator.javaEnabled()?"Y":"N") hotlog_js="1.2"; hotlog_r+="&wh="+screen.width+'x'+screen.height+"&px="+ (((navigator.appName.substring(0,3)=="Mic"))? screen.colorDepth:screen.pixelDepth) hotlog_js="1.3" hotlog_r+="&js="+hotlog_js; document.write("HotLog")

Subscribe.Ru
Поддержка подписчиков
Другие рассылки этой тематики
Другие рассылки этого автора
Подписан адрес:
Код этой рассылки: comp.soft.prog.pasplus
Архив рассылки
Отписаться
Вспомнить пароль

В избранное