Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > IT форум > Помощь студентам
Регистрация

Восстановить пароль

Купить рекламу на форуме - 42 тыс руб за месяц

Закрытая тема
Ваша тема закрыта, почему это могло произойти? Возможно,
Нет наработок или кода, если нужно готовое решение - создайте тему в разделе Фриланс и оплатите работу.
Название темы включает слова - "Помогите", "Нужна помощь", "Срочно", "Пожалуйста".
Название темы слишком короткое или не отражает сути вашего вопроса.
Тема исчерпала себя, помните, один вопрос - одна тема
Прочитайте правила и заново правильно создайте тему.
 
Опции темы Поиск в этой теме
Старый 02.11.2011, 17:45   #11
Abstraction
Старожил
 
Аватар для Abstraction
 
Регистрация: 25.10.2011
Сообщений: 3,178
По умолчанию

Первый комментарий: код будет падать из-за обращения по запрещённым адресам. Стабильно.
Второй комментарий: в коде утечки памяти. Лютые утечки памяти.

Вы понимаете то, что написано в начале?
Код:
class node 
{
public:
    int a;
    node * next;

    //Что это такое? Как называется?
    node (int _a)
    {
        a=_a;
        next=NULL;
    }
};

class stack
{
    //Что именно должно храниться в top?
    node * top;
public:
    stack() {top=NULL;}
    //Остальное пока отложим
};
Abstraction вне форума
Старый 06.11.2011, 09:48   #12
настюх
Пользователь
 
Регистрация: 13.10.2011
Сообщений: 16
По умолчанию классы

помогите описать главную функцию программы.Задание таково:создать класс множество (set) по принципу стека.
Описать метод добавления нового элемента в множество, и перегрузить операторы && - пересечение множеств. || - объединение множеств.Пересечение сделано.Объединение нет.
Код:
#include<iostream>
#include <conio.h>
#include <stdio.h>
class set
{
	class element
	{
		public:
			const int a;
			element *next;
			element(int _a):a(_a), next(NULL) { }
			void draw()
			{
				printf("%d ",a);
			};
	} *e;
	
	int count;
	public:
		set():e(NULL), count(0) { }
		
		~set()
		{
			element *temp;
			while (e != NULL) 
			{
				temp = e;
				e = e->next;
				delete temp;
			}
			count = 0;
		}
		
		void set::add(int b)
		{	
			element*i=e;
			if(!i)
			{
				i=new element(b);
				count++;
				return;
			}
			if (b>=i->a)
			{
				if (i->a==b) return;
				else
				{
					while (!(i->next==NULL)&&(b>=i->next->a))
					i=i->next;
					element*temp=new element(b);
					temp->next=i->next;
					i->next=temp;
					count++;
					return;
				}
			}
			else
			{
				element*temp=new element(b);
				temp->next=e;
				e=temp;
				return;
			}
		}
		set*set::operator && (const set B)
		{
			set C;
			element*ia=this->e;
			element*ib=B.e;
			while (ia!=NULL)
			{
				while (ib!=NULL)
				{
					if(ia->a==ib->a)
						{C.add(ia->a);
					ia=ia->next; }
					else 
					{
						if (ia->a>ib->a)
							ib=ib->next;
						else
							ia=ia->next;
					}
				}
			}
		}
};
настюх вне форума
Старый 06.11.2011, 09:50   #13
настюх
Пользователь
 
Регистрация: 13.10.2011
Сообщений: 16
По умолчанию

да понимаю что вначале!
настюх вне форума
Закрытая тема


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
классы в С++ kadaffi Помощь студентам 1 18.11.2008 09:30
Классы MaxiMILLION Помощь студентам 4 12.10.2008 14:05
Классы Старовъръ Общие вопросы Delphi 4 26.06.2008 17:00