Решаем задачи Абрамян на Паскале. Pointer23

Pointer23. Даны две непустые очереди; адреса начала и конца первой равны $$P_1$$ и $$P_2$$, а второй — $$P_3$$ и $$P_4$$. Перемещать элементы из начала первой очереди в конец второй, пока значение начального элемента первой очереди не станет четным (если первая очередь не содержит четных элементов, то переместить из первой очереди во вторую все элементы). Вывести новые адреса начала и конца первой, а затем второй очереди (для пустой очереди дважды вывести $$nil$$). Операции выделения и освобождения памяти не использовать.

Решение:

 

Другие задачи из раздела Pointer можно посмотреть здесь.

Комментарии:

Комментарии 1

  • Подключил модуль MyQueue. В модуле описаны типы PNode, TNode, TQueue и подпрограммы: NewNode(data: integer; next: PNode): PNode; Enqueue(var Q: TQueue; data: integer); EnqueueNode(var Q: TQueue; p: PNode); DequeueNode(var Q: TQueue): PNode; (см. задачу Pointer22)

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *