Форум программистов, компьютерный форум, киберфорум
С++ для начинающих
Войти
Регистрация
Восстановить пароль
Карта форума Темы раздела Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.76/25: Рейтинг темы: голосов - 25, средняя оценка - 4.76
0 / 0 / 0
Регистрация: 08.10.2015
Сообщений: 10
1

Извлечь из очереди начальные элементы и вывести их значения и новые адреса начала и конца очереди

28.10.2016, 13:55. Показов 4700. Ответов 4
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
Дано число N (> 0) и указатели P1 и P2 на начало и конец непустой очереди. Извлечь из очереди N начальных элементов и вывести их значения (если очередь содержит менее N элементов, то извлечь все ее элементы). Вывести также новые адреса начала и конца очереди (для пустой очереди дважды вывести nil). После извлечения элементов из очереди освобождать память, которую они занимали.
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
28.10.2016, 13:55
Ответы с готовыми решениями:

Обеспечить операции ведения стека из начала очереди, дополнения и продвижения очереди
Доброе времени суток. Давно читаю ваш форум, и всегда находил ответы на вопросы, но на вопрос...

Поменять в очереди первый элемент со вторым, третий с четвертым и так далее до конца очереди
Дана очередь из целых чисел. Поменять в очереди первый элемент со вторым, третий с четвертым и так...

Из очереди L создайте две новые очереди
1. Условие: type Link = ^Node; Node = record X : integer; Next: Link; ...

Добавить элемент со значением D в конец очереди и извлечь из очереди первый (начальный) элемент
Дано число D и указатели P1 и P2 на начало и конец очереди, содержащей не менее двух элементов. ...

4
Неэпический
18100 / 10686 / 2061
Регистрация: 27.09.2012
Сообщений: 26,899
Записей в блоге: 1
28.10.2016, 14:44 2
Цитата Сообщение от zaurr01 Посмотреть сообщение
Дано число N (> 0) и указатели P1 и P2 на начало и конец непустой очереди.
Ну и где это всё? Или предполагается, что еще надо и очередь написать?
0
0 / 0 / 0
Регистрация: 08.10.2015
Сообщений: 10
30.11.2016, 16:02  [ТС] 3
Дано число N (> 0) и указатели P1 и P2 на начало и конец непустой очереди. Извлечь из очереди N начальных элементов и вывести их значения (если очередь содержит менее N элементов, то извлечь все ее элементы). Вывести также новые адреса начала и конца очереди (для пустой очереди дважды вывести nil). После извлечения элементов из очереди освобождать память, которую они занимали.
Можно и за вознаграждения.

Добавлено через 1 минуту
Есть решение на Паскале но нужно на c++
Pascal
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
program Pointer19;
type
  PNode=^TNode;
  TNode=record
    Data: Integer;
    Next: PNode;
//    Prev: PNode;
  end;
 
procedure CreateQueue(var P1,P2:PNode);
var
 pt1,pt2:PNode;
 i,N:integer;
begin
 Write('NumEl:');
 Readln(N);
 new(p1);
 Write('num: ');
 Readln(P1^.Data);
 pt2:=p1;
 
 for i:=1 to N-1 do
  begin
   new(pt1);
   Write('num: ');
   Readln(pt1^.Data);
   pt2.Next:=pt1;
   pt2:=pt2.Next;
  end;
 pt2.Next:=nil;
 p2:=pt2;
end;
 
function pop(var P1,P2:PNode):integer;
var
 head: PNode;
begin
 if P1<>nil then
  begin
   if P1=P2 then
    begin
     Result:=P1.Data;
     P1:=nil;
     P2:=nil;
    end
   else
    begin
     Result:=P1^.Data;
     head:=P1^.Next;
     Dispose(P1);
     P1:=head;
    end;
  end
  else Result:=0;
end;
 
var
 P1,P2:PNode;
 a:^Word;
 i,N:integer;
begin
 CreateQueue(P1,P2);
 
 Write('N:');
 Readln(N);
 for i:=1 to N do Writeln(pop(P1,P2));
 
 if p1=nil then Writeln('P1: nil')
 else
  begin
   a:=Addr(P1);
   Writeln('P1: ',a^);
  end;
 
 if p2=nil then Writeln('P2: nil')
 else
  begin
   a:=Addr(P2);
   Writeln('P2: ',a^);
  end;
 
end.
0
53 / 42 / 31
Регистрация: 24.11.2016
Сообщений: 140
30.11.2016, 16:04 4
Тебе полностью надо написать или только извлечение элементов? самописная очередь или все равно?
0
0 / 0 / 0
Регистрация: 08.10.2015
Сообщений: 10
30.11.2016, 17:08  [ТС] 5
Цитата Сообщение от Songpool Посмотреть сообщение
Тебе полностью надо написать или только извлечение элементов?
Желательно полностью.
Цитата Сообщение от Songpool Посмотреть сообщение
самописная очередь или все равно?
все равно.
0
30.11.2016, 17:08
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
30.11.2016, 17:08
Помогаю со студенческими работами здесь

Сформировать очередь. Извлечь из очереди все элементы, определить наибольший и наименьший элементы
Сформировать очередь. Извлечь из очереди все элементы, определить наибольший и наименьший элементы...

Переместить все элементы первой очереди в конец второй очереди
Даны две очереди; адреса начала и конца первой равны P1 и P2, а второй — P3 и P4 (если очередь...

Извлекать из очереди элементы, пока значение начального элемента очереди не станет четным
Даны указатели P1 и P2 на начало и конец непустого очереди. Извлекать из очереди элементы, пока...

В первой очереди найти максимальный элемент и за ним вставить элементы второй очереди
задание:Создать две очереди из случайных целых чисел. В первой найти максимальный элемент и за ним...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
5
Ответ Создать тему
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru