-
사원의 이름과 월급 입력 받아 연봉, 월급 인상분 출력자바 Java/자바로 알고리즘 2023. 1. 12. 11:43
사원 3명의 아이디는 각각 1~3
3명의 이름과 월급 정보는 입력 받아 배열에 저장하여 모든 내용 출력
월급의 인상률은 아이디 순으로 각각 10, 20, 30%
<Employee.java>
public class Employee { private int id; private String name; private int salary; public Employee(int id, String name, int salary) { super(); this.id = id; this.name = name; this.salary = salary; } public int getId() { return id; } public void setId(int id) { this.id = id; } public String getName() { return name; } public void setName(String name) { this.name = name; } public int getSalary() { return salary; } public void setSalary(int salary) { this.salary = salary; } public int getAnnualSalary() { return getSalary()*12; } // 월급인상분 = 월급 * 10/100, 월급 * 20/100, 월급 * 30/100 public int raiseSalary(int percent) { return getSalary()*percent/100; } public String toString() { return String.format("Employee[id = %d, name = %s, salary = %d]" ,id, name, salary); } }<EmployeeEx.java>
import java.util.Scanner; public class EmployeeEx { public static void main(String[] args) { Scanner scanner = new Scanner(System.in); // 사원 정보 입력할 배열 생성 Employee[] empArr = new Employee[3]; // 배열에 정보 집어넣기 // i가 0부터 시작하므로 empArr[i-1] (배열의 인덱스는 0부터 시작하므로) for (int i = 1; i <= empArr.length; i++) { int id = scanner.nextInt(); String name = scanner.next(); int salary = scanner.nextInt(); // 생성자 이용 empArr[i-1] = new Employee(id, name, salary); } // 출력 for (int i = 1; i <= empArr.length; i++) { System.out.printf("%s의 연봉은 %d, 월급 인상분은 %d\n" , empArr[i-1].toString() , empArr[i-1].getAnnualSalary() , empArr[i-1].raiseSalary(i*10)); } } }// 입력 1 코난 25000000 2 장미 30000000 3 미란 40000000 // 출력 Employee[id = 1, name = 코난, salary = 25000000]의 연봉은 300000000, 월급 인상분은 2500000 Employee[id = 2, name = 장미, salary = 30000000]의 연봉은 360000000, 월급 인상분은 6000000 Employee[id = 3, name = 미란, salary = 40000000]의 연봉은 480000000, 월급 인상분은 12000000'자바 Java > 자바로 알고리즘' 카테고리의 다른 글
[프로그래머스] 연속된 수의 합 (0) 2023.04.10 입력 받은 초가 몇 시간, 몇 분, 몇 초에 해당하는지 계산 (0) 2023.01.09 행맨 게임 (Hangman Game) (0) 2022.01.06 피라미드 만들기 (0) 2021.11.24