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

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

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

Восстановить пароль
Повторная активизация e-mail

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

Ответ
 
Опции темы Поиск в этой теме
Старый 23.12.2013, 03:32   #1
пффф
Новичок
Джуниор
 
Регистрация: 23.12.2013
Сообщений: 1
По умолчанию Динамические структуры С++

Ребят,что исправит??
10) Создать очередь на базе связного списка. Написать функцию, выводящую на экран n (вводится с клавиатуры) элементов с головы. Элементы при этом не удаляются из очереди.
Код:
#include <iostream>
#include <conio.h>
#include <iomanip>
using namespace std;
struct Node
{
	int value;
	Node*next;
	Node*prev;
};
class list
{
private:

  Node*first;
  Node*end;


public:
	
	list();
	~list();
	void push(int x);//Функция заполнения структуры  и добавления её в список как элемента
	int pop();
	void swos(int n);
		void show();//Функция отображения списка
};
list::list()
{
	Node*first(0);
	}
list::~list()
{
	Node*temp=first;//Временный указатель на начало списка
	while(first)
	{
		first=first->next;//Резерв адреса на следующий элемент списка
		delete temp; //Освобождение памяти от первой структуры как элемента списка
		temp=first;//Сдвиг начала на следующий адрес, который берем из резерва
	}
}
void list::push(int x)//Функция заполнения структуры Node и добавления её в список как элемента
{
	Node*newNode=new Node;//Выделение памяти для нового звена списка
	newNode->value=x;//Временное запоминание принятого параметра x
    newNode->next=0;
	if(first!=0)
	{
	newNode->prev=end;
	end->next=newNode;
	end=newNode;
	

}
	else first=end=newNode;
}
int list::pop()
{
	int res=end->value;
	Node* t = end->prev;
	end->prev->next=0;
	delete (end);
	end=t;
	return res;
}
void list:: swos(int n)
{
	cout<<"введите N";
	cin>>n;

Node*newNode=first;
for (int i=n; i=0; i--)
{
cout<<newNode->value;
newNode=newNode->next;
}
}


void list::show()//Функция отображения списка
{
	Node*newNode=first;//Временный указатель на начало списка
	while (first);
	{
		cout<<first->value<<"вывести значение на экран";
		first=first->next;
	}
}
int main()
{
	
	list t;
	t.push(4);
	t.push(7);
	t.push(34);
	t.push(11);
	t.push(7);
	t.push(9);
	t.push(17);
	t.push(3);
	t.push(8);
	t.push(12);
	t.show();
	int d;
	cin>>d;
	t.swos(d);
	 _getch();
	return 0;
}

Последний раз редактировалось Stilet; 23.12.2013 в 09:25.
пффф вне форума Ответить с цитированием
Ответ


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



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Динамические структуры данных, списковые структуры (надо разобраться что делает программа) _4Alex4_ Помощь студентам 1 14.11.2012 07:39
динамические структуры Saloma Паскаль, Turbo Pascal, PascalABC.NET 3 12.12.2011 00:01
Динамические структуры danilqa Паскаль, Turbo Pascal, PascalABC.NET 2 11.04.2011 12:16
Динамические структуры в С++ Aleksa_ks Помощь студентам 0 04.05.2010 21:50
Динамические структуры!!!! Oooooleg Помощь студентам 4 22.05.2009 14:15