관리 메뉴

Frog is cry

배열(Day13) 본문

JAVA/국비수업

배열(Day13)

Frog is cry 2020. 7. 17. 13:56
package day14;

public class day14_01 {
	public static void main(String[] args) {
		int[] score = {83, 90, 87};
		
		System.out.println("scores[0] : " + score[0]);
		System.out.println("scores[1] : " + score[1]);
		System.out.println("scores[2] : " + score[2]);
		
//		System.out.println("scores[3] : " + score[3]); [3]이 없기에 오류
		
//		score = null;
		score[2] = 100;
		
		System.out.println("scores[2] ==> " + score[2]);
		
		int sum = 0;
		for (int i = 0; i < score.length; i++) {
			sum += score[i];
		}
		System.out.println("총합 : " + sum);
		double avg = (double) sum / 3;
		System.out.println("평균 : " + avg);
		
	}
}
package day14;

public class day14_02 {
	public static void main(String[] args) {
		
		int total = 0;
//		int[] num = {92, 89, 88, 91, 78, 89, 76, 99, 84, 91}; 		// 한줄로 선언
		
		int[] num = null;											//두줄로 선언
		num = new int[] {92, 89, 88, 91, 78, 89, 76, 99, 84, 91};	//두줄로 선언
		
		for (int i = 0; i < num.length; i++) {
			total += num[i];
			
			if(i%2 != 0) {
				System.out.println(num[i]);
			}
		}
		
		double avg = 0;
		avg = (double)total / num.length;
		

		System.out.println("총점 : " + total);
		System.out.println("평균 : " + avg);
		
	}
}
package day14;

public class day14_03 {
	public static void main(String[] args) {
		int[] scores;
		scores = new int[] {83,90,100};
		int sum1 = 0;
		for (int i = 0; i < 3; i++) {
			sum1 += scores[i];
		}
		System.out.println("총합 : " + sum1);
		//
		int sum2 = add( new int[] {83,90,87}); // ( new int[] {83,90,87} ) 괄호 안의 부분을 인수라고 함;
		// add() 메소드를 호출할 떄 전달 할 값이라는 의미임
		// add() 메소드를 호출하여 리턴된 총합(sum)을 sum2변수에 할당하는 개념임

		System.out.println("총합2 :" + sum2);
		System.out.println();
	}
	// --> 이곳부터 main 메소드가 아니고 add() 메소드입니다.
	public static int add(int[] num) { // add() 메소드의 선언 : (int[] scores) : 매개변수라고함
		int sum = 0;
		for (int i = 0; i < 3; i++) {
			sum += num[i];
			System.out.println("add() 메소드에서 scores[" + 1 +"] -->  " + num[i]);		
		}
		return sum;
		
	}
}
package day14;

public class day14_04 {
	public static void main(String[] args) {
		int[] arr1 = new int[3];
		for (int i = 0; i < 3; i++) {
			System.out.println("arr1[" + i +"] : " + arr1[i]);
		}
		arr1[0] = 10;
		arr1[1] = 20;
		arr1[2] = 30;
		for (int i = 0; i < 3; i++) {
			System.out.println();
		}
		
	}
}
package day14;

public class day14_05 {
	public static void main(String[] args) {
		int[] scores = {83,90,87};
		
		int sum = 0;
		for (int i = 0; i < scores.length; i++) {
			sum = scores[i];
		}
		
		System.out.println("총합 : " + sum);
		
		double avg = (double) sum / scores.length;
		System.out.println("평균 :" + avg);
	}
}
package day14;

public class day14_06 {
	public static void main(String[] args) {
		int[] num = new int[10];
		
		for (int i = 0; i < num.length; i++) {
			num[i] = num.length -i;
			System.out.println(num[i]);
		}
		
	}
}
package day14;

public class day14_07 {
	public static void main(String[] args) {
		int[] [] score = {
				{100,100,100}, // 0 01 02
				{20,20,20},	   // 10 11 12
				{30,30,30},	   // 20 21 22
				{40,40,40},	   // 30 31 32
				{50,50,50}	   // 40 41 42
				};
		
		for (int i = 0; i < score.length; i++) {
			for (int j = 0; j < score[i].length; j++) {
				System.out.println("score["+i+"] ["+j+"] "+score[i][j]);
			}
		}
		
//		for (int i = 0; i < score.length; i++) {
//			for (int j = 0; j < score[i].length; j++) {
//				score[i][j] = 10;
//				System.out.println("score["+i+"] ["+j+"] );
//			}
//		}
	}
}
package day14;

