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

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

Войти
Регистрация
Восстановить пароль
 
Doobry
Сообщений: n/a
#1

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

19.05.2009, 21:52. Просмотров 735. Ответов 0
Метки нет (Все метки)

Здравствуйте уважаемые посетители форума. Я.. обычный, бедный студент - жертва насилия) Прошу Вас помочь мне с выполнение задания.. здесь нужно преобразовать очередь в циклическую очередь. Буду очень признателен за помощь)

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
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
#include <iostream>
#include <iomanip>
 
using namespace std;
 
template<class T>
class Queue
{
    T* base;
    int head;
    int tail;
    int queueSize;
    public:
    // Constructor
    Queue(int size);
    // Destructor
    ~Queue()
    {
        delete[] base;
    }
    // Store element to queue
    void store(T item);
    // Retrieve element from queue
    T retrieve();
    // Is queue empty?
    bool empty()
    {
        return (head == tail);
    }
    // Is queue full?
    bool full()
    {
        return (tail == queueSize);
    }
};
 
// Constructor
template<class T>
Queue<T>::Queue(int size)
{
    base = new T[size];
    queueSize = size;
    head = 0;
    tail = 0;
}
 
// Store element to queue
template<class T>
void Queue<T>::store(T item)
{
        base[tail++] = item;
}
 
// Retrieve element from queue
template<class T>
T Queue<T>::retrieve()
{
    return base[head++];
}
 
int main()
{
    Queue<int> q(5);
    int i;
    for ( i = 0; i < 3; ++i )
        if ( !q.full() ) q.store(i);
    for ( i = 0; i < 2; ++i )
        if ( !q.empty() ) cout << setw(2) << q.retrieve();
    cout << endl;
    if ( !q.full() ) q.store(3);
    if ( !q.full() ) q.store(4);
    for ( i = 0; i < 3; ++i )
        if ( !q.empty() ) cout << setw(2) << q.retrieve();
    cout << endl;
    if ( !q.full() ) q.store(5);
    if ( !q.empty() ) cout << setw(2) << q.retrieve() << endl;
    return 0;
}
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
19.05.2009, 21:52
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Циклические очереди (C++):

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

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

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

Извлечь из очереди начальные элементы и вывести их значения и новые адреса начала и конца очереди - C++
Дано число N (&gt; 0) и указатели P1 и P2 на начало и конец непустой очереди. Извлечь из очереди N начальных элементов и вывести их значения...

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

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

Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
19.05.2009, 21:52
Привет! Вот еще темы с ответами:

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

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

Циклические коды - C++
Для построение циклического кода (CRC) нужен образующий полином, который мы должны найти по таблице неприводимых многочленов(см....

Циклические операторы (for,do,while) - C++
http://imageshack.us/a/img821/3474/aaaaaaaalz.jpg http://imageshack.us/a/img689/165/ffffue.jpg Объясните плс почему внутри цикла p=x...


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

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

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