0412 ์ž๋ฐ” 4์ผ์ฐจ ๐Ÿ• ์ค‘์ฒฉ ๋ฐ˜๋ณต๋ฌธ, ์ž…๋ ฅ(SCANNER), ๋ฐฐ์—ด

๋‹ค ์€ยท2024๋…„ 4์›” 12์ผ

JAVA

๋ชฉ๋ก ๋ณด๊ธฐ
4/14

1. ์ค‘์ฒฉ ๋ฐ˜๋ณต๋ฌธ

๋ฐ˜๋ณต์„ ์—ฌ๋Ÿฌ๋ฒˆ ๋ฐ˜๋ณตํ•  ๋•Œ์—๋Š” ๋ฐ˜๋ณต๋ฌธ ์•ˆ์— ๋ฐ˜๋ณต๋ฌธ์„, ์ฆ‰ ์ค‘์ฒฉ ๋ฐ˜๋ณต๋ฌธ์„ ๋งŒ๋“ค์–ด์„œ ์‚ฌ์šฉํ•œ๋‹ค. 3์ผ์ฐจ์—๋„ ์„ค๋ช…ํ–ˆ๋“ฏ, ๋‚ด๋ถ€ ๋ฐ˜๋ณต๋ฌธ, ์™ธ๋ถ€ ๋ฐ˜๋ณต๋ฌธ์ด ์žˆ์–ด '์™ธ๋ถ€ ๋ฐ˜๋ณต๋ฌธ ํšŸ์ˆ˜ * ๋‚ด๋ถ€ ๋ฐ˜๋ณต๋ฌธ ํšŸ์ˆ˜' ๋งŒํผ ๋ฐ˜๋ณต์ด ์ง„ํ–‰ ๋œ๋‹ค. ์•„๋ž˜์˜ ์ฝ”๋“œ๋Š” ์ค‘์ฒฉ while๋ฌธ๊ณผ ์ค‘์ฒฉ for๋ฌธ์˜ ์˜ˆ์‹œ์ด๋‹ค.

์ค‘์ฒฉ WHILE

// ๐Ÿ•1๋ถ€ํ„ฐ 3๊นŒ์ง€ 10๋ฒˆ ๋ฐ˜๋ณตํ•˜์—ฌ ์ถœ๋ ฅ
public class Main{
    public static void main(String[] args){
        int i = 1;
        while(i <= 10) {
            i++;
            int j = 1;
            while(j <= 3) {
                System.out.println(j);
                j++;
            }
        }
    }
}

// ๐Ÿ• ์ค‘์ฒฉ while๋ฌธ ์‚ฌ์šฉํ•˜์—ฌ ๊ณ„๋‹จ์‹ ์ถœ๋ ฅ
public class Main{
    public static void main(String[] args){
        int i = 1;
        while(i <= 5) {
            int j = 1;
            i++;
            while(j < i) {
                System.out.print("*");
                j++;
            }
            System.out.println();
        }
    }
}

// ๐Ÿ• ์ค‘์ฒฉ for๋ฌธ ์‚ฌ์šฉํ•˜์—ฌ ๊ณ„๋‹จ์‹ ์ถœ๋ ฅ
public class Main{
    public static void main(String[] args){
        for(int i = 1; i <= 5; i++) {
            for(int j = 1; j <= i; j++) {   // i๊ฐ€ ๋ฐ˜๋ณต๋˜๋Š” ํšŸ์ˆ˜ ๋งŒํผ j๊ฐ€ ์ถœ๋ ฅ๋˜์–ด์•ผ ํ•˜๊ธฐ ๋•Œ๋ฌธ์—
                                            // i <= j ๋ผ๋Š” ์กฐ๊ฑด์‹์„ ๋งŒ๋“ค์–ด์คŒ
                System.out.print("*");		// *์€ ์ค„๋ฐ”๊ฟˆ ๋˜์ง€ ์•Š๊ณ  ๋‚˜์™€์•ผ ํ•˜๊ธฐ ๋•Œ๋ฌธ์— print
            }
            System.out.println();
        }
    }
}

