Технический форум

Технический форум (http://www.tehnari.ru/)
-   Помощь студентам (http://www.tehnari.ru/f41/)
-   -   Очередь на С (http://www.tehnari.ru/f41/t24967/)

Юлькин 30.05.2009 02:10

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

Код:

#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;
}



Часовой пояс GMT +4, время: 02:46.

Powered by vBulletin® Version 4.5.3
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.