프로그래머스- 20

김정현·2023년 4월 3일
0

프로그래머스

목록 보기
20/46

혹시 제곱근을 찾을수 있나 검색해봤는데

sqrt(value)      //Double형에서만

이 함수를 사용하면 제곱근을 구할 수 있다.
근데 그래도 어떤식으로 해결해야할지 감이 잡히질 않는다. 애초에 위 코드는 Double형에서만 적용되고 제곱수가 아니더라도 그냥 소숫점으로 계산해 버리기 때문에 활용가능할지 의문이 들었다. 그래서 그냥 for문을 이용하기로 했다.

실패했다.

/Solution/Sources/Solution/Solution.swift:9:1: error: missing return in a function expected to return 'Int'
}
^

이런 오류가 발생했다. return 타입은 1 , 2로 Int형인데 왜 오류가 발생하는지 모르겠다.

질문한 결과 우선 위 코드는 실행이 되도 if문 안에서 결론이 나기 때문에 i에 1이 대입되는 순간 그냥 2 로 종료가 된다.
질문 결과 좋은 해답은

위 코드 였다.
for문으로 1 - 1000 까지 순환할 필요도 없다.
삼항대입자를 사용하였고 n을 더블형으로, 그것을 sqrt로 제곱근으로 변환, 그리고 다시 Int형으로 변환하여 리턴 타입에 맞췄다.

0개의 댓글