โค้ดภาษาซีพลัสพลัส วนรับค่าตัวเลข จำนวน 5 ค่า จากคีย์บอร์ด โดยใช้ Stack

ในการวนรับค่าตัวเลขจากคีย์บอร์ด เก็บค่าโดยใช้ Stack แล้วนำค่าที่ได้จาก Stack แสดงผลออกจอภาพ

ก่อนอื่นขอแนะนำหลักการหรือวิธีการทำงานของของ Stack ก่อนคร่าว ๆ โดยจำง่าย ๆ คือ เข้าก่อนออกที่หลัง  เข้าที่หลังออกก่อน

ตัวอย่างโค้ด

 

มองภาพอาจจะไม่ชัดนะครับ ลองมาดู

SOURCE CODE  ดีกว่าครับ

#include <iostream>
#include <stack>

using namespace std;

int main ()
{
stack<int> mystack;
int i = 0;
int temp;

do{
cout << “Push number to Stack ” << (i+1) << ” : ” ;
cin >> temp;
mystack.push(temp);
i++;
}while(i < 5);

cout << “\n”;

while (!mystack.empty()){
cout << “Pop number out Stack ” << i << ” : ” << mystack.top();
cout << “\n”;
mystack.pop();
i–;
}
cout << “\n”;
system(“pause”);

return 0;
}

  • ต้องทำการ #include <stack> ถึงจะเรียกใช้ stack ได้
  • push() คือ เพิ่มค่าเข้าไปใน Stack
  • empty() คือ เช็คว่า Stack เป็นค่าว่างหรือยัง
  • top() คือ ดูว่าค่าที่อยู่บนสุดของ Stack คืออะไร
  • pop() คือ นำค่าที่อยู่บนสุดของ Stack ออก

 

หน้าจอแสดงผลนะครับ

หากยังไม่เข้าใจ ลองมาดูใน vdo ที่ผมจัดทำขึ้นดูนะครับ อาจจะทำให้เข้าใจได้ไม่มากก็น้อยครับ

at GlurGeek.Com
ปัจบันเรียนวิศวกรรมศาสตร์ สาขาคอมพิวเตอร์ มหาวิทยาลัยกรุงเทพ
จบจาก วิทยาลัยอรรถวิทย์พณิชยการ (ปวส) สาขา เทคโนโลยีสารสนเทศ
ชอบ ฟังเพลง ดูหนัง
ไม่ชอบสถานบันเทิง
แต่ชอบ นวด

Leave a Reply