-1
下面是我想到的,我只想讓程序彈出堆棧中的前2個值,計算它們並將其推回堆棧。 ..我已經創建了所需的功能,但添加這兩個數字的函數似乎存在問題。從堆棧中彈出頂部2個值,添加並將它們推回
#include <iostream>
using namespace std;
int Maxlenght=5;
class stackhouse{
private:
int *CreateArray;
int top;
public:
stackhouse();
bool IsEmpty();
bool IsFull();
void constructor();
void Push(int);
void Pop(int);
void Sum();
void Sub();
};
stackhouse::stackhouse(){
CreateArray= new int[Maxlenght];
top=-1;
}
bool stackhouse::IsEmpty()
{
if (top==-1) return 1;
else return 0;
}
bool stackhouse::IsFull(){
if (top==Maxlenght-1) return 1;
else return 0;
}
void stackhouse::Push(int number){
top++;
CreateArray[top]=number;
}
void stackhouse::Pop (int number){
number=CreateArray[top];
top--;
}
void stackhouse::Sum(){
int number=7,sum=5;
Pop(sum);
Pop(number);
sum+=number;
Push(sum);
cout<<sum;
}
void main(){
int number;
stackhouse stack1;
stackhouse();
cout<<"Please fill the stack...";
stack1.Push(5);
stack1.Push(2);
cout<<"The sum is...";
stack1.Sum();
}
如果任何人可以打擾閱讀的代碼,我的帽子給他們。我建議,艾哈邁德,你在期待別人閱讀之前正確縮進它。順便說一句,你不需要圍繞縮進代碼塊的反引號。 –
Marcelo Cantos,這是我第一次發佈關於堆棧溢出的問題......所以我遇到了以我們需要的格式粘貼我的代碼的問題。抱歉! –
如果沒有合適縮進的代碼複製粘貼,你必須有一個非常奇怪的編輯器。無論如何,您都可以通過編輯問題來修復它。 –