Форум: Форум C++Разное
Новые темы: 00
Объектно-ориентированное программирование на PHP. Авторы: Кузнецов М.В., Симдянов И.В. MySQL на примерах. Авторы: Кузнецов М.В., Симдянов И.В. Программирование. Ступени успешной карьеры. Авторы: Кузнецов М.В., Симдянов И.В. PHP. Практика создания Web-сайтов (второе издание). Авторы: Кузнецов М.В., Симдянов И.В. PHP 5. На примерах. Авторы: Кузнецов М.В., Симдянов И.В., Голышев С.В.
ВСЕ НАШИ КНИГИ
Консультационный центр SoftTime

Форум C++

Выбрать другой форум

 

Здравствуйте, Посетитель!

вид форума:
Линейный форум Структурный форум

тема: Очередь
 
 автор: Dolly   (30.05.2009 в 01:16)   письмо автору
 
 

Доброй ночи!Написала программу, но почему то 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;
}

  Ответить  
 
 автор: GeorgeIV   (01.06.2009 в 11:07)   письмо автору
 
   для: Dolly   (30.05.2009 в 01:16)
 

Что делает запись first в конструкторе:
public:
Queue()
{
first;
size=0;
}


PS Сделайте first=0 и все будет нормально.

  Ответить  
 
 автор: Dolly   (01.06.2009 в 20:39)   письмо автору
 
   для: GeorgeIV   (01.06.2009 в 11:07)
 

Спасибо)

  Ответить  
Rambler's Top100
вверх

Rambler's Top100 Яндекс.Метрика Яндекс цитирования