SMALL
📚 기초 문제 풀이
✅ 1. 홀수/짝수 판별하기
문제 설명:
정수를 입력받아 홀수인지 짝수인지 판별하세요.
- 힌트: % 연산자를 사용합니다.
예제 코드:
import java.util.Scanner;
public class OddEvenChecker {
public static void main(String[] args) {
Scanner scanner = new Scanner(System.in);
System.out.print("정수를 입력하세요: ");
int number = scanner.nextInt();
if (number % 2 == 0) {
System.out.println(number + "는 짝수입니다.");
} else {
System.out.println(number + "는 홀수입니다.");
}
scanner.close();
}
}
✅ 2. 학점 계산하기
문제 설명:
점수를 입력받아 다음 기준에 따라 학점을 출력하세요.
- 90점 이상: A
- 80점 이상: B
- 70점 이상: C
- 60점 이상: D
- 60점 미만: F
예제 코드:
import java.util.Scanner;
public class GradeCalculator {
public static void main(String[] args) {
Scanner scanner = new Scanner(System.in);
System.out.print("시험 점수를 입력하세요: ");
int score = scanner.nextInt();
if (score >= 90) {
System.out.println("학점: A");
} else if (score >= 80) {
System.out.println("학점: B");
} else if (score >= 70) {
System.out.println("학점: C");
} else if (score >= 60) {
System.out.println("학점: D");
} else {
System.out.println("학점: F");
}
scanner.close();
}
}
✅ 3. 양수, 음수, 0 판별하기
문제 설명:
숫자를 입력받아 양수, 음수, 0인지 판별하세요.
예제 코드:
import java.util.Scanner;
public class NumberTypeChecker {
public static void main(String[] args) {
Scanner scanner = new Scanner(System.in);
System.out.print("숫자를 입력하세요: ");
int number = scanner.nextInt();
if (number > 0) {
System.out.println(number + "는 양수입니다.");
} else if (number < 0) {
System.out.println(number + "는 음수입니다.");
} else {
System.out.println(number + "는 0입니다.");
}
scanner.close();
}
}
✅ 4. 최댓값 찾기
문제 설명:
세 개의 숫자를 입력받아 가장 큰 숫자를 출력하세요.
예제 코드:
import java.util.Scanner;
public class MaxValueFinder {
public static void main(String[] args) {
Scanner scanner = new Scanner(System.in);
System.out.print("첫 번째 숫자를 입력하세요: ");
int num1 = scanner.nextInt();
System.out.print("두 번째 숫자를 입력하세요: ");
int num2 = scanner.nextInt();
System.out.print("세 번째 숫자를 입력하세요: ");
int num3 = scanner.nextInt();
int max = num1;
if (num2 > max) {
max = num2;
}
if (num3 > max) {
max = num3;
}
System.out.println("가장 큰 숫자는: " + max);
scanner.close();
}
}
📚 중급 문제 풀이
✅ 5. 윤년 판별하기
문제 설명:
연도를 입력받아 윤년인지 판별합니다.
- 조건:
- 연도가 4의 배수이면서 100의 배수가 아니면 윤년입니다.
- 또는 연도가 400의 배수이면 윤년입니다.
예제 코드:
import java.util.Scanner;
public class LeapYearChecker {
public static void main(String[] args) {
Scanner scanner = new Scanner(System.in);
System.out.print("연도를 입력하세요: ");
int year = scanner.nextInt();
if ((year % 4 == 0 && year % 100 != 0) || (year % 400 == 0)) {
System.out.println(year + "년은 윤년입니다.");
} else {
System.out.println(year + "년은 윤년이 아닙니다.");
}
scanner.close();
}
}
✅ 설명:
- year % 4 == 0: 4의 배수인지 확인
- year % 100 != 0: 100의 배수가 아닌지 확인
- year % 400 == 0: 400의 배수인지 확인
✅ 6. BMI 계산기
문제 설명:
키(cm)와 몸무게(kg)를 입력받아 BMI를 계산하고 결과를 출력합니다.
- BMI 공식: BMI = 몸무게(kg) / (키(m) × 키(m))
예제 코드:
import java.util.Scanner;
public class BMICalculator {
public static void main(String[] args) {
Scanner scanner = new Scanner(System.in);
System.out.print("키(cm)를 입력하세요: ");
double height = scanner.nextDouble();
System.out.print("몸무게(kg)를 입력하세요: ");
double weight = scanner.nextDouble();
double bmi = weight / ((height / 100) * (height / 100));
System.out.printf("BMI: %.2f\n", bmi);
if (bmi < 18.5) {
System.out.println("저체중");
} else if (bmi < 25) {
System.out.println("정상");
} else if (bmi < 30) {
System.out.println("과체중");
} else {
System.out.println("비만");
}
scanner.close();
}
}
✅ 설명:
- 키를 cm에서 m로 변환: (height / 100)
- BMI 공식 적용 후 조건에 따라 출력
✅ 7. 숫자에 따른 요일 출력하기
문제 설명:
1~7 사이의 숫자를 입력받아 요일을 출력합니다.
- 힌트: switch-case 사용
예제 코드:
import java.util.Scanner;
public class DayOfWeek {
public static void main(String[] args) {
Scanner scanner = new Scanner(System.in);
System.out.print("숫자(1-7)를 입력하세요: ");
int day = scanner.nextInt();
switch (day) {
case 1: System.out.println("월요일"); break;
case 2: System.out.println("화요일"); break;
case 3: System.out.println("수요일"); break;
case 4: System.out.println("목요일"); break;
case 5: System.out.println("금요일"); break;
case 6: System.out.println("토요일"); break;
case 7: System.out.println("일요일"); break;
default: System.out.println("잘못된 입력입니다.");
}
scanner.close();
}
}
✅ 8. 로그인 검사
문제 설명:
아이디와 비밀번호를 입력받아 일치 여부를 확인합니다.
예제 코드:
import java.util.Scanner;
public class LoginChecker {
public static void main(String[] args) {
Scanner scanner = new Scanner(System.in);
String USERNAME = "admin";
String PASSWORD = "1234";
System.out.print("아이디를 입력하세요: ");
String username = scanner.next();
System.out.print("비밀번호를 입력하세요: ");
String password = scanner.next();
if (username.equals(USERNAME) && password.equals(PASSWORD)) {
System.out.println("로그인 성공");
} else if (username.equals(USERNAME)) {
System.out.println("비밀번호가 틀렸습니다.");
} else {
System.out.println("로그인 실패");
}
scanner.close();
}
}
✅ 9. 성적 등급과 장학금
문제: 점수를 입력받고 다음 기준에 따라 장학금 지급 여부를 출력하세요.
- 90점 이상: "A등급, 장학금 100만 원 지급"
- 80점 이상: "B등급, 장학금 50만 원 지급"
- 70점 이상: "C등급, 장학금 없음"
- 70점 미만: "불합격"
예제 코드:
import java.util.Scanner;
public class ScholarshipCalculator {
public static void main(String[] args) {
Scanner scanner = new Scanner(System.in);
System.out.print("점수를 입력하세요: ");
int score = scanner.nextInt();
if (score >= 90) {
System.out.println("A등급, 장학금 100만 원 지급");
} else if (score >= 80) {
System.out.println("B등급, 장학금 50만 원 지급");
} else if (score >= 70) {
System.out.println("C등급, 장학금 없음");
} else {
System.out.println("불합격");
}
scanner.close();
}
}
✅ 10. 계산기 프로그램
- 문제: 두 숫자와 연산자(+, -, *, /)를 입력받아 연산 결과를 출력하세요.
- 조건:
- 연산자가 올바르지 않으면 "잘못된 연산자입니다." 출력
- / 연산 시, 두 번째 숫자가 0이면 "0으로 나눌 수 없습니다." 출력
import java.util.Scanner;
public class Calculator {
public static void main(String[] args) {
Scanner scanner = new Scanner(System.in);
System.out.print("첫 번째 숫자: ");
double num1 = scanner.nextDouble();
System.out.print("두 번째 숫자: ");
double num2 = scanner.nextDouble();
System.out.print("연산자 (+, -, *, /): ");
char operator = scanner.next().charAt(0);
switch (operator) {
case '+': System.out.println("결과: " + (num1 + num2)); break;
case '-': System.out.println("결과: " + (num1 - num2)); break;
case '*': System.out.println("결과: " + (num1 * num2)); break;
case '/':
if (num2 == 0) System.out.println("0으로 나눌 수 없습니다.");
else System.out.println("결과: " + (num1 / num2));
break;
default: System.out.println("잘못된 연산자입니다.");
}
scanner.close();
}
}
✅ 11. 계절 판별하기
월(1~12)을 입력받아 해당하는 계절을 출력합니다.
- 조건:
- 3~5월: 봄
- 6~8월: 여름
- 9~11월: 가을
- 12, 1, 2월: 겨울
✅ 예제 코드:
import java.util.Scanner;
public class SeasonChecker {
public static void main(String[] args) {
Scanner scanner = new Scanner(System.in);
System.out.print("월(1~12)을 입력하세요: ");
int month = scanner.nextInt();
if (month >= 3 && month <= 5) {
System.out.println("봄입니다.");
} else if (month >= 6 && month <= 8) {
System.out.println("여름입니다.");
} else if (month >= 9 && month <= 11) {
System.out.println("가을입니다.");
} else if (month == 12 || month == 1 || month == 2) {
System.out.println("겨울입니다.");
} else {
System.out.println("잘못된 입력입니다. 1~12 사이의 숫자를 입력하세요.");
}
scanner.close();
}
}
✅ 12. 삼각형 판별하기
세 변의 길이를 입력받아 삼각형이 될 수 있는지 판별합니다.
- 조건:
- 두 변의 합이 나머지 한 변보다 커야 합니다.
✅ 예제 코드:
import java.util.Scanner;
public class TriangleChecker {
public static void main(String[] args) {
Scanner scanner = new Scanner(System.in);
System.out.print("첫 번째 변의 길이를 입력하세요: ");
int side1 = scanner.nextInt();
System.out.print("두 번째 변의 길이를 입력하세요: ");
int side2 = scanner.nextInt();
System.out.print("세 번째 변의 길이를 입력하세요: ");
int side3 = scanner.nextInt();
if (side1 + side2 > side3 && side1 + side3 > side2 && side2 + side3 > side1) {
System.out.println("삼각형을 만들 수 있습니다.");
} else {
System.out.println("삼각형을 만들 수 없습니다.");
}
scanner.close();
}
}
LIST
'자바 (JAVA)' 카테고리의 다른 글
📚 Java 12+ Switch Expression(표현식) 사용법 (0) | 2025.01.07 |
---|---|
📚 자바 반복문 문제 풀이 (0) | 2025.01.06 |
📚JAVA 12강: JDBC (Java Database Connectivity) (0) | 2025.01.03 |
📚 JAVA 11강: 스레드(Thread) (1) | 2025.01.03 |
📚 JAVA 10강: 파일 입출력 (File I/O) (0) | 2025.01.03 |