๊ฒฐ๊ณผ: 
*
**
***
****
*****

// ๐Ÿ• ์ค‘์ฒฉ while๋ฌธ ์‚ฌ์šฉํ•˜์—ฌ ์—ญ๊ณ„๋‹จ ์ถœ๋ ฅ
public class Main{
    public static void main(String[] args){
        int i = 5;
        while(i >= 1) {
            int j = 5;
            i--;
            while(j > i) {					
                System.out.print("*");
                j--;
            }
            System.out.println();
        }
    }
}

// ๐Ÿ• ์ค‘์ฒฉ for๋ฌธ ์‚ฌ์šฉํ•˜์—ฌ ์—ญ๊ณ„๋‹จ ์ถœ๋ ฅ
public class Main{
    public static void main(String[] args){
        for(int i = 5; i >= 1; i --) {
            for(int j = 1; j <= i; j++) {
                System.out.print("*");
            }
            System.out.println();
        }
    }
}

๊ฒฐ๊ณผ: 
*****
****
***
**
*

2. ์ž…๋ ฅ(SCANNER)

ํ”„๋กœ๊ทธ๋ž˜๋ฐ์„ ํ•˜๋‹ค๊ฐ€ ์–ด๋–ค ์ˆ˜๋‚˜ ๋ฌธ์ž๋ฅผ ์ž…๋ ฅ ๋ฐ›์•„์„œ ์ถœ๋ ฅํ•˜๊ณ  ์‹ถ์„ ๋•Œ์—๋Š” scanner๋ฅผ ์‚ฌ์šฉํ•ด์ฃผ๋ฉด ๋œ๋‹ค. Scanner ํด๋ž˜์Šค๋Š” ๊ฐ€์žฅ ๋Œ€ํ‘œ์ ์ธ ์ž…๋ ฅ ๋ฐฉ๋ฒ•์ด๋‹ค. ๋ฐ์ดํ„ฐ ํƒ€์ž…์— ๋”ฐ๋ผ ์ž…๋ ฅํ•˜๋Š” ์ฝ”๋“œ๋Š” ์กฐ๊ธˆ์”ฉ ๋‹ฌ๋ผ์ง€๋ฉฐ(nextLine(), next(), nextInt() ๋“ฑ), ํด๋ž˜์Šค๋Š” import ํ•ด์ฃผ์–ด์•ผ ํ•œ๋‹ค.

๐Ÿ‘ฝ ์ •์ˆ˜ ์ž…๋ ฅ ๋ฐ›์•„์„œ ์ถœ๋ ฅํ•˜๊ธฐ

import java.util.Scanner;

class Main{
    public static void main(String[] args){
        Scanner scanner = new Scanner(System.in);

        System.out.println("์ •์ˆ˜๋ฅผ ์ž…๋ ฅํ•˜์„ธ์š”: ");

        int num = scanner.nextInt();
        
        System.out.println("์ž…๋ ฅํ•˜์‹  ์ •์ˆ˜๋Š” " + num + "์ž…๋‹ˆ๋‹ค.");
    }
}

๐Ÿ‘ฝ ๋ฌธ์ž ์ž…๋ ฅ ๋ฐ›์•„์„œ ์ถœ๋ ฅํ•˜๊ธฐ

// ๐Ÿ• ๋ฌธ์ž 1๊ฐœ ์ž…๋ ฅ ๋ฐ›์•„์„œ ์ถœ๋ ฅ(char)
import java.util.Scanner;

public class Main{
    public static void main(String[] args){
        Scanner scanner = new Scanner(System.in);
        System.out.print("๋ฌธ์ž 1๊ฐœ ์ž…๋ ฅ: ");

        char x = (char) scanner.next().charAt(0);
        System.out.println("์ž…๋ ฅํ•œ ๋ฌธ์ž: " + x);
    }
}
- ์ž๋ฐ”์˜ scanner์—๋Š” char์„ ์ž…๋ ฅ ๋ฐ›์ง€ ์•Š์œผ๋ฏ€๋กœ string์œผ๋กœ ์ž…๋ ฅ ๋ฐ›์•„์„œ scanner.next().charAt(0)์œผ๋กœ ์ฒซ๋ฒˆ์งธ ๋ฌธ์ž๋ฅผ ๋Œ€์ž…ํ•ด์คŒ