public class day14_08 {
	// 배열예제 향상된 for문
	public static void main(String[] args) {
	
		String[] array = {"a", "b", "c", "d", "e", "f",
						"g", "h", "i", "j", "k", "l", "m",
						"n", "o", "p", "q", "r", "s", "t",
						"u", "v", "w", "x", "y", "z"};
		for (String obj : array) {	
									// 향상된 for문의 문법입니다. 카운터 변수와 증감식을 사용하지 않습니다.
									// 괄호 안에 콜론 :을 써야 합니다.
									// array 배열의 요소를 차례로 obj변수에 할당하여
									// 종속문장을 수행한다는 의미입니다.
									// array 배열에서 더이상 꺼내올 요소가 없으면 for의 종속문장을 탈출합니다.
			
			System.out.println("_" + obj);	// _ 는 언더바입니다.
			
		}
		
	}
}

package day14;

public class day14_Ex01 {
	
//	강의예제를 참조하여 코딩하세요.
//
//	10개의 정수형 요소를 갖는 num 배열을 선언하세요.
//
//	배열명 선언 방법은 타입[] 변수; 형식을 사용하세요
//
//	각 요소에는 0번부터 차례로
//
//	92, 89, 88, 91, 78, 89, 76, 99, 84, 91
//
//	의 값을 갖도록 하세요.
//
//
//
//	10개의 값은 점수의 개념입니다.
//
//	총점과 평균을 구하세요. 이 때 반드시 for문을 사용해야 합니다.
	
	public static void main(String[] args) {
		int total = 0;
		
		int[] num = {92, 89, 88, 91, 78, 89, 76, 99, 84, 91};
		for (int i = 0; i < num.length; i++) {
			System.out.print(num[i] + " ");
			total += num[i];
		}
		System.out.println();
		
		double avg = 0;
		avg = (double)total / num.length;
		
		System.out.println("총점 : " + total);
		System.out.println("평균 : " + avg);
		
		
	}
}
package day14;

public class day14_Ex02 {
	public static void main(String[] args) {

		int total = 0;
		
		int[] num = {92, 89, 88, 91, 78, 89, 76, 99, 84, 91};
		for (int i = 0; i < num.length; i++) {
			total += num[i];
			
			if(i%2 != 0) {
				System.out.println(num[i]);
			}
		}
		
		double avg = 0;
		avg = (double)total / num.length;
		
		
		System.out.println("총점 : " + total);
		System.out.println("평균 : " + avg);
		
	}
}
package day14;

public class day14_Ex03 {
	public static void main(String[] args) {
	
		 int[] scores;
	        scores = new int[] {83,90,87};
	        int sum1 = 0;
	        for (int i = 0 ; i < 3 ; i++) {
	            sum1 += scores[i];
	        }
	        System.out.println("총합 : " + sum1 );
	        //
	        //   int sum2 = add( new int[] {83,90,87});  // ( new int[] {83,90,87} ) 괄호 안의 부분을 인수라고 함 : 
	            // add()메소드를 호출할때 전달 할 값이라는 의미임.
	            // add() 메소드를 호출하여 리턴된 총합(sum)을 sum2변수에 할당하는 개념임
	        //
	        // 위 3 줄을 이렇게 바꾸는 것도 가능해요.
	        int sum2 = add(scores); // 수업시간의 예제에 비해 변경된 부분입니다. 확인하세요.
	        //
	        System.out.println("제곱의 합 : " + sum2);
	        System.out.println();
	    }
	    //---> 이곳부터 main 메소드가 아니고 add()메소드입니다.
	    public static int add(int[] num) {  // add() 매소드의 선언 : (int[] scores) : 매개변수라고함 
	        int sum = 0;
	        for ( int i = 0 ; i<3 ; i++) {
	            sum = sum + (num[i] * num[i]);
	            System.out.println("add() 메소드에서 scores[" + i +"] -->" + num[i]);
	        }
	        return sum;
	        
	}
}
package day14;

public class day14_Ex04 {
	public static void main(String[] args) {
		int[] arr = {10, 20, 30, 40, 50};
		int sum = 0;
			
		for (int i : arr) {
			sum += i;
		}
		
		System.out.println("sum=" + sum);
		
	}
}
package day14;

