728x90
반응형
package practice.array;
import java.util.Arrays;
import java.util.Scanner;
public class ArrayPractice {
public void method1() {
Scanner sc = new Scanner(System.in);
System.out.print("홀수인 양의 정수 입력 : ");
int[] arr = new int[sc.nextInt()];
//증가하는 for문
int num = 1;
for(int i=0; i<arr.length/2; i++) {
arr[i] = num++;
System.out.print(arr[i] + " ");
}
//감소하는 for문
for(int i=arr.length/2; i<arr.length; i++) {
arr[i] = num--;
System.out.print(arr[i] + " ");
}
}
}
package practice.array;
public class Run {
public static void main(String[] args) {
ArrayPractice ap = new ArrayPractice();
ap.method1();
}
}
//홀수인 양의 정수 입력 : 9
//1 2 3 4 5 4 3 2 1
💫 나의 풀이
package prac1.exam;
import java.util.Arrays;
import java.util.Scanner;
public class Blehye {
public void practice() {
Scanner sc = new Scanner(System.in);
System.out.print("홀수인 양의 정수 입력 : ");
int num = sc.nextInt(); //9
int up = ((num-1)/2)+1; //5
int a[] = new int[num];
for(int i=1; i<=up ; i++) {
a[i-1] = i;
}
for(int i=up; i<=num-1 ; i++) {
a[i] = num-i;
}
System.out.print("결과 : ");
for(int i=0; i<a.length; i++) {
System.out.print(a[i] + " ");
}
}
}
package practice.array;
import java.util.Arrays;
import java.util.Scanner;
public class ArrayPractice {
public void method2() {
Scanner sc = new Scanner(System.in);
System.out.print("배열의 크기 입력 : ");
String[] strArr = new String[sc.nextInt()];
sc.nextLine();
for(int i=0; i<strArr.length; i++) {
System.out.print(i+1+ "번째 문자열 : ");
strArr[i] = sc.nextLine();
}
while(true) {
System.out.print("더 값을 입력하시겠습니까? (Y/N) : ");
String select = sc.nextLine();
if(select.toUpperCase().equals("Y")) {
System.out.print("추가할 개수 : ");
int add = sc.nextInt();
String[] newArr = new String[strArr.length + add];
System.arraycopy(strArr, 0, newArr, 0, strArr.length);
sc.nextLine();
for(int i=strArr.length; i<newArr.length; i++) {
System.out.print(i+1 + "번째 문자열 : ");
newArr[i] = sc.nextLine();
}
strArr = newArr;
}else if(select.toUpperCase().equals("N")) {
System.out.print(Arrays.toString(strArr));
break;
}
}
}
}
package practice.array;
public class Run {
public static void main(String[] args) {
ArrayPractice ap = new ArrayPractice();
ap.method2();
}
}
/*
배열의 크기 입력 : 2
1번째 문자열 : welcome
2번째 문자열 : to
더 값을 입력하시겠습니까? (Y/N) : y
추가할 개수 : 1
3번째 문자열 : java
더 값을 입력하시겠습니까? (Y/N) : n
[welcome, to, java]
*/
💫 나의 풀이
package prac1.exam;
import java.util.Arrays;
import java.util.Scanner;
public class Blehye {
public void practice() {
Scanner sc = new Scanner(System.in);
System.out.print("배열의 크기 입력 : ");
int size = sc.nextInt();
String a[] = new String[size];
for(int i=0 ; i<a.length; i++) {
System.out.print(i+1 +"번째 문자열 : ");
a[i] = sc.next();
}
while(true) {
System.out.print("값을 더 입력하시겠습니까?(Y/N) : ");
char select = sc.next().charAt(0);
if(select == 'N' || select == 'n') {
break;
}
System.out.print("추가할 개수 : ");
int addSize = sc.nextInt();
String b[] = new String[addSize+size];
System.arraycopy(a, 0, b, 0, a.length);
for(int i=a.length; i<b.length ; i++) {
System.out.print(i+1 +"번째 문자열 : " );
b[i] = sc.next();
}
a=b;
}
System.out.println(Arrays.toString(a));
}
}
728x90
반응형
'Dev > Java' 카테고리의 다른 글
[JAVA기초(16)] 2차원 배열 실습(1), (2) (0) | 2022.05.08 |
---|---|
[JAVA기초(15)] 2차원 배열 (0) | 2022.05.08 |
[JAVA기초(13)] 배열 Array, 배열 복사 (0) | 2022.05.08 |
[JAVA기초(12)] 분기문 실습(1), (2) / next(), nextLine() 차이 / equals 메소드 (0) | 2022.05.08 |
[JAVA기초(11)] 분기문 - break, continue (0) | 2022.05.08 |