<문제 제시>
정수 num1과 num2가 매개변수로 주어질 때, num1을 num2로 나눈 값에 1,000을 곱한 후 정수 부분을 return 하도록 soltuion 함수를 완성해주세요.
<예시 입출력>
<문제 해결 과정>
간단한 문제로 보였지만, 형변환을 하는 문법적인 형식이 다소 헷갈렸다.
float(num1 / num2)로 한다거나 int(float(num1 / num2)) 로 한다거나,
Float, Int 등으로 바꿔써본다거나 모두 문법적으로 어긋나는 요소였다.
( ) 괄호 안 넣는 것을 인지하지 못한채 생긴 불상사였다.
추가로 주어진 int answer = 부분을 double answer = 처럼 임의로 변경해 입력시키다가
return 부분에서 (int)answer 로 반환해주어도 된다는 사실을 깨달을 수 있었다.
주어진 코드 안에서만 해결하려다보니 생긴 문제였다.
<전체코드>
// #. 두 수의 나눗셈
/* <문제설명>
정수 num1과 num2가 매개변수로 주어질 때,
num1을 num2로 나눈 값에 1,000을 곱한 후
정수 부분을 return 하도록 soltuion 함수를 완성해주세요.
*/
public class compare_num {
public static int solution(int num1, int num2) {
double answer = (double) num1 / num2 * 1000;
return (int)answer;
}
}
프로그래머스에서 알고리즘 문제 해결 시 기본적으로 주어지는 코드를 다르게 변형 후
반환할때 원하는 값으로 변환해주면 된다는 사실도 알 수 있었다.
String to Integer, Integer to String 등 다른 형변환은 다뤄봤지만 정수 -> 실수, 실수 -> 정수 등은 생소했었는데,
이번 문제를 통해 극복할 수 있었다.
문제링크)
https://school.programmers.co.kr/learn/courses/30/lessons/120806
'Algorithms > 프로그래머스' 카테고리의 다른 글
[프로그래머스] '피자 나눠 먹기 (1)' - Java (0) | 2022.12.19 |
---|---|
[프로그래머스] '배열의 평균값' - Java (0) | 2022.12.19 |
[프로그래머스] '종이 자르기' - Java (0) | 2022.12.18 |
[프로그래머스] '배열 자르기' - Java (0) | 2022.12.17 |
[프로그래머스] '잘라서 배열로 저장하기' - Java (0) | 2022.12.17 |