public class day14_Ex05 {
	public static void main(String[] args) {
		
	int[][] array = {
				{95, 86},
				{83, 92, 96},
				{78, 83, 93, 87, 88}		
				};
	int sum = 0;
	double avg = 0;
	int cnt = 0;
	
	for (int i = 0; i < array.length; i++) {
		for (int j = 0; j < array[i].length; j++) {
			sum += array[i][j];
			cnt++;
		}
	}
	avg = (double)sum/cnt;
	System.out.println("sum : " + sum);
	System.out.println("avg : " + avg);
	}
}
package day07;

import java.util.Scanner;

public class day07_01 {
	// 1동
	// 1호, 2호, 3호

	public static void main(String[] args) {
		int[] ho = new int[3]; // new를 사용하면 0으로 초기화가 됨
		Scanner sc = new Scanner(System.in);
		int total = 0;
		double avg = 0;
		
		//평균월세 총월세 구하기
		
		for (int i = 0; i < ho.length; i++) {
			System.out.println(i+1 + "호 월세를 입력하세요(단위 : 만원)");
			ho[i] = sc.nextInt();
			total += ho[i];
		}

		System.out.println("총 월세 : " + total);
		avg = Double.parseDouble(String.format("%.2f", (double)total / ho.length));
		// 
		System.out.println("평균 월세 : " + avg);
	}
}	
	
package day07;

import java.util.Scanner;

public class day07_02 {
	// ArShop : ZARA
	// 강남점, 코엑스점, 명동점 
	// 단위는 100만원 단위로 입력받기
	// 단, 평균 매출액은 만원단위까지 출력(소수점 둘째)
	
	public static void main(String[] args) {
	
	Scanner sc = new Scanner(System.in);

	int[] arIncome = new int[3]; 
	String[] arName = {"강남점", "코엑스점", "명동점"}; 
	int total = 0;
	double avg = 0;
	
	for (int i = 0; i < arIncome.length; i++) {
		System.out.println(arName[i] + "매출액을 입력하세요(단위 : 백만원)");
		arIncome[i] = sc.nextInt();
		total += arIncome[i];
	}
	
	avg = (double)total / arIncome.length;
			
	System.out.println("평균 매출액 :" + avg);
	
	

	
	
	}
}

package day07;

import javax.swing.JOptionPane;

public class day07_04 {
	public static void main(String[] args) {
	// ArrShop
	// 나이키
	// 강남점, 홍대점, 명동점
	// 성인, 키즈	
	// 강남점K, 홍대점K, 명동점K
	// 강남점A, 홍대점A, 명동점A
	
	int [][] arrIncome = new int[2][3];
//	int total = 0;
//	int avg = 0;
	int [] arASum = new int[2];
	int [] arBSum = new int[3];
	int sum = 0;
	
	double[] aAvg = new double[2];
	double[] bAVg = new double[3];
	double avg = 0.0;
	
	int rLength = arrIncome.length;
	int cLength = arrIncome[0].length;
	
//	int cnt = 0;
	String [][] arrName = {
			{"강남점A", "홍대점A", "신촌점A"},
			{"강남점K", "홍대점K", "신촌점K"},
	};
	
	String inputMsg = "매출액을 입력하세요";
	
	for (int i = 0; i < rLength; i++) {
		for (int j = 0; j < cLength; j++) {	// 한번접근해서 들어가야함 arrIncome[0]
			arrIncome[i][j] = Integer.parseInt(JOptionPane.showInputDialog(arrName[i][j] + inputMsg));
//			total += arrIncome[i][j];
//			cnt++;
			arASum[i] += arrIncome[i][j];
			arBSum[j] += arrIncome[i][j];
			sum += arrIncome[i][j];	
		}
	}	
		for (int i = 0; i < aAvg.length; i++) {
		aAvg[i] = (double)arBSum.length;
		}
		
		for (int i = 0; i < bAVg.length; i++) {
			bAVg[i] = (double)arBSum.length;
		}
		
		avg = Double.parseDouble(String.format("%.2f", (double)sum / (rLength*cLength)));
		System.out.println("총 매출액 : " + sum);
		System.out.println("평균 매출액 : " + avg);
	
	
	
  }
}
package day15;

// 배열복사-예제 : 얕은 복사와 깊은 복사
public class day_15_01 {
	
