Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Списки магазинного типу.doc
Скачиваний:
1
Добавлен:
01.03.2025
Размер:
245.25 Кб
Скачать

Void main ()

{

SetConsoleCP(1251);

SetConsoleOutputCP(1251);

Spisok A;

int el;

int t; //Содержимое информационного поля верхушки стека.

A.POSTROENIE ();

A.VYVOD ();

cout << "Введите вставляемый элемент: ";

cin >> el;

A.DOBAVLENIE(el);

A.VYVOD ();

cout << "Удалим элемент из стека.\n";

A.YDALENIE ();

t = A.Set_Stack();

cout << "Из стека было извлечено число... " << t << endl;

A.VYVOD();

A.OCHISTKA();

}

--------------------------------------------------------------------------

void Spisok::POSTROENIE ()

//Построение стека, заданного указателем stk.

{

node *t;

int el;

cout << "Вводите элементы стека: ";

cin >> el;

while (el!=0)

{

t = new (node);

t->value = el;

t->next = stk;

stk = t;

cin >> el;

}

}

--------------------------------------------------------------------------

void Spisok::VYVOD ()

//Вывод содержимого стека, заданного указателем stk.

{

node *t;

cout<<"Содержимое стека: ";

t = stk;

while (t!=NULL)

{

cout << t->value << " ";

t = t->next;

}

cout<<endl;

}

--------------------------------------------------------------------------

void Spisok::DOBAVLENIE(int el)

//Помещение элемента el в стек stk.

{

node *q;

q = new (node);

q->value = el;

q->next = stk;

stk = q;

}

--------------------------------------------------------------------------

void Spisok::YDALENIE ()

//Удаление элемента из стека, заданного указателем stk.

//Значение информационного поля удаляемого элемента

//помещается в параметр klad.

{

node *q;

if (stk==NULL)

cout<<"Стек пуст!\n";

else

{

klad = stk->value;

q = stk;

stk = stk->next;

delete q;

}

}

--------------------------------------------------------------------------

void Spisok::OCHISTKA()

//Возврат выделенной памяти в "кучу".

{

node *t,*q;

t = stk;

if (t!=NULL)

{

q= t->next;

while (q!=NULL)

{

delete t;

t = q;

q = q->next;

}

delete t;

}

}

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]