#include <stdio.h>
#define SIZE 5
int stack[SIZE];
int sp;

void push(int value);
int pop(void);
int main(void) {
	sp=0;
	int resp, data;
	while(1){
		printf("1:push 2:pop 0:end:");
		scanf("%d",&resp);
		if(!resp) break;
		switch(resp){
			case 1: printf("push:"); scanf("%d",&data);
			 push(data);
			break;
			case 2: pop();
			break;
		}
		printf("sp=%d\n",sp);
	}
	printf("\n");
	for(int i=0; i<sp; i++){
		printf("stack[%d]=%d \n",i,stack[i]);
	}
	return 0;
}
void push(int value)
{
	if(sp>=SIZE){
		printf("スタックが満杯で入りませんでした\n");
	}else{
		stack[sp++]=value;
	}
}
int pop(void)
{
	if(sp<=0){
		printf("スタックが空で取り出せませんでした\n");
		return 0;
	}else{
		return stack[--sp];
	}
}