Помощь - Поиск - Пользователи - Календарь
Полная версия: Двунаправленный список
Форум «Всё о Паскале» > Pascal, Object Pascal > Задачи
RIDDICK
Давно не просил помощи)))

Даны : натуральное число N, действительные числа A1 .. A2n.
Выяснить, верно ли, что для i = 1, ... , N выполнено:

Ai = 2*An-1 + A2*n-i+1;

Использовать двунаправленный список.

:molitva:
Altair
В чем-же проблемма?
сначала заполняем список, затем проходим по нему...
все необходимое для работы с двусвязными списками есть в FAQ'e ..
вот здесь:
FAQ: двусвязные списки.
RIDDICK
КАК проходим ? условие то такое !! я не понимаю!!!
volvo
Запоминаешь элемент который находится на позиции N (в переменную element)
Проходишь по списку последовательно (начиная с "головы") и проверяешь, что для каждого элемента выполняется условие:
is_ok := True;
_start := { голова списка }
_finish := { хвост списка }
while (_start <> nil) and is_ok do begin
is_ok := is_ok and (_start^.Data = (2*element - 1) + (_finish^.Data+1) )
_start := _start^.next;
_finish := _finish^.prev;
end;
{ результат - в переменной is_ok }

Подробности - в FAQ-е
RIDDICK
Я прошу вас, помогите) у меня щас нету времени чтоб прочитать полностью ЧАВО ... я опаздываю на сдачу лабы) :no:
volvo
А раньше думал о чем? "От сессии до сессии живут студенты весело?" Ну, так веселись дальше !

Я же тебе уже все написал, что еще надо? Как список оформить? Как его заполнить? Так это уже десятки раз делалось... Хватит, в конце концов. Опиши и заполни список сам, и подставь мой код...
RIDDICK
Где взять модуль "maintype" ) ?
Altair
он не нужен, просто удали строчку uses maintype;
RIDDICK
все в крякозябрах huh.gif
Altair
где кракозябли? поконкретнее можно?

думаю просто кодировка не та
RIDDICK
а как в Pascal кодировку выбрать?
hiv
Перекодируй любым перекодировщиком типа TCODE или текстовым редактором, который умеет в разных кодировках работать (обычно такие текстовые редакторы используют для HTML кодинга).
RIDDICK
Цитата
_start := { голова списка }


как задать голову и какой тип у "_start" ?
volvo
Цитата(RIDDICK @ 17.06.05 10:28)
как задать голову и какой тип у "_start" ?

Var
listHead: TList; { это будет голова списка, все операции - через нее }
...

Var _start, _finish: TList; { того же типа, что и голова... }
...
is_ok := True;
_start := listHead; { голова списка }
_finish := listHead; { сначала присваиваем "голову" }
GotoLast(_finish); { и переходим в "хвост" }
... { далее - по тексту }
Это текстовая версия — только основной контент. Для просмотра полной версии этой страницы, пожалуйста, нажмите сюда.