Information Technology VietNam

Bạn có muốn phản ứng với tin nhắn này? Vui lòng đăng ký diễn đàn trong một vài cú nhấp chuột hoặc đăng nhập để tiếp tục.

4 posters

    Bán vé máy bay

    NgPPhung
    NgPPhung
    Super Moderator
    Super Moderator


    Giới tính : Nữ Bài gửi : 73
    Tổng Điểm : 144
    Điểm Thưởng : 8
    Sinh Nhật : 26/04/1990 Bị Dụ Dỗ : 11/09/2009
    Tuổi : 34

    Bán vé máy bay Empty Bán vé máy bay

    Bài gửi by NgPPhung 22/10/2009, 23:09

    Code:
    using System;
    class Date
    {
        public Date(byte ngay, byte thang, short nam)
        {
          this.ngay = ngay;
          this.thang = thang;
          this.nam = nam;
        }

        public void getNgay(out byte ngay, out byte thang, out short nam)
        {
          ngay = this.ngay;
          thang = this.thang;
          nam = this.nam;
        }
        byte ngay;
        byte thang;
        short nam;
    }
    Code:

    using System;
    class Time
    {
        public Time(byte gio,byte phut)
        {
          this.gio = gio;
          this. phut = phut;
        }

        public void getGio(out byte gio, out byte phut)
        {
          gio = this.gio;
          phut = this.phut;
        }
        byte gio;
        byte phut;
    }
    Code:

    using System;
    class FlightOfTicket
    {
        public
    FlightOfTicket(Date ngayKhoiHanh, Time gioKhoiHanh, string
    hoVaTenKhachHang, byte soLuongVe, double giaVe, byte loaiCabin, bool
    khuyenMai)
        {
          this.ngayKhoiHanh = ngayKhoiHanh;
          this.gioKhoiHanh = gioKhoiHanh;
          this.hoVaTenKhachHang = hoVaTenKhachHang;
          this.soLuongVe = soLuongVe;
          this.giaVe = giaVe;
          this.loaiCabin = loaiCabin;
          this.khuyenMai = khuyenMai;
        }

        public Date NgayKhoiHanh
        {
          get
          {
            return ngayKhoiHanh;
          }
          set
          {
            ngayKhoiHanh=value;
          }
        }

        public Time GioKhoiHanh
        {
          get
          {
            return gioKhoiHanh;
          }
          set
          {
            gioKhoiHanh = value;
          }
        }

        public double TienKhuyenMai()
        {
          byte day, month,hour,minute;
          short year;
          double TienKM = 0;
          if (khuyenMai)
          {
            if (loaiCabin == 1 && soLuongVe > 3)
              TienKM = 0.2 * soLuongVe * giaVe;
            if (loaiCabin == 2 && soLuongVe > 2)
              TienKM = 0.25 * soLuongVe * giaVe * loaiCabin;
            if (loaiCabin == 3 && soLuongVe > 1)
              TienKM = 0.3 * soLuongVe * giaVe * loaiCabin;
          }
          ngayKhoiHanh.getNgay(out day, out month, out year);
          gioKhoiHanh.getGio(out hour, out minute);
          if (hour < 6 || hour == 6 && minute < 31 )
            TienKM += 0.15 * soLuongVe * giaVe * loaiCabin;
          else if (day < 6)
            TienKM += 0.1 * soLuongVe * giaVe * loaiCabin;
          return TienKM;
        }

        public double TongTienVe()
        {
          return soLuongVe * giaVe * loaiCabin - TienKhuyenMai();
        }

        public void HienThiNgay()
        {
          byte day, month;
          short year;
          ngayKhoiHanh.getNgay(out day, out month, out year);
          Console.WriteLine("{0} / {1} /{2}", day, month, year);
        }

        public void HienThiGio()
        {
          byte hour, minute;
          gioKhoiHanh.getGio(out hour, out minute);
          Console.WriteLine("{0} : {1}", hour, minute);
        }

        public void HienThiThongTinVe()
        {
          Console.WriteLine("Ho ten khach hang:  {0}",hoVaTenKhachHang);
          Console.WriteLine("So luong ve: {0}", soLuongVe);
          Console.WriteLine("Loai ve:  {0}", loaiCabin);
          Console.Write("Ngay khoi hanh: "); HienThiNgay();
          Console.Write("Gio khoi hanh: "); HienThiGio();
          Console.WriteLine("Tong tien phai tra:  {0}", TongTienVe());
        }

        Date ngayKhoiHanh;
        Time gioKhoiHanh;
        string hoVaTenKhachHang;
        byte soLuongVe;
        double giaVe;
        byte loaiCabin;
        bool khuyenMai;
    }
    Code:

    using System;
    using System.Collections.Generic;
    using System.Linq;
    using System.Text;
    class Tester
    {
        public static void Main()
        {
          Date day = new Date(20,10,2009);
          Time time = new Time(5,30);;
          FlightOfTicket ve = new FlightOfTicket(day, time," Nguyen van A ", 2, 100000,3, true);
          Console.WriteLine("thong tin khach hang:  ");  ve.HienThiThongTinVe();
          Console.ReadLine();
        }
    }


                   




    Bán vé máy bay Icon_post_report
    ltv2009
    ltv2009
    Top Poster
    Top Poster


    Giới tính : Nữ Bài gửi : 198
    Tổng Điểm : 450
    Điểm Thưởng : 5
    Sinh Nhật : 17/10/1990 Bị Dụ Dỗ : 10/10/2009
    Tuổi : 34

    Bán vé máy bay Empty Re: Bán vé máy bay

    Bài gửi by ltv2009 24/10/2009, 04:52

    Bạn làm bài này rất khá Good, mình có coi qua và chỉ chỉnh sửa đôi chút ở class tester Very Happy. Bạn có thể tham khảo. Hi vọng sẽ cùng nhau học tốt. Smile Very Happy


    Code:

    using System;
    using System.Collections.Generic;
    using System.Linq;
    using System.Text;
    class Tester
    {
        public static void Main()
        {
            byte ng, th, g, p;
            short n;
            char c;
            do
            {
                Console.WriteLine("Nhap ngay/thang/nam");
                ng = Convert.ToByte(Console.ReadLine());
                th = Convert.ToByte(Console.ReadLine());
                n = Convert.ToInt16(Console.ReadLine());
                Console.WriteLine("Nhap vao gio:phut");
                g = Convert.ToByte(Console.ReadLine());
                p = Convert.ToByte(Console.ReadLine());
                Date day = new Date(ng, th, n);
                Time time = new Time(g, p); ;
                Console.Write("Nhap ten khach hang: ");
                string ten;
                ten = Convert.ToString(Console.ReadLine());
                Console.Write("Mua bao nhiu ve: ");
                byte sl;
                sl = Convert.ToByte(Console.ReadLine());
                Console.WriteLine("Muon ngoi loai cabin nao :");
                Console.WriteLine("    1.Loai binh dan");
                Console.WriteLine("    2.Loai thuong gia");
                Console.WriteLine("    3.Loai VIP");
                byte loai;
                loai = Convert.ToByte(Console.ReadLine());
                FlightOfTicket ve = new FlightOfTicket(day, time, ten, sl, 100000, loai, true);
                Console.WriteLine("thong tin khach hang:  "); ve.HienThiThongTinVe();
                Console.Write("Co muon nhap tiep khong?");
                c = Convert.ToChar(Console.ReadLine());
            } while (c == 'c');
            Console.ReadLine();
        }
    }
    NgPPhung
    NgPPhung
    Super Moderator
    Super Moderator


    Giới tính : Nữ Bài gửi : 73
    Tổng Điểm : 144
    Điểm Thưởng : 8
    Sinh Nhật : 26/04/1990 Bị Dụ Dỗ : 11/09/2009
    Tuổi : 34

    Bán vé máy bay Empty Re: Bán vé máy bay

    Bài gửi by NgPPhung 24/10/2009, 10:30

    ltv2009 đã viết:Bạn làm bài này rất khá Bán vé máy bay 156139, mình có coi qua và chỉ chỉnh sửa đôi chút ở class tester Bán vé máy bay 654305. Bạn có thể tham khảo. Hi vọng sẽ cùng nhau học tốt. Bán vé máy bay 40363 Bán vé máy bay 654305


    Code:

    using System;
    using System.Collections.Generic;
    using System.Linq;
    using System.Text;
    class Tester
    {
        public static void Main()
        {
            byte ng, th, g, p;
            short n;
            char c;
            do
            {
                Console.WriteLine("Nhap ngay/thang/nam");
                ng = Convert.ToByte(Console.ReadLine());
                th = Convert.ToByte(Console.ReadLine());
                n = Convert.ToInt16(Console.ReadLine());
                Console.WriteLine("Nhap vao gio:phut");
                g = Convert.ToByte(Console.ReadLine());
                p = Convert.ToByte(Console.ReadLine());
                Date day = new Date(ng, th, n);
                Time time = new Time(g, p); ;
                Console.Write("Nhap ten khach hang: ");
                string ten;
                ten = Convert.ToString(Console.ReadLine());
                Console.Write("Mua bao nhiu ve: ");
                byte sl;
                sl = Convert.ToByte(Console.ReadLine());
                Console.WriteLine("Muon ngoi loai cabin nao :");
                Console.WriteLine("    1.Loai binh dan");
                Console.WriteLine("    2.Loai thuong gia");
                Console.WriteLine("    3.Loai VIP");
                byte loai;
                loai = Convert.ToByte(Console.ReadLine());
                FlightOfTicket ve = new FlightOfTicket(day, time, ten, sl, 100000, loai, true);
                Console.WriteLine("thong tin khach hang:  "); ve.HienThiThongTinVe();
                Console.Write("Co muon nhap tiep khong?");
                c = Convert.ToChar(Console.ReadLine());
            } while (c == 'c');
            Console.ReadLine();
        }
    }


    Thanks nha bạn. Rất vui khi bạn góp ý.
    Vy Thanh Định
    Vy Thanh Định
    Web Master
    Web Master


    Giới tính : Nam Bài gửi : 228
    Tổng Điểm : 544
    Điểm Thưởng : 16
    Sinh Nhật : 19/05/1990 Bị Dụ Dỗ : 11/09/2009
    Tuổi : 34

    Bán vé máy bay Empty Re: Bán vé máy bay

    Bài gửi by Vy Thanh Định 28/10/2009, 21:31

    Cho góp ý một phần nhỏ nha mình sửa lại phần khuyến mãi như thế này

    Code:
    public double TienKhuyenMai()
        {
          byte day, month,hour,minute;
          short year;
          double TienKM = 0;
          if (khuyenMai)
          {
            if (loaiCabin == 1 && soLuongVe > 3)
              TienKM = 0.2 * soLuongVe * giaVe;
            if (loaiCabin == 2 && soLuongVe > 2)
              TienKM = 0.25 * soLuongVe * giaVe * loaiCabin;
            if (loaiCabin == 3 && soLuongVe > 1)
              TienKM = 0.3 * soLuongVe * giaVe * loaiCabin;
          }
          ngayKhoiHanh.getNgay(out day, out month, out year);
          gioKhoiHanh.getGio(out hour, out minute);
          minute = minute + hour*60;
          if (minute < 391 )
            TienKM += 0.15 * soLuongVe * giaVe * loaiCabin;
          else if (day < 6)
            TienKM += 0.1 * soLuongVe * giaVe * loaiCabin;
          return TienKM;
        }

    Như vậy thì việc so sánh ngay khúc nhỏ hơn 6h30 sẽ ít lệnh hơn nhiều
    avatar
    minhchi692002
    New Member
    New Member


    Giới tính : Nam Bài gửi : 9
    Tổng Điểm : 11
    Điểm Thưởng : 0
    Sinh Nhật : 13/09/1990 Bị Dụ Dỗ : 21/09/2009
    Tuổi : 34

    Bán vé máy bay Empty Re: Bán vé máy bay

    Bài gửi by minhchi692002 2/11/2009, 15:25

    bài bàn vé máy bay cua ban ten phi phung hai lop date va time sao ko gop chung vao thanh 1 lop . neu tach thanh hai lop nhu vay thi co uu diem gi ko
    NgPPhung
    NgPPhung
    Super Moderator
    Super Moderator


    Giới tính : Nữ Bài gửi : 73
    Tổng Điểm : 144
    Điểm Thưởng : 8
    Sinh Nhật : 26/04/1990 Bị Dụ Dỗ : 11/09/2009
    Tuổi : 34

    Bán vé máy bay Empty Re: Bán vé máy bay

    Bài gửi by NgPPhung 2/11/2009, 17:20

    Bài toán tách thành 2 lớp Date va Time là vì trong phương thức tính tiền khuyến mãi có 2 trường hợp khuyến mãi là: các chuyến bay đầu tháng từ ngày 1 đến ngày 5 thì giảm 10% và các chuyên bay từ 0h đến 6h30 thì giảm 15%. cho nên phải tách thành 2 lớp đó bạn.
    avatar
    minhchi692002
    New Member
    New Member


    Giới tính : Nam Bài gửi : 9
    Tổng Điểm : 11
    Điểm Thưởng : 0
    Sinh Nhật : 13/09/1990 Bị Dụ Dỗ : 21/09/2009
    Tuổi : 34

    Bán vé máy bay Empty Re: Bán vé máy bay

    Bài gửi by minhchi692002 2/11/2009, 17:28

    Ghi chú của người quản lý: Lần sau bạn nên bỏ vào thẻ code để cho dễ nhìn, và tránh trường hợp các code của bạn trùng với code của forum. ví dụ [i] sẽ biến mất và đổi chữ của bạn thành in nghiêng.

    mong cac ban sua dum chya no thong bao loi ngay cho date ngaykhoihanh; time giokhoihanh ;
    Code:
    class date
        {
            public date(byte ngay, byte thang, short nam )
            {
                this.ngay = ngay;
                this.thang = thang;
                this.nam= nam ;
            }
            public  void getdate ( out byte  ngay , out byte thang , out short nam )
            {
                ngay = this.ngay ;
                thang = this .thang ;
                nam = this .nam ;
            }
            public byte ngay
            {
                get
                {
                    set ngay ;
                }
            }
            public byte thang
            {
                get
                {
                    set thang ;
                }
            }
            public byte nam
            {
                get
                {
                    set nam;
                }
            }
        }
    }
    Code:
    class time
        {
            public time(byte gio, byte phut)
            {
                this.gio = gio;
                this.ngay = ngay;
            }
            public void gettime(out byte gio, out byte phut)
            {
                gio = this.gio;
                phut = this.phut;
            }
            public byte gio
            {
                get
                {
                    set gio;
                }
            }
            public byte phut
            {
                get
                {
                    set phut;
                }
            }
        }
    }

           
           
     



    Code:

     class flightofticket
        {
            public flightofticket(date ngaykhoihanh, time giokhoihanh, string hovatenkhachhang, byte soluongve, double giave, byte loaicabin, bool khuyenmai)
            {
                this.ngaykhoihanh = ngaykhoihanh;
                this.giokhoihanh = giokhoihanh;
                this.hovatenkhachhang = hovatenkhachhang;
                this.soluongve = soluongve;
                this.giave = giave;
                this.loaicabin = loaicabin;
                this.khuyenmai = khuyenmai;
            }
            public date ngaykhoihanh
            {
                get
                {
                    return ngyakhoihanh;
                }
                set
                {
                    ngaykhoihanh = value;
                }

            }
            public time giokhoihanh
            {
                get
                {
                    return giokhoihanh;
                }
                set
                {
                    giokhoihanh = value;
                }
            }
            public double tienkhuyenmai()
            {
                byte ngay, thang, gio, phut;
                short nam;
                double tkm = 0;
                if (khuyenmai)
                {
                    if (loaicabin == 1 && soluongve > 4)
                        tkm = 0.2 * soluongve * giave * loaicabin;
                    if (loaicabin == 2 && soluongve > 3)
                        tkm = 0.25 * soluongve * giave * loaicabin;
                    if (loaicabin == 3 && soluongve > 2)
                        tkm = 0.3 * soluongve * giave * loaicabin;
                }
                ngaykhoihanh.getdate(out ngay, out thang, out nam);
                giokhoihanh.gettime(out gio, out phut);
                if (gio == 0 || gio == 6 && phut < 31)
                    tkm += 0.15 * giave * soluongve * loaicabin;
                else if (ngay < 6)
                    tkm += 0.1 * soluongve * giave * loaicabin;
                return tkm;
            }
                public void hienthingay()
                {
                    byte ngay , thang ;
                    short nam ;
                    ngaykhoihanh.getdate( out ngay , out thang, out nam );
                    Console.WriteLine("{0},{1},{2}",ngay , thang , nam );
                }
                public  void hienthigio()
                {
                    byte gio , phut ;
                    giokhoihanh. gettime( out gio ,out phut);
                    Console.WriteLine("{0},{1}", gio , phut );
                }
                public void HienThiThongTinVe()
              {
                Console.WriteLine("Ho ten khach hang:  {0}",hoVaTenKhachHang);
                Console.WriteLine("So luong ve: {0}", soLuongVe);
                Console.WriteLine("Loai ve:  {0}", loaiCabin);
              Console.Write("Ngay khoi hanh: "); HienThiNgay();
              Console.Write("Gio khoi hanh: "); HienThiGio();
              Console.WriteLine("Tong tien phai tra:  {0}", TongTienVe());
                }
                date ngaykhoihanh; 
                time giokhoihanh;
                string hovatenkhachhang;
                byte soluongve;
                double giave;
                byte loaicabin;
                bool khuyenmai;         
        }
    NgPPhung
    NgPPhung
    Super Moderator
    Super Moderator


    Giới tính : Nữ Bài gửi : 73
    Tổng Điểm : 144
    Điểm Thưởng : 8
    Sinh Nhật : 26/04/1990 Bị Dụ Dỗ : 11/09/2009
    Tuổi : 34

    Bán vé máy bay Empty Re: Bán vé máy bay

    Bài gửi by NgPPhung 2/11/2009, 17:34

    huhu lần sau để vào thẻ code nha để như zậy khó nhìn quá hà.
    NgPPhung
    NgPPhung
    Super Moderator
    Super Moderator


    Giới tính : Nữ Bài gửi : 73
    Tổng Điểm : 144
    Điểm Thưởng : 8
    Sinh Nhật : 26/04/1990 Bị Dụ Dỗ : 11/09/2009
    Tuổi : 34

    Bán vé máy bay Empty Re: Bán vé máy bay

    Bài gửi by NgPPhung 2/11/2009, 17:41

    Trong class Date Time bạn chưa khai báo ngày,tháng,năm,giờ,phút. bạn nên post class tester để mọi người dễ kiểm tra nha.
    ltv2009
    ltv2009
    Top Poster
    Top Poster


    Giới tính : Nữ Bài gửi : 198
    Tổng Điểm : 450
    Điểm Thưởng : 5
    Sinh Nhật : 17/10/1990 Bị Dụ Dỗ : 10/10/2009
    Tuổi : 34

    Bán vé máy bay Empty Re: Bán vé máy bay

    Bài gửi by ltv2009 11/11/2009, 00:45

    Chà chà ẹt min góp một đoạn hay nhá. Bớt đi hẳn cả hai điều kiện xét tới, nể thiệt, ông nghĩ ra hả.
    @NgPPhung làm supporter giỏi quá hén, mai mốt nhờ chỉ giáo Smile
    Vy Thanh Định
    Vy Thanh Định
    Web Master
    Web Master


    Giới tính : Nam Bài gửi : 228
    Tổng Điểm : 544
    Điểm Thưởng : 16
    Sinh Nhật : 19/05/1990 Bị Dụ Dỗ : 11/09/2009
    Tuổi : 34

    Bán vé máy bay Empty Re: Bán vé máy bay

    Bài gửi by Vy Thanh Định 11/11/2009, 22:03

    Hic tui mới đầu cũng làm như NgPPhung thui. Nhưng lúc lên lớp ông thầy tui nói cho các này nên về làm lại đó chứ. Có mà ngồi nghĩ ra đc, đầu óc dạo này nó khô lắm Sad

    Sponsored content


    Bán vé máy bay Empty Re: Bán vé máy bay

    Bài gửi by Sponsored content


      Hôm nay: 25/11/2024, 15:49