// ๐Ÿ• ๋ฌธ์ž์—ด ์ž…๋ ฅ ๋ฐ›์•„์„œ ์ถœ๋ ฅ
import java.util.Scanner;

public class Main{
    public static <str> void main(String[] args){
        str s;
        Scanner scanner = new Scanner(System.in);

        System.out.println("๋ฌธ์ž๋ฅผ ์ž…๋ ฅํ•˜์„ธ์š”: ");
        s = (str) scanner.nextLine();
        System.out.println("์ž…๋ ฅํ•œ ๋ฌธ์ž: " + s);
    }
}

// ๐Ÿ• ์ •์ˆ˜์™€ ๋ฌธ์ž์—ด์„ ๊ฐ™์ด ์ž…๋ ฅ ๋ฐ›์•„์„œ ์ถœ๋ ฅ
import java.util.Scanner;

public class Main{
    public static <str> void main(String[] args){
        str s;
        int i;

        Scanner scanner1 = new Scanner(System.in);
        Scanner scanner2 = new Scanner(System.in);

        System.out.println("์ด๋ฆ„์„ ์ž…๋ ฅํ•˜์„ธ์š”: ");
        s = (str) scanner1.next();
        System.out.println("๋‚˜์ด๋ฅผ ์ž…๋ ฅํ•˜์„ธ์š”: ");
        i = scanner2.nextInt();

        System.out.println("์ด๋ฆ„: " + s);
        System.out.println("๋‚˜์ด: " + i);
    }
}

3. ๋ฐฐ์—ด

์•ž์„œ ํ•˜๋‚˜์˜ ๋ณ€์ˆ˜์—๋Š” ์–ด๋– ํ•œ ๋ฐ์ดํ„ฐ ํƒ€์ž…์ด๋“  ๋”ฑ 1๊ฐœ๋งŒ ์ €์žฅํ•  ์ˆ˜ ์žˆ๋Š” ํŠน์ • ๊ณต๊ฐ„์„ ๋งํ•œ ๊ฒƒ์ด์—ˆ๋‹ค. ๊ทธ๋ ‡๋‹ค๋ฉด ํ•˜๋‚˜์˜ ๋ณ€์ˆ˜์— ๋ฐ์ดํ„ฐ๋ฅผ ์—ฌ๋Ÿฌ ๊ฐœ ์ €์žฅํ•ด์•ผ ํ•  ๋•Œ์—๋Š” ์–ด๋–ป๊ฒŒ ํ•ด์•ผํ• ๊นŒ? ๋ฐ”๋กœ '๋ฐฐ์—ด'์— ์ €์žฅํ•ด์•ผ ํ•œ๋‹ค. ๋ฐฐ์—ด์€ ๋ณ€์ˆ˜์™€ ๋‹ฌ๋ฆฌ ์—ฌ๋Ÿฌ ๊ฐœ์˜ ๋ฐ์ดํ„ฐ๋ฅผ ์ €์žฅํ•  ์ˆ˜ ์žˆ๋Š” ์ €์žฅ ๊ณต๊ฐ„์„ ๋งํ•œ๋‹ค. ์ •์ˆ˜ ๋ฐฐ์—ด์„ ์˜ˆ๋กœ ๋“ค์–ด๋ณด์ž.

๐Ÿ‘ฝ ์ •์ˆ˜ ๋ฐฐ์—ด ์„ ์–ธ ๊ธฐ๋ณธ ๊ตฌ์กฐ

	 int    arr[]   =   new   int [๋ฐฐ์—ด ํฌ๊ธฐ];
//  ์ž๋ฃŒํ˜•  ๋ฐฐ์—ด์ด๋ฆ„      ์‹ ๊ทœ  ์ž๋ฃŒํ˜• 

