IPB
ЛогинПароль:

> Прочтите прежде чем задавать вопрос!

1. Заголовок темы должен быть информативным. В противном случае тема удаляется ...
2. Все тексты программ должны помещаться в теги [code=pas] ... [/code].
3. Прежде чем задавать вопрос, см. "FAQ", если там не нашли ответа, воспользуйтесь ПОИСКОМ, возможно такую задачу уже решали!
4. Не предлагайте свои решения на других языках, кроме Паскаля (исключение - только с согласия модератора).
5. НЕ используйте форум для личного общения, все что не относится к обсуждению темы - на PM!
6. Одна тема - один вопрос (задача)
7. Проверяйте программы перед тем, как разместить их на форуме!!!
8. Спрашивайте и отвечайте четко и по существу!!!

> Создание списка 2 из элементов списка 1, на четно
ralf
сообщение 28.04.2005 14:03
Сообщение #1


Новичок
*

Группа: Пользователи
Сообщений: 13
Пол: Мужской

Репутация: -  0  +


Цитата
Процедура, работающая со списками!
Написать процедуру, создающую список 2 из тех элементов списка1, которые находятся на четном расстоянии от головы списка1. Список 1 должен сохраниться!!!
К примеру - список 1=12,17,9,4,6,11,7, то список 2=9,6,7!!

заранее благодарен!!
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
 
 Ответить  Открыть новую тему 
Ответов(1 - 3)
volvo
сообщение 28.04.2005 14:40
Сообщение #2


Гость






ralf, смотри вот эту тему
Установка указателя на I-й элемент списка , особенно функцию find_n в ней smile.gif по-моему, это - то что тебе нужно...
 К началу страницы 
+ Ответить 
ralf
сообщение 28.04.2005 15:03
Сообщение #3


Новичок
*

Группа: Пользователи
Сообщений: 13
Пол: Мужской

Репутация: -  0  +


Большое спасибо. посмотрю. как сделаю. результат программы скину!!!
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
ralf
сообщение 21.05.2005 8:21
Сообщение #4


Новичок
*

Группа: Пользователи
Сообщений: 13
Пол: Мужской

Репутация: -  0  +


Решение задачи:
Код
Procedure RALF;
var  head1, head2, a, b: reference;
                                   i: integer;
begin
 i:=0; new(head2);
 a:=head2; head2^.next:=nil;
 while head1<>nil do begin
   if (i mod 2)<>0 then head1:=head1^.next;
   else begin
     if head2^.next:=nil then head2^.inf:=head1^.inf;
     else begin
       new(b);
       a^.next:=b;
       a:=b;
       a^.inf:=head1^.inf;
     end;
   end;
   i:=i+1;
 end;
 a^.next:=nil;
end;
Благодарю за оказанную помощь!
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 

 Ответить  Открыть новую тему 
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 



- Текстовая версия 25.07.2025 19:47
Хостинг предоставлен компанией "Веб Сервис Центр" при поддержке компании "ДокЛаб"