	public static void main(String[] args) {
		int[] arr_a = {1,2,3,4};
		int[] arr_b = arr_a;	// 얕은 복사가 일어남.
		
		System.out.print("arr_b : ");
		for (int i = 0; i < arr_b.length; i++) {
			System.out.print(arr_b[i] + " ");
		}
		System.out.println();
		
		arr_a[0] = 99;
			
		System.out.printf("arr_b : ");
		for (int i = 0; i < arr_b.length; i++) {
			System.out.printf(arr_b[i] + " " );
		}
	}
}
package day15;

public class day_15_02 {
	public static void main(String[] args) {
		int[] oldIntArray = {1,2,3};	// 인덱스가 3개인 정수형 배열 선언
		int[] newIntArray = new int[5];	// 요소가 5개인 정수열 배열을 선언가지만 함
		
		System.out.print("oldIntArray : ");
		
		for (int i = 0; i < oldIntArray.length; i++) {
			System.out.print(oldIntArray[i] + " ");
		}
		System.out.println();
		
		for (int i = 0; i < oldIntArray.length; i++) {
			newIntArray[i] = oldIntArray[i];
		}
		System.out.print("newIntArray : ");
		for (int i = 0; i < newIntArray.length; i++) {
			System.out.print(newIntArray[i] + " ");
		}

		
	}
}
package day15;

public class day_15_03 {
	public static void main(String[] args) {
		String[] oldStrArray = {"java", "array", "copy"}; // 요소가 3인 문자열형 배열을 선언한 후,
														  // java, array, copy로 초기화함
		String[] newStrArray = new String[5];			  // 요소의 갯수가 5인 무자열형 배열을 선언만 함.
		
		System.out.print("oldStrArray : ");
		for (int i = 0; i < oldStrArray.length; i++) {
			System.out.print(oldStrArray[i] + " ");
		}
		System.out.println();
		
		System.arraycopy(oldStrArray, 0, newStrArray, 0, oldStrArray.length);
		System.out.print("newStrArray : ");
		
		for (int i = 0; i < newStrArray.length; i++) {
			System.out.print(newStrArray[i] + " ");
		}
		
	}
}

package day15;

public class day15_Ex01 {
	public static void main(String[] args) {
	
	// 얕은복사 예제
		
	int[] num1 = {92, 88, 91, 78, 89, 76, 99, 84, 91};
	int[] num2 = num1;
	
	System.out.print("num1 : ");
	for (int i = 0; i < num1.length; i++) {
		num2[i] = num1[i];
		System.out.print(num1[i] + " ");
	}
	System.out.println();
	
	num1[0] = 95;
	
	System.out.print("num2 : ");
	for (int i = 0; i < num1.length; i++) {
		System.out.print(num2[i] + " ");
	}
	}
}
package day15;

public class day15_Ex02 {
	public static void main(String[] args) {
	int[] num1 = {92, 89, 88, 91, 78, 89, 76, 99, 84, 91};
	int[] num2 = new int[10];
	
		
	System.out.print("num1 : ");
	for (int i = 0; i < num1.length; i++) {
		System.out.print(num1[i] + " ");
	}
	
	System.out.println();
	
	System.arraycopy(num1,0, num2,0, num2.length);
	// num1 0번부터 num2 0까지복사, num2.length의 개수만큼
	
	num1[0] = 55;
	
	System.out.print("num1-2 : ");
	for (int i = 0; i < num2.length; i++) {
		System.out.print(num1[i] + " ");
	}
	
	System.out.println("");
	
	System.out.print("num2 : ");
	for (int i = 0; i < num2.length; i++) {
		System.out.print(num2[i] + " ");
	}
  }
}
package day15;

public class day15_Ex03 {
	public static void main(String[] args) {
		
	int max = 0;
	
	int[] arr1 = {21,5,13,48,32};

	for (int i = 0; i < arr1.length; i++) {
		if (max < arr1[i]) {
			
			max = arr1[i];
		}
	}
	System.out.println("최대값 : " + max);
	
	
	}
}

 

'JAVA > 국비수업' 카테고리의 다른 글

클래스(Day15)  (0) 2020.07.20
배열2(Day14)  (0) 2020.07.17
문자열 주소비교(Day12)  (0) 2020.07.15
스캐너(Day12)  (0) 2020.07.15
실습문제(Day11)  (0) 2020.07.14
Comments