์œ„์™€ ๊ฐ™์ด ์„ ์–ธํ•ด์ค€ ๋ฐฐ์—ด์€ ๋ฐฐ์—ด์˜ ํฌ๊ธฐ๋งŒ ์ •ํ•ด์ ธ์žˆ๊ณ  ๋ฐ์ดํ„ฐ ๊ฐ’์€ ์•„๋ฌด๊ฒƒ๋„ ๋“ค์–ด์žˆ์ง€ ์•Š์€ ๋นˆ ๋ฐฐ์—ด์ด๋‹ค. ์ด์ œ ๋ฐฐ์—ด์— ํฌ๊ธฐ์™€ ๋ฐ์ดํ„ฐํ˜•์— ๋งž๊ฒŒ ๋ฐฐ์—ด์— ๋Œ€์ž…ํ•ด์ฃผ๋ฉด ๋œ๋‹ค.

๐Ÿ‘ฝ ์ •์ˆ˜ ๋ฐฐ์—ด ๋Œ€์ž…

int arr[] = new int[5];		// ๋ฐฐ์—ด์˜ ํฌ๊ธฐ๊ฐ€ 5์ธ ์ •์ˆ˜ ๋ฐฐ์—ด arr์— 
arr[0] = 1;					// 1๋ถ€ํ„ฐ 5๊นŒ์ง€ ๋Œ€์ž…
arr[1] = 2;
arr[2] = 3;
arr[3] = 4;
arr[4] = 5;

// ๐Ÿ• ํ•œ ๋ฒˆ์— ๋Œ€์ž…
arr[] = {1, 2, 3, 4, 5};

๋ฐฐ์—ด์—๋Š” ์ง€์ •ํ•œ ๋ฐฐ์—ด ํฌ๊ธฐ๋งŒํผ์˜ ์ €์žฅ ๊ณต๊ฐ„์„ ์ƒ์„ฑํ•˜๊ณ  ๊ทธ ์ €์žฅ ๊ณต๊ฐ„์ด ์žˆ๋Š” ์œ„์น˜ ๊ฐ’(์ฃผ์†Œ)์„ arr ๋ณ€์ˆ˜์— ๋Œ€์ž…ํ•œ๋‹ค. arr ๋ณ€์ˆ˜๋Š” ๊ทธ ์ฃผ์†Œ ๊ฐ’์„ ํ†ตํ•ด์„œ ๋ฐฐ์—ด์— ์ ‘๊ทผํ•˜์—ฌ ๋ฐ์ดํ„ฐ๋ฅผ ๊ฐ€์ ธ์˜จ๋‹ค.

๐Ÿ‘ฝ ๋ฐฐ์—ด ์•ˆ์— ์žˆ๋Š” ๊ฐ’์˜ ์ดํ•ฉ๊ณผ ํ‰๊ท 

public class Main {
    public static void main(String[] args) {
        int[] arr = new int[5];			// ๋ฐฐ์—ด ํฌ๊ธฐ๊ฐ€ 5์ธ ๋ฐฐ์—ด ์ƒ์„ฑ
        int k = 10;
        int hap = 0;

        for(int i = 1; i < 5; i++) {	
            k += 10;					// ๋ฐฐ์—ด์— 10๋ถ€ํ„ฐ 50๊นŒ์ง€ 10์”ฉ ๋Š˜์–ด๋‚˜๋„๋ก ๋Œ€์ž…
            arr[i] = k;
            hap += arr[i];				// hap ๋ณ€์ˆ˜์— ๋ณ€์ˆ˜์˜ ์ดํ•ฉ ๋Œ€์ž…
        }
        int avg = hap / arr.length;		// avg ๋ณ€์ˆ˜์— ์ดํ•ฉ/๋ณ€์ˆ˜๊ธธ์ด ๋Œ€์ž…
        System.out.println("๋ฐฐ์—ด arr์˜ ์ดํ•ฉ: " + hap);
        System.out.println("๋ฐฐ์—ด arr์˜ ํ‰๊ท : " + avg);
    }
}
โœ… ๋ฐฐ์—ด arr์˜ ์ดํ•ฉ: 140
๋ฐฐ์—ด arr์˜ ํ‰๊ท : 28

0๊ฐœ์˜ ๋Œ“๊ธ€