반응형
[프로그래머스] Java 코딩테스트 연습 - 간단한 식 계산하기
문제 출처
https://school.programmers.co.kr/learn/courses/30/lessons/181865
문제
문자열 binomial이 매개변수로 주어집니다. binomial은 "a op b" 형태의 이항식이고 a와 b는 음이 아닌 정수, op는 '+', '-', '*' 중 하나입니다. 주어진 식을 계산한 정수를 return하는 solution함수를 작성해 주세요.
풀이
split()메서드로 binomial를 공백을 기준으로 나눠서 배열로 만들었다.
a op a 요렇게 세 덩어리 로 이루어져 있다고 하니 배열에서 인덱스는 각각 [0] [1] [2]일 것이다.
그래서 if문으로 연산자가 위치한 [1]이 +, -, * 인지 구분하도록 했다.
식을 계산할 때는 배열이 String이기 때문에 Integer.valueOf() 메서드로 [0]번째와 [2]번째 배열을 정수값으로 반환해서 계산하도록 했다.
소스코드
class Solution {
public int solution(String binomial) {
int answer = 0;
String[] splitArr = binomial.split(" ");
if (splitArr[1].equals("+")) {
answer = Integer.valueOf(splitArr[0]) + Integer.valueOf(splitArr[2]);
} else if (splitArr[1].equals("-")) {
answer = Integer.valueOf(splitArr[0]) - Integer.valueOf(splitArr[2]);
} else if (splitArr[1]. equals("*")) {
answer = Integer.valueOf(splitArr[0]) * Integer.valueOf(splitArr[2]);
}
return answer;
}
}
반응형
'코딩테스트연습 > [프로그래머스] Java' 카테고리의 다른 글
[프로그래머스] Java 코딩테스트 연습 - 배열 비교하기 (2) | 2023.06.25 |
---|---|
[프로그래머스] Java 코딩테스트 연습 - rny_string (0) | 2023.06.24 |
[프로그래머스] Java 코딩테스트 연습 - 문자열 잘라서 정렬하기 (2) | 2023.06.24 |
[프로그래머스] Java 코딩테스트 연습 - x 사이의 개수 (2) | 2023.06.24 |
[프로그래머스] Java 코딩테스트 연습 - ad 제거하기 (2) | 2023.06.24 |