Từ 1 tới 9 trên tổng số 9 kết quả

Đề tài: Bài tập App console.

  1. #1
    Ngày gia nhập
    04 2007
    Bài viết
    2

    Mặc định Bài tập App console.

    Mình có 1 bài tập như thế này:
    App console thực hiện các việc sau:
    - Hiển thị 5 mặt hàng gồm Mã số, tên hàng, và giá (tùy chọn).
    - Khách hàng nhập vào Mã số và số lượng mỗi mặt hàng muốn mua.
    - Chương trình hỏi đáp, nếu mua tiếp thì quay lại từ đầu, nếu không mua nữa thì in ra Mã số, tên hàng, giá và tống số tiền. Tức là gộp tất cả các lần mua vào 1 hóa đơn.
    Mình làm không nổi cái ý thứ 3 ( không gộp được tất cả các lần mua vào 1 hóa đơn, mà thay vào đó mỗi lần khách hàng mua hàng là 1 lần in hóa đơn.)
    Các bạn có ý tưởng nào hay giúp mình chỗ bế tắc đó với. Mình mới học C# thôi. Thank.
    Code:
        class Program
        {
            static void Main(string[] args)
            {
                string
                    h1 = " Banh kem",
                    h2 = " Keo deo",
                    h3 = " Duong trang",
                    h4 = " Sua tuoi",
                    h5 = " Sua dac",
                    m, s,kt;
                int
                    dem=0,tien,
                    g1 = 5000,
                    g2 = 7000,
                    g3 = 9000,
                    g4 = 3000,
                    g5 = 6000;
                Console.WriteLine("\t\tDANH SACH HANG HOA\n");
                Console.WriteLine("\tMA SO  \t  TEN HANG  \t  GIA");
                Console.WriteLine("\t  1. \t{0} \t {1} d", h1, g1);
                Console.WriteLine("\t  2. \t{0} \t {1} d", h2, g2);
                Console.WriteLine("\t  3. \t{0} \t {1} d", h3, g3);
                Console.WriteLine("\t  4. \t{0} \t {1} d", h4, g4);
                Console.WriteLine("\t  5. \t{0} \t {1} d", h5, g5);
                do
                {
                    Console.Write("\nMA SO hang can mua: ");
                    m = Console.ReadLine();
                    Console.Write("So luong: ");
                    s = Console.ReadLine();
                    switch(m)
                    {
                        case "1":
                            tien=g1*(Convert.ToInt32(s));
                            Console.WriteLine("-> {0}, {1}", h1, tien);
                            break;
                        case "2":
                            tien=g2*(Convert.ToInt32(s));
                            Console.WriteLine("-> {0}, {1}", h2, tien);
                            break;
                        case "3":
                            tien=g3*(Convert.ToInt32(s));
                            Console.WriteLine("-> {0}, {1}", h3, tien);
                            break;
                        case "4":
                            tien=g4*(Convert.ToInt32(s));
                            Console.WriteLine("-> {0}, {1}", h4, tien);
                            break;
                        case "5":
                            tien=g5*(Convert.ToInt32(s));
                            Console.WriteLine("-> {0}, {1}", h5, tien);
                            break;
                        default:
                            Console.WriteLine("Nhap sai MA SO !");
                            dem--;
                            break;
                    }
                    Console.Write("Mua tiep (C\\K) ?: ");
                    kt = Console.ReadLine();
                    dem++;
                } while (kt == "c");
                Console.WriteLine("\nTat ca {0} hoa don.",dem);
                Console.ReadLine();
            }
        }
    Ở nhà nói nọ nói kia. Lên mạng mà nói Google biết liền...

  2. #2
    Ngày gia nhập
    07 2008
    Nơi ở
    /media/Anime
    Bài viết
    2,288

    Bạn thiết kế lớp/struct mathang gồm tên, giá tiền, số lượng. Sau đó tạo lớp/struct hoadon chứa danh sách hoặc mảng các mặt hàng.
    Càng yêu mèo thì mèo càng mập. Mèo càng mập ta lại càng yêu.

  3. #3
    Ngày gia nhập
    04 2007
    Bài viết
    2

    Trích dẫn Nguyên bản được gửi bởi meoconlongvang Xem bài viết
    Bạn thiết kế lớp/struct mathang gồm tên, giá tiền, số lượng. Sau đó tạo lớp/struct hoadon chứa danh sách hoặc mảng các mặt hàng.
    hix,mình mới học thôi,vấn chưa đến những phần đó.
    Ở nhà nói nọ nói kia. Lên mạng mà nói Google biết liền...

  4. #4
    Ngày gia nhập
    09 2007
    Bài viết
    724

    Gộp tất cả các hóa đơn là sao mình không hiểu?
    có phải là in ra tất cả các hóa đơn mà người dùng chọn vào phải không bạn.

    nói như mèo con đúng rồi. nhưng bạn chưa học đến phần này thì có thể mảng bạn đã học rồi chứ.
    nếu học rồi thì khỏi tổ chức thành một struct mà bạn hãy tổ chức thành nhiều mảng khác nhau;
    ví dụ: int []arrTien, []arrMahang....
    khi người dùng chọn cái nào thì bạn đưa từng thông tin vào từng mảng tương ứng. khi xuất ra thì dùng xuất từng mảng ra từng dòng khác nhau.

    cách này chỉ là cách rất không nên dùng nhưng do bạn chưa học struct nên mình nói cách này. còn đã học struct rồi thì nên làm cách của mèo con.

  5. #5
    Ngày gia nhập
    04 2007
    Bài viết
    2

    gộp tất cả vào làm 1 là như thế này: khi kết thúc mua thì xuất ra màn hình vdụ như thế này:
    Code:
    DANH SACH HANG MUA
    MA SO.......TEN HANG......SO LUONG.....DON GIA.....THANH TIEN
    2................AAAA.........5.............10.............50
    3................BBBB..........3.............15.............45
    5................CCCC ........2..............20............40
    TONG TIEN THANH TOAN: 135
    Phần mảng thì mình chỉ mới tìm hiểu thôi, cũng bít tý tý. Nhung vẫn gặp phải khó khăn trong phần in ra danh sách như trên.
    Mình tạo 2 mảng DonGia, MaHang. Mỗi lần nhập nhập vào mã hàng sản phẩm mua, chương trình lại hỏi tiếp tục hay không ? Nếu tiếp thì nhập tiếp, nếu không thì kết thúc và in ra hóa đơn như trên.
    Đã được chỉnh sửa lần cuối bởi vuxuanhong : 08-09-2008 lúc 07:14 PM.
    Ở nhà nói nọ nói kia. Lên mạng mà nói Google biết liền...

  6. #6
    Ngày gia nhập
    09 2007
    Bài viết
    724

    Mặc định Bài tập App console.

    Trích dẫn Nguyên bản được gửi bởi vuxuanhong Xem bài viết
    gộp tất cả vào làm 1 là như thế này: khi kết thúc mua thì xuất ra màn hình vdụ như thế này:
    Code:
    DANH SACH HANG MUA
    MA SO.......TEN HANG......SO LUONG.....DON GIA.....THANH TIEN
    2................AAAA.........5.............10.............50
    3................BBBB..........3.............15.............45
    5................CCCC ........2..............20............40
    TONG TIEN THANH TOAN: 135
    Phần mảng thì mình chỉ mới tìm hiểu thôi, cũng bít tý tý. Nhung vẫn gặp phải khó khăn trong phần in ra danh sách như trên.
    Mình tạo 2 mảng DonGia, MaHang. Mỗi lần nhập nhập vào mã hàng sản phẩm mua, chương trình lại hỏi tiếp tục hay không ? Nếu tiếp thì nhập tiếp, nếu không thì kết thúc và in ra hóa đơn như trên.


    code nó đại loại như sau, bạn tham khảo rồi đổi theo bài của mình nhé.
    PHP Code:

     
    static void Main(string[] args)
            {
                
    int[] MaHang = { 1234};
                
    String[] TenHang = { "Hang1""Hang2""Hang3""Hang4" };

                for (
    int i 04i++)
                {
                    
    Console.Write(MaHang[i]);
                    
    Console.Write("\t");//in ra dấu tab
                    
    Console.Write(TenHang[i]);
                    
    Console.WriteLine();//xuong dong
                
    }
                
    Console.ReadLine();
            } 
    chúc bạn thành công.

  7. #7
    Ngày gia nhập
    04 2007
    Bài viết
    2

    Đoạn code như vậy mình làm được, như của bạn thì mới chỉ là phần xuất thông tin thông báo cho người mua biết mã hàng để chọn thôi (Hiển thị 5 mặt hàng).
    Mình mắc chỗ in danh sách các mã hàng mà khách chọn khi kết thúc mua. Mình có tạo 1 mảng (DanhSachNhap) để lưu các mã hàng mà người dùng nhập vào, thêm 1 mảng SoLuong để lưu số lượng mỗi mặt hàng. Đến đây thì tịt, trả nghĩ ra cách giải quyết vấn đề còn lại. ( in DANH SACH HANG MUA và tính toán ).
    Ở nhà nói nọ nói kia. Lên mạng mà nói Google biết liền...

  8. #8
    Ngày gia nhập
    09 2007
    Bài viết
    724

    thì nó cũng đại loại như vậy đó bạn.
    sau khi người dùng đã nhập xong. bạn có danh sách nhập hàng và số lượng đúng không?
    nếu có rồi thì số lượng của từng mảng. nếu có rồi thì việc bạn chỉ in ra giống như ở trên của mình thôi mà.

    giờ bài ở trên của mình thì mình giả sử là DanhsachNhap và SoLuong của bạn là 2 mảng TenHang và MaHang của mình.
    việc bạn xuất ra thì chỉ có như vậy thôi.

    nói tóm lại là bây giờ mảng thứ 2 của mình không còn là mã hàng nữa mà là mảng Số Lượng thì bạn nghĩ làm sao?????(hy vọng là bạn hiểu được ý mình).

    còn tính toán thì chỉ là vấn đề cộng trừ nhân cha thôi chứ có gì đâu.

    Lưu ý cho bạn khi làm cách này. Giả sử người dùng nhập mã hàng AAA vào danh sách mua với số lượng là 5, sau đó nhập thêm cũng mã hàng là AAA với số lượng là 3(vì lý do nào đó) thì bạn phải làm sao trong trường hợp này????? bạn tự giải quyết trường hợp này nhé.

    chúc bạn thành công.

  9. #9
    Ngày gia nhập
    04 2007
    Bài viết
    2

    hix, "trên lớp đc dạy đến đâu thì làm đến đấy", không nên cầm đền chạy trước ôtô.
    Vậy là mình làm hết rùi, đúng những phần được học.
    PHP Code:
        class Program
        
    {
            static 
    void Main(string[] args)
            {
                
    string
                    h1 
    " Banh kem",h2 " Keo deo",h3 " Duong trang",h4 " Sua tuoi",h5 " Sua dac",
                    
    nhapm1 nullm2 nullm3 nullm4 nullm5 nullktslg;
                
    int
                    g1 
    5000g2 7000g3 9000g4 3000g5 6000,
                    
    dem=0,t1=0t2=0t3=0t4=0t5=0t;
                
    Console.WriteLine("\t\tDANH SACH HANG HOA\n");
                
    Console.WriteLine("\tMA SO  \t  TEN HANG  \t  GIA");
                
    Console.WriteLine("\t h1. \t{0} \t {1} d"h1g1);
                
    Console.WriteLine("\t h2. \t{0} \t {1} d"h2g2);
                
    Console.WriteLine("\t h3. \t{0} \t {1} d"h3g3);
                
    Console.WriteLine("\t h4. \t{0} \t {1} d"h4g4);
                
    Console.WriteLine("\t h5. \t{0} \t {1} d"h5g5);
                
    //
                
    do
                {
                    
    Console.Write("\nMA SO hang mua: ");
                    
    nhap Console.ReadLine();
                    
    Console.Write("So luong: ");
                    
    slg Console.ReadLine();
                    switch (
    nhap)
                    {
                        case 
    "h1":
                            {
                                
    m1 h1;
                                
    t1 Convert.ToInt32(slg) * g1;
                                
    Console.WriteLine("-> Mua: {0}, so luong: {1}"h1slg);
                                break;
                            }
                        case 
    "h2":
                            {
                                
    m2 h2;
                                
    t2 Convert.ToInt32(slg) * g2;
                                
    Console.WriteLine("-> Mua: {0}, so luong: {1}"h2slg);
                                break;
                            }
                        case 
    "h3":
                            {
                                
    m3 h3;
                                
    t3 Convert.ToInt32(slg) * g3;
                                
    Console.WriteLine("-> Mua: {0}, so luong: {1}"h3slg);
                                break;
                            }
                        case 
    "h4":
                            {
                                
    m4 h4;
                                
    t4 Convert.ToInt32(slg) * g4;
                                
    Console.WriteLine("-> Mua: {0}, so luong: {1}"h4slg);
                                break;
                            }
                        case 
    "h5":
                            {
                                
    m5 h5;
                                
    t5 Convert.ToInt32(slg) * g5;
                                
    Console.WriteLine("-> Mua: {0}, so luong: {1}"h5slg);
                                break;
                            }
                        default:
                            {
                                
    dem--;
                                
    Console.WriteLine("MA SO khong ton tai, vui long nhap lai !");
                                break;
                            }
                    }
                    
    Console.Write("\nMua tiep (c\\k)? ");
                    
    kt Console.ReadLine();
                    
    dem++;
                } while ((
    kt == "c")&(dem<5));
                
    Console.WriteLine("\n\tDANH SACH HANG MUA");
                
    Console.WriteLine("\t {0}",m1);
                
    Console.WriteLine("\t {0}",m2);
                
    Console.WriteLine("\t {0}",m3);
                
    Console.WriteLine("\t {0}",m4);
                
    Console.WriteLine("\t {0}",m5);
                
    t1 t2 t3 t4 t5;
                
    Console.WriteLine("\t Tong tien: {0}",t);
                
    Console.ReadLine();
            }
        } 
    Cám ơn bạn đã nhiệt tình giúp.
    Ở nhà nói nọ nói kia. Lên mạng mà nói Google biết liền...

