Chủ đề: Bài tập App console.
-
07-09-2008, 12:32 PM #1Junior Member
- Ngày tham gia
- Sep 2015
- Bài viết
- 0
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.
Mã: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 "); 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(" MA 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(" Tat ca {0} hoa don.",dem); Console.ReadLine(); } }
View more random threads:
- Giúp mình vấn đề này với
- Thao Tác Trên Grid,cần Giúp.
- Bài toán nhập môn ai giúp em với
- TextEditor hiện thị thẻ có chứa mã nguồn
- Hỏi cách tự kích hoạt chuột và bàn phím
- sự kiện của bàn phím
- Hỏi về chuyển đổi kiểu dữ liệu khi khai báo biến
- Các pro vào chỉ bảo giúp e với :(((
- Lỗi Đăng nhập trên ứng dụng Facebook
- Hiển thị Table trong CSDL lên GridView
-
07-09-2008, 04:25 PM #2Junior Member
- Ngày tham gia
- Sep 2015
- Bài viết
- 0
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.
-
07-09-2008, 05:46 PM #3Junior Member
- Ngày tham gia
- Sep 2015
- Bài viết
- 0
Gửi bởi meoconlongvang
-
08-09-2008, 10:51 AM #4Junior Member
- Ngày tham gia
- Sep 2015
- Bài viết
- 0
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.[IMG]images/smilies/biggrin.png[/IMG]
-
08-09-2008, 02:07 PM #5Junior Member
- Ngày tham gia
- Sep 2015
- Bài viết
- 0
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:
Mã: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
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.
-
09-09-2008, 01:39 PM #6Junior Member
- Ngày tham gia
- Sep 2015
- Bài viết
- 0
Đ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 ).
-
09-09-2008, 03:32 PM #7Junior Member
- Ngày tham gia
- Sep 2015
- Bài viết
- 0
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.
-
09-09-2008, 04:09 PM #8Junior Member
- Ngày tham gia
- Sep 2015
- Bài viết
- 0
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.
Mã nguồn PHP:class Program { static void Main(string[] args) { string h1 = " Banh kem",h2 = " Keo deo",h3 = " Duong trang",h4 = " Sua tuoi",h5 = " Sua dac", nhap, m1 = null, m2 = null, m3 = null, m4 = null, m5 = null, kt, slg; int g1 = 5000, g2 = 7000, g3 = 9000, g4 = 3000, g5 = 6000, dem=0,t1=0, t2=0, t3=0, t4=0, t5=0, t; Console.WriteLine("\t\tDANH SACH HANG HOA
"); Console.WriteLine("\tMA SO \t TEN HANG \t GIA"); Console.WriteLine("\t h1. \t{0} \t {1} d", h1, g1); Console.WriteLine("\t h2. \t{0} \t {1} d", h2, g2); Console.WriteLine("\t h3. \t{0} \t {1} d", h3, g3); Console.WriteLine("\t h4. \t{0} \t {1} d", h4, g4); Console.WriteLine("\t h5. \t{0} \t {1} d", h5, g5); // do { Console.Write("
MA 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}", h1, slg); break; } case "h2": { m2 = h2; t2 = Convert.ToInt32(slg) * g2; Console.WriteLine("-> Mua: {0}, so luong: {1}", h2, slg); break; } case "h3": { m3 = h3; t3 = Convert.ToInt32(slg) * g3; Console.WriteLine("-> Mua: {0}, so luong: {1}", h3, slg); break; } case "h4": { m4 = h4; t4 = Convert.ToInt32(slg) * g4; Console.WriteLine("-> Mua: {0}, so luong: {1}", h4, slg); break; } case "h5": { m5 = h5; t5 = Convert.ToInt32(slg) * g5; Console.WriteLine("-> Mua: {0}, so luong: {1}", h5, slg); break; } default: { dem--; Console.WriteLine("MA SO khong ton tai, vui long nhap lai !"); break; } } Console.Write("
Mua tiep (c\\k)? "); kt = Console.ReadLine(); dem++; } while ((kt == "c")&(dem<5)); Console.WriteLine("
\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); t = t1 + t2 + t3 + t4 + t5; Console.WriteLine("\t Tong tien: {0}",t); Console.ReadLine(); } }
Ngọc Bích xanh bản chất thuộc dòng đá đá hoa (jade). Và cẩm thạch là tên gọi chung của ngọc bích. Vì thực chất chúng thuộc dòng đá đa khoáng được hình thành từ chất Silicat dưới dạng dioxy. Ngọc bích...
Chia sẻ Vòng tay ngọc bích xanh là...