Форум программистов, компьютерный форум, киберфорум
С++ для начинающих
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.52/21: Рейтинг темы: голосов - 21, средняя оценка - 4.52
5 / 5 / 1
Регистрация: 27.11.2009
Сообщений: 232

Циклические очереди в C++

27.11.2009, 18:57. Показов 4316. Ответов 3
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Привеет всем
нужно написать функции занесения и извлечения данных для циклической очереди???(обратите внимание на аргументы можно использовать перегрузку функций - так в задании написано)

простую очередь я вот так накидала(правильно ли?!!):

C++
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
struct Queue {
   int d;
   Queue *p;
};
    
/*prostaya ochered formirovanie*/
Queue *first(int d){
  Queue *pv = new Queue;
  pv->d = d;
  pv->p = 0;
  return pv;
}
 
/*prostaya ochered + */
void add(Queue **end, int d){
  Queue *pv = new Queue;
  pv->d = d;
  pv->p = 0;
  (*end)->p = pv;
}
 
/*prostaya ochered - */
int del(Queue **beg){
  int temp = (*beg)->d;
  Queue *pv = *beg;
  *beg = (*beg)->p;
  delete pv;
  return temp;
}
0
Programming
Эксперт
39485 / 9562 / 3019
Регистрация: 12.04.2006
Сообщений: 41,671
Блог
27.11.2009, 18:57
Ответы с готовыми решениями:

Выведите содержимое очереди на экран и посчитайте количество элементов образованной очереди
Дан текстовый файл. Проанализировав в программе содержимое файла, выберите из него имена и занесите в очередь. Выведите содержимое очереди...

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

Очереди. С помощью первой очереди упорядочить числа во второй и третьей очередях
Даны три очереди. Одна пуста а в двух других находятся натуральные числа. С помощью первой очереди упорядочить числа во второй очереди по...

3
5 / 5 / 1
Регистрация: 27.11.2009
Сообщений: 232
28.11.2009, 07:01  [ТС]
пишите кто что знает, будут полезны любые мысли...
0
377 / 228 / 79
Регистрация: 24.11.2009
Сообщений: 695
28.11.2009, 08:54
Доброе утро. что-то никто вам отвечать не хочет =)
Вот набросал по быстрому - код сырой.
код
C++
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
//Наши элементы имеют вид:
struct node
{
    some_type data;
    node* next;
}
//указатель на голову очереди. Если NULL, то очередь пуста.
node* head = NULL;
//функции добавления:
void push(node* tmp)
{
    //Выделяем память, переносим туда данные:
    node* tail = new node;
    tail->data = tmp->data;
    // Именно здесь логично использовать перезгрузку 
    //функции присваивания и определить правила по которым 
    //выполняется копирование данных нашего типа some_type.
 
    tail->next = head;// "Хвост змеи кусает её голову"
    
    //теперь нужно найти предыдущий узел (который 
    // всё еще указывает на голову) и исправить его так,
    // чтобы он указывал на добавляемый узел:
    node* ip = tail->next;
    while(!(ip->next==head))   ip = ip->next;
    ip->next = tail;    
}
 
node* pop() // возвращает указатель на элемент, элемент 
            // исключается из очереди. После окончания работ с 
            // элементом, не забываем освобождать память.
{
    node* tmp = head;
    //новой головой станет либо следующий узел, либо, если вытал-
    //киваемый элемент единственный (является головой и хвостом 
    //одновременно, следовательно указывает сам на себя) значение NULL -
    // очередь будет пуста.
    head = (head==head->next)?NULL:head->next;        
    return tmp;  
}
1
 Аватар для Sekt
159 / 156 / 47
Регистрация: 29.04.2009
Сообщений: 636
28.11.2009, 11:17
обратите внимание на аргументы можно использовать перегрузку функций
значит описать двунапр и однонапр очередь.
Циклической ето однонапр вроде.
P.s Функции написаны корректно.
1
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
inter-admin
Эксперт
29715 / 6470 / 2152
Регистрация: 06.03.2009
Сообщений: 28,500
Блог
28.11.2009, 11:17
Помогаю со студенческими работами здесь

Вывести содержимое очереди на экран и посчитать количество элементов образованной очереди
Дан текстовый файл. Проанализировать в программе содержимое файла, выберете из него имена и занесите в очередь. Выведете содержимое очереди...

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

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

Написать программу содержащий описание очереди и моделирует работу очереди
Написать программу (функцию main), содержащий описание очереди и моделирует работу очереди. Размер очереди 100; Заполнить очередь...

Переместить N начальных элементов первой очереди в конец второй очереди
вот условие задачи Дано число N(>0) и две непустые очереди; адреса начала и конца первой равны P1 и P2, а второй - P3 иP4. Переместить N...


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

Или воспользуйтесь поиском по форуму:
4
Ответ Создать тему
Новые блоги и статьи
делаю науч статью по влиянию грибов на сукцессию
anaschu 13.03.2026
прикрепляю статью
SDL3 для Desktop (MinGW): Создаём пустое окно с нуля для 2D-графики на SDL3, Си и C++
8Observer8 10.03.2026
Содержание блога Финальные проекты на Си и на C++: hello-sdl3-c. zip hello-sdl3-cpp. zip Результат:
Установка CMake и MinGW 13.1 для сборки С и C++ приложений из консоли и из Qt Creator в EXE
8Observer8 10.03.2026
Содержание блога MinGW - это коллекция инструментов для сборки приложений в EXE. CMake - это система сборки приложений. Здесь описаны базовые шаги для старта программирования с помощью CMake и. . .
Как дизайн сайта влияет на конверсию: 7 решений, которые реально повышают заявки
Neotwalker 08.03.2026
Многие до сих пор воспринимают дизайн сайта как “красивую оболочку”. На практике всё иначе: дизайн напрямую влияет на то, оставит человек заявку или уйдёт через несколько секунд. Даже если у вас. . .
Модульная разработка через nuget packages
DevAlt 07.03.2026
Сложившийся в . Net-среде способ разработки чаще всего предполагает монорепозиторий в котором находятся все исходники. При создании нового решения, мы просто добавляем нужные проекты и имеем. . .
Модульный подход на примере F#
DevAlt 06.03.2026
В блоге дяди Боба наткнулся на такое определение: В этой книге («Подход, основанный на вариантах использования») Ивар утверждает, что архитектура программного обеспечения — это структуры,. . .
Управление камерой с помощью скрипта OrbitControls.js на Three.js: Вращение, зум и панорамирование
8Observer8 05.03.2026
Содержание блога Финальная демка в браузере работает на Desktop и мобильных браузерах. Итоговый код: orbit-controls-threejs-js. zip. Сканируйте QR-код на мобильном. Вращайте камеру одним пальцем,. . .
SDL3 для Web (WebAssembly): Синхронизация спрайтов SDL3 и тел Box2D
8Observer8 04.03.2026
Содержание блога Финальная демка в браузере. Итоговый код: finish-sync-physics-sprites-sdl3-c. zip На первой гифке отладочные линии отключены, а на второй включены:. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru