아무리 쉬운 코드도 리뷰 합니다.
문제 설명
자연수 n이 입력으로 주어졌을 때 만약 n이 짝수이면 "n is even"을,
홀수이면 "n is odd"를 출력하는 코드를 작성해 보세요.
제한사항
1 ≤ n ≤ 1,000
입출력 예
입력 #1
100
출력 #1
100 is even
입력 #2
1
출력 #2
1 is odd
----------------------------------------------------------------------
import java.util.Scanner;
public class Solution {
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
int n = sc.nextInt();
if(n >= 1 && n <= 1000){
if(n % 2 == 1){
System.out.println(n + " is odd");
}else{
System.out.println(n + " is even");
}
}
}
}
----------------------------------------------------------------------
public class Solution {
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
int n = sc.nextInt();
if(n >= 1 && n <= 1000){
System.out.print(n + " is "+(n % 2 == 0 ? "even" : "odd"));
}
}
}
설명
- 첫번째 : 제한사항에 맞추어 if를 통해 a값이 1보다 크거나 같으면서 1000보다 작거나 같은지 확인한다.
- 첫번째 : 홀수, 짝수를 알기 위해 n에 저장된 값을 2로 나누어 1이 남으면 if문 {}안에가 작동하고 짝수이면 else{} 부분이 작동한다.
- 두번째 : 제한사항에 맞추어 if를 통해 a값이 1보다 크거나 같으면서 1000보다 작거나 같은지 확인한다.
- 두번째 : 삼항연사자를 통해 n에 저장된 값이 2로 나누어 0이라면 even, 1이라면 odd 를 출력한다.
첫 번째 코드
- 장점: 조건문을 명확히 분리하여 odd와 even을 처리하는 부분이 명확히 구분되어 있다.
- 단점: 두 개의 System.out.println 호출로 인해 코드가 좀 더 길어진다.
두 번째 코드
- 장점: 삼항 연산자를 사용하여 한 줄로 간결하게 작성되어 있습니다. 코드가 더 짧고 읽기 쉬운 경향이 있다.
- 단점: 삼항 연산자를 사용하여 간결성을 추구했지만, 모든 사람이 삼항 연산자에 익숙하지 않을 수 있다. 따라서 코드가 복잡해 보일 수도 있다.
중요코드
- n & 2 == 1 : 숫자를 2로 나누어 홀수, 짝수를 구분하는 코드이다.
- n % 2 == 0 ? "even" : "odd" : 삼항연사자를 이용해 원하는 글자를 출력한다.
실행결과
정확성 테스트
테스트 1 〉 | 통과 (159.65ms, 63.9MB) |
테스트 2 〉 | 통과 (181.61ms, 65.5MB) |
테스트 3 〉 | 통과 (225.28ms, 63.2MB) |
테스트 4 〉 | 통과 (213.64ms, 66.4MB) |
채점 결과
정확성: 100.0
합계: 100.0 / 100.0
'ALGORITHM > 코딩 기초 트레이닝' 카테고리의 다른 글
[프로그래머스]문자열 섞기 (0) | 2024.07.26 |
---|---|
[프로그래머스]문자열 겹쳐쓰기 (0) | 2024.07.26 |
[프로그래머스]문자열 돌리기 (0) | 2024.07.26 |
[프로그래머스]문자열 붙여서 출력하기 (0) | 2024.07.26 |
[프로그래머스] 덧셈식 출력하기 (0) | 2024.07.26 |