Струтуры данных
Автор: Аарон Иванов • Февраль 22, 2018 • Лабораторная работа • 1,041 Слов (5 Страниц) • 444 Просмотры
Министерство науки и образования Республики Казахстан
Карагандинский государственный технический университет.
Кафедра: ИТБ
Лабораторная работа №1
Дисциплина: Языки и технологии программирования
Тема: Струтуры данных
.
Цель данной работы:
Задача: Реализовать стек
Листинг программы:
#include "stdafx.h"
#include
#include
#include
#include
using namespace std;
class Stack_calc
{
private:
int *data_;
int last_;
int dataSize_;
public:
Stack_calc(int size = 0)
{
data_ = nullptr;
if (size <= 0) this->dataSize_ = 30;
last_ = -1;
data_ = new int(this->dataSize_);
}
~Stack_calc()
{
delete [] data_;
data_ = nullptr;
}
void push(int a)
{
if (last_ == dataSize_)
{
dataSize_ = (dataSize_ * 3) / 2;
data_ = (int*)realloc(data_, dataSize_ * sizeof(int));
}
data_[++last_] = a;
cout << data_[last_] << endl;
}
int pop()
{
int i = 0;
if (last_ >= 0)
{
cout << data_[last_] << endl;
i = data_ [last_--];
return i;
}
else
{
cout << "Stack is empty!" << endl;
...