![]() |
|
|
|||||||
| Регистрация | << Правила форума >> | FAQ | Пользователи | Календарь | Поиск | Сообщения за сегодня | Все разделы прочитаны |
![]() |
|
|
Опции темы | Поиск в этой теме | Опции просмотра |
|
|
|
#1
|
|||
|
|||
|
Ув.форумчане!обращаюсь к вам за помощью в решении задачи по информатике-язык программирования-Delphi7!задача состоит в следующем:В даной последовательности найти максимальную по длине последовательность так-чтоб елементы в ней были в возрастающем порядке!Заранее благодарен!
|
|
#2
|
||||
|
||||
|
Берешь входной массив, проходишься по нему, на каждом шаге увеличиваешь некий счетчик C и сравниваешь каждый элемент с предыдущим. Если меньше - то если MaxC<C то MaxC:=C и MaxI:=I-1; сбрасываем C.
Код:
MaxC:=0;
MaxI:=0;
C:=0;
for i:=2 to n do
begin
inc(C);
if a[i]<a[i-1] then
begin
if MaxC<C then
begin
MaxC:=C;
MaxI:=I-1;
end;
C:=1;
end;
end;Чтоб выковорить последовательность надо Код:
for i:=MaxI-C+1 to MaxI do ... Последний раз редактировалось Bargest, 16.06.2011 в 00:23. |
|
#3
|
|||
|
|||
|
Цитата:
|
|
#4
|
||||
|
||||
|
Проще уже некуда. Проверку можно сделать так: после цикла смотрим, если C=n значит вся последовательность и так по возрастанию.
|
|
#5
|
|||
|
|||
|
Цитата:
Могу. Кто хочет - тот узнает. Преподаватель не может оринтироваться на самых бестолковых - ему просто программа не даст этого (образовательная). Соответсвенно, материал дается в темпе как минимум среднего. Далее идет самообразование - почитать пару книжек да написать пару десятков программ. Соответсвенно, и задание дается так, что бы при самостоятельной работе студент/школьник получил какие-то доп. знания. Тем более, что я в этой задаче не вижу ничего сложного. Достаточно было просто нарисовать массив на бумажке и немного подумать головой. |