Code C Quan ly san pham vang bac

6 2 0
Code C Quan ly san pham vang bac

Đang tải... (xem toàn văn)

Thông tin tài liệu

Sinh Viên ứng dụng C để code bài Quản lý vàng bạc, đây là tài liệu tham khảonamespace Quản_lí_sản_phẩm { internal abstract class VangBac { protected int MaSP; protected string TenSP; protected string HangSX; protected double DonGia; public VangBac() { MaSP = 0; } public VangBac(int maSP, string tenSP, string hangSX, double donGia) { MaSP = maSP; TenSP = tenSP; HangSX = hangSX; DonGia = donGia; } public int maSP { get { return MaSP; } set { MaSP = value; } } public string tenSP { get { return TenSP; } set { TenSP = value; } } public string hangSX { get { return HangSX; } set { HangSX = value; } } public double donGia { get { return DonGia; } set { DonGia = value; } }

namespace Quản_lí_sản_phẩm { internal abstract class VangBac { protected int MaSP; protected string TenSP; protected string HangSX; protected double DonGia; public VangBac() { MaSP = 0; } public VangBac(int maSP, string tenSP, string hangSX, double donGia) { MaSP = maSP; TenSP = tenSP; HangSX = hangSX; DonGia = donGia; } public int maSP { get { return MaSP; } set { MaSP = value; } } public string tenSP { get { return TenSP; } set { TenSP = value; } } public string hangSX { get { return HangSX; } set { HangSX = value; } } public double donGia { get { return DonGia; } set { DonGia = value; } } public abstract void XuatTTSanPham(); public abstract double TinhTongTien(); public abstract void XetGiamGia(); public virtual void NhapTTSanPham() { Console.Write("Nhap ma san pham: "); maSP = int.Parse(Console.ReadLine()); Console.Write("Nhap ten san pham: "); tenSP = Console.ReadLine(); Console.Write("Nhap hang san xuat: "); hangSX = Console.ReadLine(); Console.Write("Nhap don gia: "); donGia = double.Parse(Console.ReadLine()); } } } class Vang :VangBac { private int TuoiVang; private string LoaiVang; private int SoLuong; public Vang() : base () { } public Vang (int tuoiVang, string loaiVang, int soLuong, int maSP, string tenSP, string hangSX, double donGia):base(maSP, tenSP, hangSX, donGia) { TuoiVang = tuoiVang; LoaiVang = loaiVang; SoLuong = soLuong; } public override void XuatTTSanPham() { Console.WriteLine("Ma san pham: {0} ", maSP); Console.WriteLine("Ten san pham: {0} ", tenSP); Console.WriteLine("Hang san xuat: {0}", hangSX); Console.WriteLine("Don gia: {0}", donGia); Console.WriteLine("Tuoi vang: {0}", TuoiVang); Console.WriteLine("Loai vang: {0}", LoaiVang); Console.WriteLine("So luong: {0}", SoLuong); } public override void NhapTTSanPham() { base.NhapTTSanPham(); Console.Write("Nhap tuoi vang: "); TuoiVang = int.Parse(Console.ReadLine()); Console.Write("Nhap loai vang: "); LoaiVang = Console.ReadLine(); Console.Write("Nhap so luong: "); SoLuong = int.Parse(Console.ReadLine()); } public override void XetGiamGia() { if(TuoiVang == 96 && LoaiVang == "nhan") { DonGia = DonGia * 0.97f; } else { if(TuoiVang == 97 && LoaiVang == "nhan") { DonGia = DonGia * 0.98f; } else { if (TuoiVang == 98 && LoaiVang == "nhan") { DonGia = DonGia * 0.99f; } } } } public override double TinhTongTien() { return SoLuong * DonGia; } public string loaiVang { get { return LoaiVang; } set { LoaiVang = value; } } } } internal class Bac : VangBac { private string LoaiBac; private string Kieu; private int SoLuong; public Bac() : base () { } public Bac(string loaiBac, string kieu, int soLuong, int maSP, string tenSP, string hangSX, double donGia):base(maSP, tenSP, hangSX, donGia) { LoaiBac = loaiBac; Kieu = kieu; SoLuong = soLuong; } public override void NhapTTSanPham() { base.NhapTTSanPham(); Console.Write("Nhap loai bac: "); LoaiBac = Console.ReadLine(); Console.Write("Nhap kieu: "); Kieu = Console.ReadLine(); Console.Write("Nhap so luong: "); SoLuong = int.Parse(Console.ReadLine()); } public override void XuatTTSanPham() { Console.WriteLine("Ma san pham: {0} ", maSP); Console.WriteLine("Ten san pham: {0} ", tenSP); Console.WriteLine("Hang san xuat: {0}", hangSX); Console.WriteLine("Don gia: {0}", donGia); Console.WriteLine("Loai bac: {0}", LoaiBac); Console.WriteLine("Kieu: {0}", Kieu); Console.WriteLine("So luong: {0}", SoLuong); } public override void XetGiamGia() { if(Kieu == "day chuyen" && LoaiBac == "8k") { DonGia = DonGia * 0.96f; } else { if(Kieu == "lac" && LoaiBac == "10k") { DonGia = DonGia * 0.98f; } } } public override double TinhTongTien() { return DonGia * SoLuong; } } } static void NhapTTSP(out VangBac[] ds, out int n, out int dem) { int iChon; int tL; dem = 0; Console.Write("Nhap so san pham: "); n = int.Parse(Console.ReadLine()); ds = new VangBac[n]; { dem++; Console.Write("Ban muon nhap san pham nao? (1:Vang 2:Bac ) "); iChon = int.Parse(Console.ReadLine()); if (iChon == 1) { ds[dem - 1] = new Vang(); ds[dem - 1].NhapTTSanPham(); } else { ds[dem - 1] = new Bac(); ds[dem - 1].NhapTTSanPham(); } Console.Write("Ban muon tiep tuc khong? 1.Co, 2.Khong "); tL = int.Parse(Console.ReadLine()); } while (tL != 2); } static void XuatTTVang(VangBac[] ds, int n, int dem) { for (int i = 0; i < n; i++) { if (ds[i] is Vang) { ds[i].XuatTTSanPham(); } } } static void XuatSPHangPNJ(VangBac[] ds, int n, int dem) { for (int i = 0; i < n; i++) { if (ds[i].hangSX == "PNJ") { if (ds[i] is Vang) { ds[i].XuatTTSanPham(); } else { ds[i].XuatTTSanPham(); } } } } static void SapXepGiaTang(VangBac[] ds, int n, int dem) { VangBac iTam; for (int i = 0; i < dem; i++) { for (int j = i + 1; j < dem; j++) { if (ds[i].donGia > ds[j].donGia) { iTam = ds[i]; ds[i] = ds[j]; ds[j] = iTam; } } } Console.WriteLine("DANH SACH SAN PHAM CO DON GIA TANG DAN"); for (int i = 0; i < dem; i++) { ds[i].XuatTTSanPham(); } } static void XuatSPCoGiaTuXDenY(VangBac[] ds, int n, int dem) { double X, Y; { Console.Write("Nhap don gia X: "); X = double.Parse(Console.ReadLine()); Console.Write("Nhap don gia Y: "); Y = double.Parse(Console.ReadLine()); } while (X < || Y < X ); for (int i = 0; i < n; i++) { if (ds[i].donGia > X && ds[i].donGia < Y) { if (ds[i] is Vang) { ds[i].XuatTTSanPham(); } else { ds[i].XuatTTSanPham(); } } } } static void XuatSPCoMaZ(VangBac[] ds, int n, int dem) { int Z; Console.Write("Nhap ma san pham Z: "); Z = int.Parse(Console.ReadLine()); for (int i = 0; i < n; i++) { if (ds[i].maSP == Z) { if (ds[i] is Vang) { ds[i].XuatTTSanPham(); } else { ds[i].XuatTTSanPham(); } } } } static void TinhTongTienTheoSanPham(VangBac[] ds, int n, int dem) { double sum1 = 0; double sum2 = 0; for (int i = 0; i < n; i++) { if (ds[i] is Vang) { Vang I = (Vang)ds[i]; if (I.loaiVang == "nhan") { sum1 += I.TinhTongTien(); } else if (I.loaiVang == "mieng") { sum2 += I.TinhTongTien(); } } } Console.WriteLine("Tong tien vang nhan: {0}", sum1); Console.WriteLine("Tong tien vang mieng: {0}", sum2); } static void Main(string[] args) { int n; VangBac[] ds; int dem; int tL, iChon; NhapTTSP(out ds, out n, out dem); { Console.Clear(); Console.WriteLine("1 Xuat thong tin cac san pham la Vang"); Console.WriteLine("2 Xuat thong tin cac san pham cua hang PNJ"); Console.WriteLine("3 Sap xep cac san pham co gia tang"); Console.WriteLine("4 Xuat thong tin cac san pham co gia tu X den Y"); } Console.WriteLine("5 Xuat thong tin cac san pham co ma Z"); Console.WriteLine("6 Tinh tong tien theo tung loai san pham"); Console.Write("Ban chon so nao: "); iChon = int.Parse(Console.ReadLine()); switch (iChon) { case 1: { XuatTTVang(ds, n, dem); break; } case 2: { XuatSPHangPNJ(ds, n, dem); break; } case 3: { SapXepGiaTang(ds, n, dem); break; } case 4: { XuatSPCoGiaTuXDenY(ds, n, dem); break; } case 5: { XuatSPCoMaZ(ds, n, dem); break; } case 6: { TinhTongTienTheoSanPham(ds, n, dem); break; } } Console.ReadKey(); Console.WriteLine("Ban muon tiep tuc khong? 1,Co, 2.Khong "); tL = int.Parse(Console.ReadLine()); } while (tL != 2);

Ngày đăng: 11/10/2023, 13:47

Tài liệu cùng người dùng

Tài liệu liên quan