Quan li sach
java
8 days ago
3.8 kB
7
Indexable
Never
import java.util.Scanner; class SachGiaoKhoa { String maSach, boSach, tenSach, nhaXuatBan; int donGia, soLuong, thanhTien; public SachGiaoKhoa() { } public SachGiaoKhoa(String maSach, String boSach, String tenSach, String nhaXuatBan, int donGia, int soLuong) { this.maSach = maSach; this.boSach = boSach; this.tenSach = tenSach; this.nhaXuatBan = nhaXuatBan; this.donGia = donGia; this.soLuong = soLuong; this.thanhTien = donGia * soLuong; } public void nhapThongTin() { Scanner scanner = new Scanner(System.in); System.out.print("Nhập mã sách: "); maSach = scanner.nextLine(); System.out.print("Nhập bộ sách (Cánh diều/Kết nối tri thức/Chân trời sáng tạo): "); boSach = scanner.nextLine(); while (!boSach.equals("Cánh diều") && !boSach.equals("Kết nối tri thức") && !boSach.equals("Chân trời sáng tạo")) { System.out.print("Bộ sách không hợp lệ. Vui lòng nhập lại: "); boSach = scanner.nextLine(); } System.out.print("Nhập tên sách: "); tenSach = scanner.nextLine(); System.out.print("Nhập nhà xuất bản (Nhà xuất bản giáo dục Việt Nam/Nhà xuất bản đại học sư phạm): "); nhaXuatBan = scanner.nextLine(); while (!nhaXuatBan.equals("Nhà xuất bản giáo dục Việt Nam") && !nhaXuatBan.equals("Nhà xuất bản đại học sư phạm")) { System.out.print("Nhà xuất bản không hợp lệ. Vui lòng nhập lại: "); nhaXuatBan = scanner.nextLine(); } System.out.print("Nhập đơn giá (phải lớn hơn 15000đ): "); donGia = scanner.nextInt(); while (donGia <= 15000) { System.out.print("Đơn giá phải lớn hơn 15000đ. Vui lòng nhập lại: "); donGia = scanner.nextInt(); } System.out.print("Nhập số lượng: "); soLuong = scanner.nextInt(); thanhTien = donGia * soLuong; } public void xuatThongTin() { System.out.println("Mã sách: " + maSach); System.out.println("Bộ sách: " + boSach); System.out.println("Tên sách: " + tenSach); System.out.println("Nhà xuất bản: " + nhaXuatBan); System.out.println("Đơn giá: " + donGia); System.out.println("Số lượng: " + soLuong); System.out.println("Thành tiền: " + thanhTien); } } public class QuanLySachGiaoKhoa { public static void main(String[] args) { Scanner scanner = new Scanner(System.in); SachGiaoKhoa[] dsSach = new SachGiaoKhoa[100]; int n; System.out.print("Nhập số lượng sách: "); n = scanner.nextInt(); for (int i = 0; i < n; i++) { dsSach[i] = new SachGiaoKhoa(); System.out.println("Nhập thông tin quyển sách thứ " + (i + 1)); dsSach[i].nhapThongTin(); } System.out.println("\nDanh sách sách vừa nhập:"); for (int i = 0; i < n; i++) { dsSach[i].xuatThongTin(); System.out.println(); } System.out.print("\nNhập tên sách cần tìm: "); String tenCanTim = scanner.nextLine(); boolean timThay = false; for (int i = 0; i < n; i++) { if (dsSach[i].tenSach.equals(tenCanTim)) { dsSach[i].xuatThongTin(); timThay = true; } } if (!timThay) { System.out.println("Không tìm thấy sách có tên " + tenCanTim); } for (int i = 0; i < n - 1; i++) { for (int j = i + 1; j < n; j++) { if (dsSach[i].donGia < dsSach[j].donGia) { SachGiaoKhoa temp = dsSach[i]; dsSach[i] = dsSach[j]; dsSach[j] = temp; } } } System.out.println("\nDanh sách sách sau khi sắp xếp:"); for (int i = 0; i < n; i++) { dsSach[i].xuatThongTin(); System.out.println(); } int viTriDGMax = 0; for (int i = 1; i < n; i++) { if (dsSach[i].donGia > dsSach[viTriDGMax].donGia) { viTriDGMax = i; } } System.out.println("\nThông tin sách có đơn giá cao nhất:"); dsSach[viTriDGMax].xuatThongTin(); } }