
* 문제 풀이
class Solution {
public int solution(int price) {
int answer = 0;
if(price >= 500000){
answer = (int)(price * 0.8);
} else if(price >=300000){
answer = (int)(price * 0.9);
} else if(price >= 100000){
answer = (int) (price * 0.95);
} else {
return price; //10만원 미만일 때 리턴
}
return answer;
}
}
class Solution {
public int solution(int price) {
int answer = 0;
if(price >= 100000){
answer = price * 0.95;
} else if(price >=300000){
answer = price * 0.90;
} else if(price >= 500000){
answer = price * 0.80;
}
return answer;
}
}
첨에 이렇게 했는데 오류 떠서 뭐냐? 뭐가 문제냐... 했는데 int 안 넣어줬음...
int 넣고 했는데도 오류가 난다 왜냐! if else 순서 때문이었다.
30만도 50만도 첫 if에서 적용된 후 다음 조건으로 넘어가지 않기 때문에 이후 조건이 실행되지 않는다.
그러므로 큰 금액부터 순서 바꿔서 해줘야 한다.
* 프로그래머스 다른 풀이
class Solution {
public int solution(int price) {
int answer = 0;
if(price>=500000) return (int)(price*0.8);
if(price>=300000) return (int)(price*0.9);
if(price>=100000) return (int)(price*0.95);
return price;
}
}
'코테 > 프로그래머스 JAVA Lv.0' 카테고리의 다른 글
| [프로그래머스/java/Lv.0] 세균 증식 (0) | 2024.10.20 |
|---|---|
| [프로그래머스/java/Lv.0] 공배수 (0) | 2024.10.17 |
| [프로그래머스/java/Lv.0] 아이스 아메리카노 (0) | 2024.10.16 |
| [프로그래머스/java/Lv.0] n의 배수 (0) | 2024.09.29 |
| [프로그래머스/java/Lv.0] 분수의 덧셈 (유클리드 호제법) (0) | 2024.09.29 |