목차
1. 2024.01.08 - [BackEnd/Java] - [JAVA] 조건문, 반복문을 이용한 문제 풀이 1(윤년 계산기)
2. 2024.01.08 - [BackEnd/Java] - [JAVA] 조건문, 반복문을 이용한 문제 풀이 2(주사위 게임)
3. 2024.01.08 - [BackEnd/Java] - [JAVA] 조건문, 반복문을 이용한 문제 풀이 3(배수 판별기)
4. 2024.01.08 - [BackEnd/Java] - [JAVA] 조건문, 반복문을 이용한 문제 풀이 4(청구 금액 계산기)
5. 2024.01.08 - [BackEnd/Java] - [JAVA] 조건문, 반복문을 이용한 문제 풀이 5(다독왕)
6. 2024.01.08 - [BackEnd/Java] - [JAVA] 조건문, 반복문을 이용한 문제 풀이 6(피보나치 수)
7. 2024.01.08 - [BackEnd/Java] - [JAVA] 조건문, 반복문을 이용한 문제 풀이 7(출입증)
8. 2024.01.08 - [BackEnd/Java] - [JAVA] 조건문, 반복문을 이용한 문제 풀이 8(방정식)
9. 2024.01.08 - [BackEnd/Java] - [JAVA] 조건문, 반복문을 이용한 문제 풀이 9(숫자 맞추기 게임)
10. 2024.01.08 - [BackEnd/Java] - [JAVA] 조건문, 반복문을 이용한 문제 풀이 10(만원의 행복)
11. 2024.01.08 - [BackEnd/Java] - [JAVA] 조건문, 반복문을 이용한 문제 풀이 11(은행)
자바의 조건문, 반복문을 이용한 문제 풀이를 진행해보겠습니다~
문제 1) 윤년 계산기
윤년은 연도가 4의 배수이면서, 100의 배수가 아닐 때 또는 400의 배수일 때이다.
예시) 2012년은 4의 배수이면서 100의 배수가 아니라서 윤년이다. 1900년은 100의 배수이고 400의 배수는 아니기 때문에 윤년이 아니다. 하지만, 2000년은 400의 배수이기 때문에 윤년이다.
👉 출력방법
1. 연도를 입력 받는다.
2. 입력받은 연도가 윤년이면 "윤년입니다."를 출력
3. 윤년이 아니라면 "윤년이 아닙니다."를 출력
👉 문제 풀이를 위한 Flow Chart
👉 문제 해답 코드
import java.util.Scanner; public class LeapYear { public static void main(String[] args) { Scanner sc = new Scanner(System.in); System.out.print("연도를 입력해 주세요 : "); int year = sc.nextInt(); if(year % 4 == 0) { if(year % 100 == 0) { if(year % 400 == 0) { System.out.println("윤년입니다."); } else { System.out.println("윤년이 아닙니다."); } } else { System.out.println("윤년입니다."); } } else { System.out.println("윤년이 아닙니다."); } sc.close(); } }
👉 코드 해설
1. 입력을 위한 java.util의 Scanner 클래스를 가져온다.
2. 인스턴스 생성 후 연도를 입력받고 변수 year에 저장한다.
3. 조건문을 통해 4의 배수인지 확인한다.
3-1) 참이라면, 윤년인지 확인을 위해 100의 배수인지 확인한다.
3-1-1) 참이라면, 400의 배수인지 확인한다.
3-1-1-1) 참이라면, 4, 100, 400의 배수이므로 윤년이다.
3-1-1-2) 거짓이라면, 4, 100의 배수이므로 윤년이 아니다.
3-1-2) 거짓이라면, 4의 배수이고 100의 배수가 아니므로 윤년이다.
3-2) 거짓이라면, 4의 배수가 아니므로 윤년이 아니다.
문제 풀이 시 위의 해설과 같이 if문을 3번을 사용해서 문제를 해결했습니다.
좀 더 간단하게 할 수 있는 방법이 확실하게 생각나지않아 위와 같이 해결했지만, 좀 더 간단하게 풀이할 수 있는 방법을 고민해봐야겠어요,,ㅎㅎ
혹시나 코드를 보고 좀 더 간단하게 풀이하실 수 있는 분들은 답글 부탁드려요!!!!
많은 분들의 피드백은 언제나 환영합니다! 많은 댓글 부탁드려요~~
'BackEnd > Java' 카테고리의 다른 글
[JAVA] 조건문, 반복문을 이용한 문제 풀이 3(배수 판별기) (0) | 2024.01.08 |
---|---|
[JAVA] 조건문, 반복문을 이용한 문제 풀이 2(주사위 게임) (0) | 2024.01.08 |
Eclipse 단축키 정리 (1) | 2024.01.04 |
[에러 해결 방법] java.lang.ArithmeticException (0) | 2023.08.07 |
[프로그래머스] 중복된 숫자 개수 찾기(for each, stream) (0) | 2023.08.07 |