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

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

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

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

1150

 

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

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 ออก

 

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

1150

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

YouTube Preview Image

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

Leave a Reply

© 2022 GlurGeek.Com