▶ 문제
두 정수 a, b가 주어졌을 때 a와 b 사이에 속한 모든 정수의 합을
리턴하는 함수, solution을 완성하세요.
예를 들어 a = 3, b = 5인 경우, 3 + 4 + 5 = 12이므로 12를 리턴합니다.
★ 풀이방식
먼저 두 정수 a, b 사이에 속한 모든 정수의 합을 구하는 거라서 단순하게 for문을 이용.
a에서 b까지의 수를 sum이라는 변수에 한번씩 더해주는 방식을 사용했습니다.
▶ 소스코드
class Solution {
public long solution(int a, int b) {
long answer = 0;
int i = 0;
int sum = 0;
if(a<=b){
for(i=a; i<=b; i++;) {
sum +=i;
}
} else {
for(i=b; i<=a; i++;) {
sum +=i;
}
}
answer = (long) sum;
return answer;
}
}
- 실행 시 For문에서 오류가 발생했습니다. 원인이 뭘까~ 하고 생각해봤는데. 모르겠어서 양식을 처음부터 다시 봤습니다. 그랬더니 제가 사소한 실수를 한게 발견이 되었습니다. i++부분에 세미콜론을 추가해서 발생한 오류였던겁니다. 그래서 수정해주었습니다.
▶ 수정된 소스코드
class Solution {
public long solution(int a, int b) {
long answer = 0;
int i = 0;
int sum = 0;
if(a<=b){
for(i=a; i<=b; i++) {
sum +=i;
}
} else {
for(i=b; i<=a; i++) {
sum +=i;
}
}
answer = (long) sum;
return answer;
}
}
- 수정 후에 문제없이 작동되었습니다.
'JAVA 알고리즘' 카테고리의 다른 글
(JAVA) 실제 정수들의 합을 구하여 return 하도록 함수 완성하기 (0) | 2024.09.19 |
---|---|
(JAVA) 단어 s의 가운데 글자를 반환하는 함수 (1) | 2024.09.19 |
(JAVA) 콜라츠 추측 (0) | 2024.09.15 |
(JAVA) 자연수 x를 입력받아 x가 하샤드 수인지 아닌지 검사하는 함수 (0) | 2024.09.14 |
(JAVA) 각 자릿수를 큰것부터 작은 순으로 정렬한 정수 리턴 받기 (0) | 2024.09.14 |