문제
/* 홀수인 양의 정수를 입력 받아 입력 받은 크기 만큼의 정수형 배열을 할당하고
* 배열의 중간까지는 1부터 1씩 증가하여 오름차순으로 값을 넣고,
* 중간 이후부터 끝까지는 1씩 감소하여 내림차순으로 값 넣어 출력하세요
*
* 단, 홀수인 양의 정수를 입력하지 않은 경우에는 "양수 혹은 홀수만 입력해야 합니다."를 출력하세요
*
* -- 입력 예시 --
* 홀수인 양의 정수를 입력하세요 : 7
*
* -- 출력 예시 --
* 1 2 3 4 3 2 1
*
* -- 입력 예시 --
* 홀수인 양의 정수를 입력하세요 : 8
*
* -- 출력 예시 --
* 양수 혹은 홀수만 입력해야 합니다.
*/
작성한 코드
package com.greedy.section01.array.level03.hard;
import java.util.Scanner;
public class Application1 {
public static void main(String[] args) {
while(true) {
Scanner sc = new Scanner(System.in);
System.out.print("홀수인 양의 정수를 입력하세요 : ");
int num = sc.nextInt();
int count = num/2;
int[] arr = new int [num];
if(num > 0 && num%2 != 0) {
for (int i = 0; i < num; i++) {
if(i <= count) {
arr[i]=i+1;
}else {
arr[i]=count;
count--;
}
System.out.print(arr[i]+ " ");
}
if(arr.length == num) {
break;
}
}else {
System.out.println("양수 혹은 홀수만 입력해야 합니다.");
}
}
}
}
출력
홀수인 양의 정수를 입력하세요 : 7
1 2 3 4 3 2 1
'백엔드 과정 > Java' 카테고리의 다른 글
[Java] day15. 추상클래스/ 인터페이스 (0) | 2022.01.06 |
---|---|
[Java] day14. 다형성 (1) | 2022.01.05 |
[Java] day13. 상속 / 오버라이딩 (0) | 2022.01.04 |
[Java] day12. 객체배열 (0) | 2022.01.04 |
[Java] day11. 오버로딩 / Static (0) | 2022.01.03 |