✅ 문제

일한 시간을 입력받아 총 임금을 계산하는 시급계산기
✅ 추론 과정
- 두 가지 경우로 나뉘어 출력 값 계산식이 달라짐(조건문 if )
1. 8시간 이하로 일한 경우 : 임금 = 일한 시간 * 5000
2. 8시간 초과 근무한 경우 : a+b
2-1 8시간 일한 임금 a = 8시간 * 5000
2.2 8시간 초과분 b = (일한 시간 - 8 ) * (5000 * 1.5 )
✅ 코드
import java.util.Scanner;
public class Main {
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
System.out.print("일한 시간을 입력하세요 : ");
int time = sc.nextInt();
int overTimePay = (int) ((8 * 5000) + (time - 8) * (5000 * 1.5)); // 8시간 초과한 임금
String total = "총 임금은 : ";
if (time <= 8) {
System.out.println(total + time * 5000 + "원 입니다.");
} else if (time > 8) {
System.out.println(total + overTimePay + "원 입니다");
}
sc.close();
}
}
8시간을 초과한 경우는 계산식이 약간 길어진다.
int형 변수 overTimePay를 선언해서 8시간 초과 임금을 계산해서 변수에 담아 주었다.
8시간 초과한 임금 계산식 = (8시간*기본시급) + (일한시간-8시간)*(기본시급*1.5)
여기서 계산식을 int형(정수형)으로 캐스팅(형변환) 해 준 이유는
보통 임금은 소수점이 아닌 정수형으로 계산되기 때문이다.
'코딩테스트 > JavaFestival(스마트인재개발원)' 카테고리의 다른 글
| [자바페스티벌] 6번 - (77*1) + (76*2) + (75*3) + ... + (1*77) 계산해서 결과 출력하기 (0) | 2024.03.20 |
|---|---|
| [자바페스티벌] 1번 - 몸무게 입력 받고 감량 목표 달성 시 축하 메세지 띄우기 (0) | 2024.03.20 |
| [자바페스티벌] 5번 - 별찍기 행 개수를 입력 받아 삼각형출력하기 (1) | 2024.03.20 |
| [자바페스티벌] 4번 - 거스름돈을 입력받아 내어줘야 하는 지폐의 개수 출력하기 (0) | 2024.03.20 |
| [자바페스티벌] 3번 - 1-2+3-4+...+99-100 를 계산하여 답 출력하기 (1) | 2024.03.15 |