Форум программистов, компьютерный форум, киберфорум
Наши страницы

С++ для начинающих

Войти
Регистрация
Восстановить пароль
 
zaurr01
0 / 0 / 0
Регистрация: 08.10.2015
Сообщений: 10
#1

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

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

Дано число N (> 0) и указатели P1 и P2 на начало и конец непустой очереди. Извлечь из очереди N начальных элементов и вывести их значения (если очередь содержит менее N элементов, то извлечь все ее элементы). Вывести также новые адреса начала и конца очереди (для пустой очереди дважды вывести nil). После извлечения элементов из очереди освобождать память, которую они занимали.
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
28.10.2016, 13:55
Я подобрал для вас темы с готовыми решениями и ответами на вопрос Извлечь из очереди начальные элементы и вывести их значения и новые адреса начала и конца очереди (C++):

Очереди. Каким образом считать две очереди из одного текстового файла? - C++
Здравстуйте. В задании первый пункт состоит в том, что нужно сформировать две очереди по n элементов с помощью считки данных из...

Переместить 3 числа из конца очереди в начало - C++
Допустим есть двусторонняя очередь. Я ввёл какое-то количество чисел. Нужно переместить 3 последних числа из конца в начало. Вводил числа с...

Найдите суммарную длину строк, принадлежащих очереди, кроме первой строки очереди - C++
Создать очередь строковых значений, для реализации используя односвязные списки.Реализовать операции добавления (enqueue) и удаления...

Создание очереди и удаление элемента очереди по усмотрению пользователя - C++
Вот код он создает очередь и должен удалить элемент очереди по усмотрению пользователя проблема заключается в том что при попытки удалить...

Разработать программу формирования очереди, содержащей целые числа, и упорядочивания по возрастанию элементов в этой очереди. - C++
Доброе всем время суток! Помогите пожалуйста! Разработать программу формирования очереди, содержащей целые числа, и упорядочивания по...

Разработать программу, моделирующую обстановку у киоска от момента начала образования очереди - C++
ЗАДАЧА 7 В газетный киоск стоит очередь желающих купить популярные издания «Караван» и «Казахстанская правда». Каждый из стоящих имеет...

4
Croessmah
Ушел
13783 / 8033 / 928
Регистрация: 27.09.2012
Сообщений: 19,804
Записей в блоге: 3
Завершенные тесты: 1
28.10.2016, 14:44 #2
Цитата Сообщение от zaurr01 Посмотреть сообщение
Дано число N (> 0) и указатели P1 и P2 на начало и конец непустой очереди.
Ну и где это всё? Или предполагается, что еще надо и очередь написать?
0
zaurr01
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
Songpool
53 / 42 / 12
Регистрация: 24.11.2016
Сообщений: 140
Завершенные тесты: 1
30.11.2016, 16:04 #4
Тебе полностью надо написать или только извлечение элементов? самописная очередь или все равно?
0
zaurr01
0 / 0 / 0
Регистрация: 08.10.2015
Сообщений: 10
30.11.2016, 17:08  [ТС] #5
Цитата Сообщение от Songpool Посмотреть сообщение
Тебе полностью надо написать или только извлечение элементов?
Желательно полностью.
Цитата Сообщение от Songpool Посмотреть сообщение
самописная очередь или все равно?
все равно.
0
30.11.2016, 17:08
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
30.11.2016, 17:08
Привет! Вот еще темы с ответами:

Очереди. Дан массив. Создать две очереди, первая должна содержать все нечетные, а вторая - все четные - C++
Очереди. Дан массив. Создать две очереди, первая должна содержать все нечетные, а вторая - все четные числа из исходного набора; порядок...

Очередь: Создать две новые очереди в которых будут находиться отдельно положительные и отрицательные числа - C++
Задана очередь элементов, содержащий положительные и отрицательное числа.Создать две новые очереди в которых будут находиться отдельно...

Объединить две очереди в одну, как создать две очереди - C++
&quot;Объединить две очереди в одну, чередуя элементы первой и второй очереди. Основной вопрос как создать две очереди? точнее даже три, в...

Показать все элементы очереди - C++
В реализации очереди не работает печать всех элементов (функция Print). И еще если вводишь не число, программа вылетает. Помогите...


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

Или воспользуйтесь поиском по форуму:
5
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2018, vBulletin Solutions, Inc.
Рейтинг@Mail.ru