[Java] Nhập xuất danh sách công nhân kiểu mảng

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:

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ả

Viết chương trình tính lương cho công nhân java

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.

Nguyễn Tiến Trường

Mình viết về những điều nhỏ nhặt trong cuộc sống, Viết về câu chuyện những ngày không có em