1. CLASS


import java.util.Scanner;


public class test_004 {
  private static Scanner sc;
 
  public static void main(String args[]) {
    sc = new Scanner(System.in);
  
    String innum;
    int min = 0;
    int max = 0;

 

    System.out.print("숫자를 입력 : ");
    innum = sc.nextLine();
  
    int num[] = new int[innum.length()];

  
    for (int i = 0; i < innum.length(); i++) {
      char no = innum.charAt(i); // 입력받은 3자리 문자열을 1자리씩 쪼갭니다.

 

      // char -> int 로 변경하면 아스키코드 값으로 바뀌기 때문에 48을 빼서 숫자를 맞춰줍니다.
      num[i] = no-48;  

  
      if (i == 0){
        min = num[i];  // for 1회전때는 무조건 첫번째 숫자를 min에 넣습니다.

        System.out.println("i가 " + i + " 일때  min의 값은 : " + min);
      }
      if (num[i] > max){  // for 1회전 이상일때 max 의 값과 비교해서 크면 max 에 값을 넣습니다.
        max = num[i];

        System.out.println("num[" + i + "] 이 " + num[i] + " 일때, max 보다 크므로  max의 값은 : " + max);
      }
      if (num[i] < min){ // for가 2회전 이상일때 min 의 값과 비교해서  작으면 min 에 값을 넣습니다.
        min = num[i];

        System.out.println("num[" + i + "] 이 " + num[i] + " 일때, min 보다 크므로  min의 값은 : " + min);
      }
    }


    System.out.println("최대 :" + max);
    System.out.println("최소 :" + min);
  }
}



2. RUN


ex1)

숫자를 입력 : 947
최대 :9
최소 :4


ex2)

숫자를 입력 : 947
i가 0 일때  min의 값은 : 9
num[0] 이 9 일때, max 보다 크므로  max의 값은 : 9
num[1] 이 4 일때, min 보다 크므로  min의 값은 : 4

최대 :9
최소 :4

 

ex3)

숫자를 입력 : 123456789
i가 0 일때  min의 값은 : 1
num[0] 이 1 일때, max 보다 크므로  max의 값은 : 1
num[1] 이 2 일때, max 보다 크므로  max의 값은 : 2
num[2] 이 3 일때, max 보다 크므로  max의 값은 : 3
num[3] 이 4 일때, max 보다 크므로  max의 값은 : 4
num[4] 이 5 일때, max 보다 크므로  max의 값은 : 5
num[5] 이 6 일때, max 보다 크므로  max의 값은 : 6
num[6] 이 7 일때, max 보다 크므로  max의 값은 : 7
num[7] 이 8 일때, max 보다 크므로  max의 값은 : 8
num[8] 이 9 일때, max 보다 크므로  max의 값은 : 9
최대 :9
최소 :1