728x90
반응형
조건문과 반복문 문제 1
1부터 20까지의 정수 중에서 2 또는 3의 배수가 아닌 수의 총합을 구하라.
* 풀이 과정 *
① 우선 for문으로 반복될 때마다 i (정수타입 변수) 값에 1부터 20까지의 정수 값이 저장되어 내려가게 한다.
② 1 ~ 20의 정수가 순서대로 if문의 조건식에 들어가게 된다.
③ 총합을 저장할 변수(sum)를 잡고 if문의 조건식이 참이면 sum에 i의 값을 더해준다.
④ 전체 for문 바깥에 print문으로 sum을 출력한다.
결과 값 → 73
* 주의할 점 *
▶ int sum 변수를 선언할 때 반드시 for문 위쪽에 위치시켜야 한다.
(for문 안쪽을 위치로 하면 반복할 때마다 초기화가 되기 때문에)
▶ '배수' 라는 단어가 나오면 %(나머지 연산자)를 이용해 나누어 떨어지는지 확인
' i % 2 != 0 ' → "i를 2로 나누었을 때 나누어 떨어지지 않는다." → "2의 배수가 아니다."
▶ 2 또는 3의 배수가 아닌 수 → 2의 배수와 3의배수가 둘 다 아닌 수
'또는' 이라는 단어가 들어갔다고 해서 무조건 ||(OR)을 사용하는 것이 아니다.
2의 배수와 3의배수가 둘 다 아닌 수가 참이기 때문에 &&(AND)를 사용한다. → i % 2 != 0 && i % 3 != 0
728x90
반응형
'Programming > Java' 카테고리의 다른 글
[Java] 자료구조 - 스택(Stack)이란 무엇인가? (스택 개념, 연산, 구현) (0) | 2021.03.22 |
---|---|
[Java] 객체지향 언어, 클래스와 객체, 인스턴스, 객체의 생성과 사용, 객체 배열 (0) | 2020.11.11 |
[Java] 배열(Array) - String 배열, String 클래스, String 메서드, 2차원 배열 (1) | 2020.04.23 |
[Java] 배열(Array) - 선언과 생성, 인덱스, 길이(.length), 초기화, 출력 (0) | 2020.04.19 |
[Java] 배열의 활용 (총합과 평균, 최대값과 최소값, 섞기) (0) | 2020.04.18 |