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

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

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

Очередь - C++

30.05.2009, 01:05. Просмотров 546. Ответов 3
Метки нет (Все метки)

Доброй ночи!Написала программу, но почему то print и contains не работает! помогите, пожалуйста, разобраться или наведите на путь истинный!!!

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
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
#include <iostream>
#include <cassert>
 
class Queue;
 
typedef  int T;
 
const int S=50;
 
class Queue
{
    private:
        int first;
        int size;
        T data[S];
    public:
        Queue()
        {
            first;
            size=0;
        }
        ~Queue() {}
 
        bool isEmpty()
        {
            return size==0;
        }
 
        int count()
        {
            return size;
        }
 
        bool push(T t)
        {
           // std::cout<<"Yahoo"<<"\n";
            if(size==S) return false;
            else{
            data[(first+size++)%S]=t;
            return true;
            }
        }
 
        bool pop()
        {
            if(!size) return false;
            else{
            first++;
            first%=S;
            size--;
            return true;
            }
 
        }
 
        T top()
        {
 
            if(size) return data[first];
        }
 
        bool contains(T t)
        {
            //std::cout<<"Yahoo"<<"\n";
            for(int i=0; i<size; i++)
            {
            //std::cout<<"Yahoo"<<"\n";
             //std::cout<<data[2]<<"\n";
                if(data[i]==t) return true;
                return true;
            }
            return false;
        }
         
        void print()
        {
            for(int i=0; i<size; i++)
            {
                std::cout<<data[i]<<"\n";
            }
        }
 
        void bubblesort()
        {
            int i;
            int j;
            int tmp;
 
            for(i = 0; i <= size-1; i++)
            {
                for(j = 0; j <= size-2-i; j++)
                {
                    if( data[j]>data[j+1] )
                    {
                        tmp = data[j];
                        data[j] = data[j+1];
                        data[j+1] = tmp;
                    }
                }
            }
        }
 
 
};
 
int main()
{
    Queue q;
    assert(q.isEmpty()==true);
    assert(q.push(12)==true);
    assert(q.push(13)==true);
    assert(q.count()==2);
    assert(q.isEmpty()==false);
    assert(q.pop()==true);
    assert(q.isEmpty()==false);
    assert(q.count()==1);
    assert(q.contains(13)==true);
    q.bubblesort();
    q.print();
    return 0;
}
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
30.05.2009, 01:05
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Очередь (C++):

Сформировать очередь по файлу целых чисел. Промоделировать очередь в супермаркете - C++
Сформировать очередь по файлу целых чисел. Промоделировать очередь в супермаркете. В каждый момент времени происходит одно из событий:...

Очередь (сделать очередь, чтобы добавляло, удаляло, читало. Не STL.) - C++
Помогите пожалуйста написать очередь. Есть Температура double и ее тип int ну и нужно сделать очередь, чтобы добавляло, удаляло, читало....

Задача на очередь (вывод сообщения, что очередь пуста) - C++
Доброго дня! Есть задачка на очередь, которая работает нормально, только надо добавить код, чтобы выводил сообщение, что очередь пуста.....

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

Создать очередь. Добавить элемент в очередь. Удалить элемент из очереди - C++
Нужно создать очередь. Добавить элемент в очередь. Удалить элемент из очереди. Вот моё &quot;творение&quot;. int main() { int...

Очередь - C++
Привет всем. Я тут решаю в общем то простое упражнение - нужно проверить переполнение и опустошение очереди. Есть у меня небольшая...

3
Search..
Заказ софта
340 / 185 / 10
Регистрация: 26.05.2009
Сообщений: 863
30.05.2009, 02:32 #2
Что-то мне не понятно, что эта программа делает...

Не по теме:

Начинаю приходить к выводу, что я тупой =)

0
FunDuck
688 / 379 / 4
Регистрация: 22.01.2009
Сообщений: 1,135
30.05.2009, 09:49 #3
C++
1
2
3
4
5
6
7
8
9
 bool push(T t)
        {
           // std::cout<<"Yahoo"<<"\n";
            if(size==S) return false;
            else{
            data[(first+size++)%S]=t;// А first чему равно???
            return true;
            }
        }
1
CyBOSSeR
Эксперт С++
2303 / 1673 / 86
Регистрация: 06.03.2009
Сообщений: 3,675
30.05.2009, 12:07 #4
C++
1
2
3
4
5
6
7
8
bool contains(T t)
{
  for(int i = 0; i < size; i++)
    if(data[i] == t)
      return true;
 
  return false;
}
1
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
30.05.2009, 12:07
Привет! Вот еще темы с ответами:

Очередь? What - C++
Всем доброго время суток.Дело в том, что с трудом дается с++, но очень хочется стать программистом.Вообщем ничего толком не объяснив препод...

Очередь - C++
Задача проги сделать очередь, по сути прога написана по лекции, но выдает ошибки с преобразованием параметра, понимаю, что ошибки глупые,...

Очередь - C++
Здрасти всем... Не могу понять как организовать 2 очереди для данной задачи и не понятно как реализоваться функцию суммы .. ...

Очередь - C++
Всем привет! Вопрос: целесообразно ли перегружать для очереди операторы ввода/вывода и оператор , для произвольного доступа к елементам ?...


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

Или воспользуйтесь поиском по форуму:
4
Yandex
Объявления
30.05.2009, 12:07
Ответ Создать тему
Опции темы

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