Code bài toán check in hành khách ở sân bay

Thứ hai , 15/05/2017, 08:14 GMT+7
     

Bài trước chúng ta cũng đã đi qua việc code game xe qua trạm thu phí giao thông, bài này chúng ta tiếp tục đi về game này theo cách viết khác

Bài trước: Game xe qua trạm thu phí giao thông 

Giao diễn chương trình check in hành khách ở sân bay như sau

I.                   CLASS  HUMAN

1.      Các Biến Cần Dùng

 

-          publicImage attribute: hình ảnh

-          publicint t = 0;

-          publicPoint coordinate = new Point ( ) : Tọa độ ban đầu

-          publicbool going = false  : kiểm tra xem ,ột người đang đi hay đứng yên

-          publicint row = 0, column = 0;

-          publicint selectGate = 0: Chọn cổng thích hợp

 

2.      Các Phương Thức Sử Dụng

 

-   publicHuman(Point coordinate1, Image image, int time): Hàm contructor dùng để khởi tạo các thuộc tính ban đầu của một người

-   publicvoid GoingTo : trạng thái đi vào

-   publicvoid PassGate : Trạng thái qua cổng

-   privatevoid Step : Số bước đi

 

II.                FORM MAIN

1.      Các Biến Cần Dùng

 

-   Bitmapm_Background, m_Bitmap;

-   Randomrandom;

-   HumanPeople, HumanTemp, HumanGoOutGate1,  HumanGoOutGate2,  - -HumanGoOutGate3;

-   Danh sách người đợi ở các cổng

        Queue gate1 = new Queue();

        Queue gate2 = new Queue();

        Queue gate3 = new Queue();

-   Đặt các biến kiểm tra ở mỗi cổng

        bool  flag = true,flagProgram=false;

        bool check1 = true; bool check2 = true; bool check3 = true;

 

2.      Các Phương Thức Sử Dụng

 

-   privatevoid Background : Khởi tạo nền vẽ

-   privatevoid DrawStandingHuman : Vẽ người lúc đứng yên

-   privatevoid DrawMovingHuman : Vẽ người lúc di chuyển

-   privatevoid DrawBackground : Vẽ lại nền và người sau mỗi lần Timer_tick

-   privateHuman RandomPeople : Khởi tạo người ngẫu nhiên (thuộc 1 trong 4 dạng người)

-   privatevoid OnAirport : Xử lí cho người mới tạo nên vào cổng nào

-   privatevoid ProcessingGate1 : Nhận và xử lí người tại cổng 1(đi vào cổng 1,đếm TG,cho ra cổng)

-   privatevoid ProcessingGate2 : Nhận và xử lí người tại cổng 2(đi vào cổng 2,đếm TG,cho ra cổng)

-   privtevoid ProcessingGate3 : Nhận và xử lí người tại cổng 3(đi vào cổng 3,đếm TG,cho ra cổng)

-   privatevoid Waitting : Sắp xếp hàng người đang đợi trước khi vào cổng

Một số hàm và class trong chương trình

Bitmap m_Background, m_Bitmap;
        Random random;
        Human People, HumanTemp, HumanGoOutGate1,  HumanGoOutGate2,  HumanGoOutGate3;
        Queue gate1 = new Queue();
        Queue gate2 = new Queue();
        Queue gate3 = new Queue();
        bool  flag = true,flagProgram=false;
        bool check1 = true; bool check2 = true; bool check3 = true;
private void DrawMovingHuman(Human people)
        {
            pictureBox1.Image = m_Bitmap;//Xóa bàn vẽ
 
            using (Graphics g = Graphics.FromImage(pictureBox1.Image))
            {
                g.DrawImage(m_Background, 0, 0, pictureBox1.Width, pictureBox1.Height);//Vẽ nền
 
                g.DrawImage(people.attribute, new Rectangle(people.coordinate.X, people.coordinate.Y, 45, 70), new Rectangle(people.row * 45, people.column * 70, 45, 70), GraphicsUnit.Pixel);
                foreach (Human a in gate1)
                { DrawStandingHuman(a); }  
                if (HumanGoOutGate1 != null)
                    DrawStandingHuman(HumanGoOutGate1);
                if (HumanGoOutGate2 != null)
                    DrawStandingHuman(HumanGoOutGate2);
                if (HumanGoOutGate3 != null)
                    DrawStandingHuman(HumanGoOutGate3);
            }
        }
private void OnAirport()
        {
            label4.Text = gate1.Count.ToString();
            Waitting();
            if (time <= 0 && count < 7&&flag)
            {
                HumanTemp = RandomPeople();
                HumanTemp.column = 2;               
                gate1.Enqueue(HumanTemp); count++;
                time = 5;
                flagProgram = true;
           
                HumanTemp = null;
            }
          
          
          
        }

Download code game: Click here : https://www.mediafire.com/?undefined

Game và các project C#:  http://congnghegi.com/source-code/

game check in code check in san bay co so lap trinh code C# đồ án bài tập code uit