Xây dựng chương trình quản lý, nhập xuất danh sách công nhân và tính lương của họ dựa trên lương cơ bản và hệ số lương.
Xem thêm:
- Bài thực hành 5: Viết chương trình tính diện tích chu vi hình chữ nhật java
- Bài thực hành 7: chương trình quản lý điểm và đoạn thẳng trong không gian java
- Bài thực hành 9: viết chương trình tính lương cho công nhân java
1. Bài toán nhập xuất danh sách công nhân
Bài 6: Cho mô tả lớp Congnhan (công nhân) như sau: lcb: float, hsl: float, hoten:String, setHsl(h:float): void, getHsl():float, setHoten(ht:String):void, getHoten():String, tinhLuong():float.
Trong đó, phương thức tinhLuong hoạt động theo công thức:
Lương = lcb*hsl
Viết chương trình:
- Xây dựng lớp Congnhan theo mô tả trên.
- Cài đặt lương cơ bản của công nhân = 1150.
- Nhập danh sách n Công nhân (0<n<20).
- Hiện danh sách vừa nhập ra màn hình với thông tin mỗi công nhân gồm: Họ tên, Hệ số lương, Lương.
- Nhập vào một số thực S. Hiện danh sách họ tên các công nhân có lương >S.
2. Code
3.1 Lớp CongNhan
package bai6; import java.util.Scanner; public class CongNhan { float lcb=1150; float hsl; String hoten; public float getLcb() { return lcb; } public void setLcb(float lcb) { this.lcb = lcb; } public float getHsl() { return hsl; } public void setHsl(float hsl) { this.hsl = hsl; } public String getHoten() { return hoten; } public void setHoten(String hoten) { this.hoten = hoten; } public float tinhLuong(){ return lcb*hsl; } public void nhap(){ Scanner sc= new Scanner(System.in); System.out.println("Nhap ho va ten: "); hoten= sc.nextLine(); System.out.println("Nhap he so luong: "); hsl= sc.nextFloat(); System.out.print("\n-------------------------\n"); } public void hien(){ System.out.println("Ho ten: "+hoten+" "); System.out.println("He so luong: "+hsl+" "); System.out.println("Luong: "+tinhLuong()); System.out.println("------------------------"); } }
3.2 Lớp DanhSachCN
/* * To change this license header, choose License Headers in Project Properties. * To change this template file, choose Tools | Templates * and open the template in the editor. */ package bai6; import java.util.Scanner; /** * * @author admin */ public class DanhSachCN { CongNhan ds[]; int n,i; float s; public void nhapDS(){ Scanner sc = new Scanner(System.in); do { System.out.println("Nhap so luong cong nhan: "); n= sc.nextInt(); if(n<=0 || n>=20) { System.out.println("So luong cong nhan khong hop le!"); } } while (n<=0 || n>=20); ds=new CongNhan[n]; for(int i=0;i<n;i++){ ds[i]= new CongNhan(); ds[i].nhap(); } } public void xuatDS(){ for(int i=0;i<n;i++){ ds[i].hien(); } } public void CNcoluongS(){ int sum=0; Scanner sc = new Scanner(System.in); System.out.println("Nhap luong S: "); s= sc.nextFloat(); for(int i=0;i<n;i++){ if(ds[i].tinhLuong()>s){ sum=1; break; } } if(sum==0){ System.out.println("Khong co cong nhan nao co luong > S"); }else{ System.out.println("Danh sach ho ten cong nhan co luong > S la: "); for(int i=0;i<n;i++){ if(ds[i].tinhLuong()>s){ System.out.println(ds[i].getHoten()); } } } } }
3.3 Lớp main
package bai6; public class Bai6 { public static void main(String[] args) { DanhSachCN DSCN = new DanhSachCN(); DSCN.nhapDS(); DSCN.xuatDS(); DSCN.CNcoluongS(); } }
4. Kết quả
Trên đây là chương trình tính lương cho công nhân viết bằng ngôn ngữ java. Cảm ơn bạn đã tham khảo trên ttnguyen.net.