Quản lý Thư viện Sách

, ,

Đề bài

Viết một chương trình quản lý thư viện sách bao gồm các lớp sau:

Lớp Book:

Thuộc tính:
title: tên sách.
author: tên tác giả.
isbn: mã ISBN của sách.
price: giá sách.
Phương thức:
displayInfo(): hiển thị thông tin của sách.
Lớp Library:

Thuộc tính:
books: mảng hoặc vector chứa danh sách các sách trong thư viện.
Phương thức:
addBook(Book book): thêm một cuốn sách vào thư viện.
removeBookByISBN(string isbn): xóa một cuốn sách khỏi thư viện dựa trên mã ISBN.
searchBookByTitle(string title): tìm kiếm sách theo tên và trả về danh sách các cuốn sách có tên tương tự.
displayAllBooks(): hiển thị thông tin tất cả các sách trong thư viện.
Yêu cầu:

Viết chương trình chính để thử nghiệm các phương thức trên.
Hiển thị menu cho người dùng lựa chọn các chức năng: thêm sách, xóa sách, tìm kiếm sách, và hiển thị tất cả các sách.

Cách làm

using System;
using System.Collections.Generic;

// Lop Book
public class Sach
{
    public string ten { get; set; }
    public string tacGia { get; set; }
    public string maISBN { get; set; }
    public double gia { get; set; }

    // Hien thi thong tin sach
    public void hienThiThongTin()
    {
        Console.WriteLine($"Ten: {ten}");
        Console.WriteLine($"Tac Gia: {tacGia}");
        Console.WriteLine($"ISBN: {maISBN}");
        Console.WriteLine($"Gia: {gia}");
    }
}

// Lop Library
public class ThuVien
{
    private List<Sach> danhSachSach = new List<Sach>();

    // Them sach vao thu vien
    public void themSach(Sach sach)
    {
        danhSachSach.Add(sach);
    }

    // Xoa sach theo ISBN
    public void xoaSachTheoISBN(string maISBN)
    {
        sach sachCanXoa = danhSachSach.Find(s => s.maISBN == maISBN);
        if (sachCanXoa != null)
        {
            danhSachSach.Remove(sachCanXoa);
        }
    }

    // Tim sach theo ten
    public List<Sach> timSachTheoTen(string ten)
    {
        return danhSachSach.FindAll(s => s.ten.Contains(ten));
    }

    // Hien thi thong tin tat ca sach
    public void hienThiTatCaSach()
    {
        foreach (Sach sach in danhSachSach)
        {
            sach.hienThiThongTin();
            Console.WriteLine();
        }
    }
}

class Program
{
    static void Main()
    {
        ThuVien thuVien = new ThuVien();

        // Them sach vao thu vien
        thuVien.themSach(new Sach { ten = "Sach A", tacGia = "Tac Gia A", maISBN = "123456", gia = 100 });
        thuVien.themSach(new Sach { ten = "Sach B", tacGia = "Tac Gia B", maISBN = "654321", gia = 150 });

        // Hien thi tat ca sach
        Console.WriteLine("Danh sach sach trong thu vien:");
        thuVien.hienThiTatCaSach();

        // Tim sach theo ten
        Console.WriteLine("Tim sach theo ten 'Sach A':");
        List<Sach> sachTimDuoc = thuVien.timSachTheoTen("Sach A");
        foreach (Sach sach in sachTimDuoc)
        {
            sach.hienThiThongTin();
            Console.WriteLine();
        }

        // Xoa sach theo ISBN
        thuVien.xoaSachTheoISBN("123456");

        // Hien thi tat ca sach sau khi xoa
        Console.WriteLine("Danh sach sach sau khi xoa:");
        thuVien.hienThiTatCaSach();
    }
}

Bình luận