[C++]명품 C++ 프로그래밍 실습문제 8장 6번
[C++]명품 C++ programming 실습문제 8장 6번
명품 C++ 프로그래밍실습문제/연습문제 /C++
#include <iostream>
#include <string>
using namespace std;
class BaseArray {
private:
int capacity;
int* mem;
protected:
BaseArray(int capacity = 100) {
this->capacity = capacity; mem = new int[capacity];
}
~BaseArray() { delete[] mem; }
void put(int index, int val) { mem[index] = val; }
int get(int index) { return mem[index]; }
int getCapacity() { return capacity; }
};
class MyStack : public BaseArray{
int top;
public:
MyStack(int capacity) : BaseArray(capacity) { top = -1; }
int capacity() { return getCapacity(); }
int length() { return top + 1; }
void push(int n) { put(++top, n); }
int pop() { return get(top--); }
};
int main() {
MyStack mStack(100);
int n;
cout << "스택에 삽입할 5개의 정수를 입력하라>> ";
for (int i = 0; i < 5; i++) {
cin >> n;
mStack.push(n);
}
cout << "스택의 용량:" << mStack.capacity() << ", 스택의 크기:" << mStack.length() << endl;
cout << "스택의 원소를 순서대로 제거하여 출력한다>> ";
while (mStack.length() != 0) {
cout << mStack.pop() << ' ';
}
cout << endl << "스택의 현재 크기 : " << mStack.length() << endl;
return 0;
}
'C++' 카테고리의 다른 글
[C++] 명품 C++ 프로그래밍 실습문제 8장 9번 (0) | 2023.01.13 |
---|---|
[C++] 명품 C++ 프로그래밍 실습문제 8장 8번 (0) | 2023.01.13 |
[C++] 명품 C++ 프로그래밍 실습문제 8장 4번 (0) | 2023.01.13 |
[C++] 명품 C++ 프로그래밍 실습문제 8장 2번 (0) | 2023.01.13 |
[C++] 명품 C++ 프로그래밍 실습문제 8장 오픈챌린지/openchallenge (0) | 2023.01.13 |