Các đề tài tương tự

  1. Algorithm [C# Console] Lỗi khi tính toán phân số
    Gửi bởi ngthanhduc3011 trong diễn đàn Thắc mắc lập trình C#
    Trả lời: 2
    Bài viết cuối: 23-08-2013, 01:03 AM
  2. Lỗi ghi đè phương thức Console.WriteLine() trong C# Console
    Gửi bởi Boyloichoi27 trong diễn đàn Thắc mắc lập trình C#
    Trả lời: 0
    Bài viết cuối: 02-05-2013, 08:32 PM
  3. Algorithm sự khác nhau giữa Console.readLine và Console.readKey ; giữa Console.write và console.writeLine
    Gửi bởi trangkizd_91 trong diễn đàn Thắc mắc lập trình C#
    Trả lời: 1
    Bài viết cuối: 20-10-2011, 05:48 PM
  4. Xin một số bài lập trình console hướng đối tượng
    Gửi bởi dk3lan trong diễn đàn Nhập môn lập trình C#, ASP.NET
    Trả lời: 1
    Bài viết cuối: 28-12-2009, 09:14 PM
  5. Close console trên C# | Giúp mình về Console Application trên C# với?
    Gửi bởi letheson trong diễn đàn Thắc mắc lập trình C#
    Trả lời: 9
    Bài viết cuối: 15-05-2009, 12:28 AM

Quyền hạn của bạn

  • Bạn không thể gửi đề tài mới
  • Bạn không thể gửi bài trả lời
  • Bạn không thể gửi các đính kèm
  • Bạn không thể chỉnh sửa bài viết của bạn