Студопедия Главная Случайная страница Обратная связь

Разделы: Автомобили Астрономия Биология География Дом и сад Другие языки Другое Информатика История Культура Литература Логика Математика Медицина Металлургия Механика Образование Охрана труда Педагогика Политика Право Психология Религия Риторика Социология Спорт Строительство Технология Туризм Физика Философия Финансы Химия Черчение Экология Экономика Электроника

Реализация задания в оконном приложении





Вид формы и полученные результаты представлены на рис. 3.2.

Рис. 3.2

 

Приведем только тексты функций, соответствующих кнопок:

...

struct Stack { // Декларация структурного типа

int info;

Stack * next;

} *begin, *t;

//------------ Декларации прототипов функций пользователя ----------

Stack* InStack(Stack*, int);

void View(Stack*);

void Del_All(Stack **);

//----------------------------- Текст функции-обработчика кнопки Создать ------------

int i, in, n = StrToInt(Edit1-> Text);

if(begin! = NULL){

ShowMessage(" Освободите память! ");

return;

}

for(i = 1; i < = n; i++){

in = random(20);

begin = InStack(begin, in);

}

Memo1-> Lines-> Add(" Создали " + IntToStr(n) + " -ть.");

//--------------------------- Текст функции-обработчика кнопки Добавить ------------

int i, in, n = StrToInt(Edit1-> Text);

for(i = 1; i < = n; i++){

in = random(20);

begin = InStack(begin, in);

}

Memo1-> Lines-> Add(" Добавили " + IntToStr(n) + " -ть.");

//---------------------------- Текст функции-обработчика кнопки Просмотреть -----

if(! begin){

ShowMessage(" Стек Пуст! ");

return;

}

Memo1-> Lines-> Add(" --- Элементы ---");

View(begin);

//----------------------------- Текст функции-обработчика кнопки Очистить ---------

if (begin! = NULL) Del_All(& begin);

ShowMessage(" Память освобождена! ");

//---------------------------- Текст функции-обработчика кнопки EXIT -----------------

if(begin! = NULL) Del_All(& begin);

Close();

//--------------- Функция добавления элемента в Стек ------------------------

Stack* InStack(Stack *p, int in) {

Stack *t = new Stack;

t -> info = in;

t -> next = p;

return t;

}

//----------------- Функция просмотра Стека----------------------------------

void View(Stack *p) {

Stack *t = p;

while(t! = NULL) {

Form1-> Memo1-> Lines-> Add(" " + IntToStr(t-> info));

// В консольном приложении будет, например, cout < < " " < < t-> info < < endl;

t = t -> next;

}

}

//----------------------- Функция освобождения памяти -----------------------

void Del_All(Stack **p) {

while(*p! = NULL) {

t = *p;

*p = (*p) -> next;

delete t;

}

}







Дата добавления: 2014-11-10; просмотров: 685. Нарушение авторских прав; Мы поможем в написании вашей работы!




Аальтернативная стоимость. Кривая производственных возможностей В экономике Буридании есть 100 ед. труда с производительностью 4 м ткани или 2 кг мяса...


Вычисление основной дактилоскопической формулы Вычислением основной дактоформулы обычно занимается следователь. Для этого все десять пальцев разбиваются на пять пар...


Расчетные и графические задания Равновесный объем - это объем, определяемый равенством спроса и предложения...


Кардиналистский и ординалистский подходы Кардиналистский (количественный подход) к анализу полезности основан на представлении о возможности измерения различных благ в условных единицах полезности...

Примеры задач для самостоятельного решения. 1.Спрос и предложение на обеды в студенческой столовой описываются уравнениями: QD = 2400 – 100P; QS = 1000 + 250P   1.Спрос и предложение на обеды в студенческой столовой описываются уравнениями: QD = 2400 – 100P; QS = 1000 + 250P...

Дизартрии у детей Выделение клинических форм дизартрии у детей является в большой степени условным, так как у них крайне редко бывают локальные поражения мозга, с которыми связаны четко определенные синдромы двигательных нарушений...

Педагогическая структура процесса социализации Характеризуя социализацию как педагогический процессе, следует рассмотреть ее основные компоненты: цель, содержание, средства, функции субъекта и объекта...

Сравнительно-исторический метод в языкознании сравнительно-исторический метод в языкознании является одним из основных и представляет собой совокупность приёмов...

Концептуальные модели труда учителя В отечественной литературе существует несколько подходов к пониманию профессиональной деятельности учителя, которые, дополняя друг друга, расширяют психологическое представление об эффективности профессионального труда учителя...

Конституционно-правовые нормы, их особенности и виды Характеристика отрасли права немыслима без уяснения особенностей составляющих ее норм...

Studopedia.info - Студопедия - 2014-2026 год . (0.012 сек.) русская версия | украинская версия