[문제]
10보다 작은 자연수 중에서 3 또는 5의 배수는 3, 5, 6, 9 이고, 이것을 모두 더하면 23입니다.
1000보다 작은 자연수 중에서 3 또는 5의 배수를 모두 더하면 얼마일까요?
[풀이]
total = 0
for(i in 1:999){
if((i%%3==0)|(i%%5==0)){
total = total + i
}
i = i + 1
}
total
결과를 나타낼 total 값을 0으로 설정하였다.
for 반복문을 사용해서 i를 1부터 999까지 반복한다.
그 안에서 if 조건문으로 i가 3 혹은 5의 배수인지 확인한 후 조건에 부합하면 total에 더해주었다.
반복이 끝나면 total 값을 반환한다.
처음 했던 실수가, 저렇게 3과 5의 배수를 다 더하고 그 다음 15(3과 5의 공통 배수)를 빼려고 했던 건데, 생각해보니 애초에 3 '혹은' 5의 배수를 더한 것이었으니 중복되지 않아서 굳이 15의 배수를 뺄 필요가 없었다.
R을 사용한 첫 알고리즘 문제풀이 끝!
[문제 출처] https://euler.synap.co.kr/