본문 바로가기
JAVA

JAVA(기본문법 활용)

by 글로리. 2020. 6. 1.

01. if-if 구조

  • 특정 조건이 참으로 판단되어 블록안에 진입했을 때, 상세조건을 판별하는 구조.
if (/*조건*/)
{
    if (/*조건*/)
    {
        명령어
    }
    else
    {
        명령어
    }
}
else
{
    if (/*조건*/)
    {
        명령어
    }
    else
    {
        명령어
    }
}

02. if-for 구조(구구단 출력)

  • 특정 조건이 참으로 판단되어 블록안에 진입했을 때, 반복을 수행하는 구조.
public class IfFor
{
    public static void main(String[] args)
    {
        int k = 10;
        // int k = 3;

        if (k > 1 && k < 10)
        {
            for (int i=1; i<10; i++)
            {
                System.out.printf("%d x %d = %d\n", k, i, k*i);
            }
        }

        else
        {
            System.out.println("2~9 사이의 수식만 출력합니다.");
        }
    }
}

// 실행결과 (k가 5일 때)

5 x 1 = 5
5 x 2 = 10
5 x 3 = 15
5 x 4 = 20
5 x 5 = 25
5 x 6 = 30
5 x 7 = 35
5 x 8 = 40
5 x 9 = 45

03. for-if 구조(범위 안에서 홀,짝수 합 구하기)

public class ForIf
{
    public static void main(String[] args)
{
        int max = 10;
        int oddSum = 0;
        int evenSum = 0;

        for (int i=1; i<=max; i++)
        {
            if (i % 2 == 0)
            {
                System.out.printf("%d는 짝수\n", i);
                evenSum += i;
            }

            else
            {
                System.out.printf("%d는 홀수\n", i);
                oddSum += i;
            }
        }

        System.out.printf("1~%d까지 홀수들의 합: %d\n",max, oddSum);
        System.out.printf("1~%d까지 짝수들의 합: %d\n",max, evenSum);
    }
}

// 실행결과 (11까지의 홀,짝수들의 합)

1는 홀수
2는 짝수
3는 홀수
4는 짝수
5는 홀수
6는 짝수
7는 홀수
8는 짝수
9는 홀수
10는 짝수
11는 홀수
1~11까지 홀수들의 합: 36
1~11까지 짝수들의 합: 30

- 반복 수행 시 마지막 회차는 생략하도록 처리하는 방법

public class LastNone
{
    public static void main(String[] args)
    {
        for (int i=0; i<10; i++)
        {
            // 조건값이 마지막이 아닌 경우만 실행하도록 if문을 구성
            // [공식1] 조건식이 "변수 < 최대값" 인 경우 -> 변수 + 1 < 최대값
            // [공식2] 조건식이 "변수 <= 최대값" 인 경우 -> 변수 < 최대값

            if (i + 1 < 10)
            {
                System.out.println("i=" + i);
            }
        }
    }
}

// 실행결과 (마지막 9는 출력되지 않음)
i=0
i=1
i=2
i=3
i=4
i=5
i=6
i=7
i=8

04. for-for 구조(구구단 2단~9단)

- 바깥의 반복문(부모)이 1회 수행할 때 마다 안쪽의 반복문(자식)이 매번 처음부터 새로 시작하는 이중 반복문구조.

두 반복문간의 조건값이 서로 달라야 한다.

public class Gugu
{
    public static void main(String[] args)
    {
        for (int i=2; i<10; i++)
        {
            for (int j=1; j<10; j++)
            {
                System.out.printf("%d x %d = %2d\n", i, j, i*j);
            }

            if (i + 1 < 10)
            {
                System.out.println("--------------");
            }
        }
    }
}

// 실행결과 

2 x 1 =  2
2 x 2 =  4
2 x 3 =  6
2 x 4 =  8
2 x 5 = 10
2 x 6 = 12
2 x 7 = 14
2 x 8 = 16
2 x 9 = 18
--------------
3 x 1 =  3
3 x 2 =  6
3 x 3 =  9
3 x 4 = 12
3 x 5 = 15

... 생략 ...

8 x 7 = 56
8 x 8 = 64
8 x 9 = 72
--------------
9 x 1 =  9
9 x 2 = 18
9 x 3 = 27
9 x 4 = 36
9 x 5 = 45
9 x 6 = 54
9 x 7 = 63
9 x 8 = 72
9 x 9 = 81

- for-for 구조 (별찍기)

public class StarAsc
{
    public static void main(String[] args)
    {
        // 바깥의 반복은 행을 결정한다.
        for (int i=0; i<7; i++)
        {
            // 안쪽의 반복은 열을 결정한다.
            for (int j=0; j<i+1; j++)
            {
                System.out.print("*");
            }
            System.out.print("\n");
        }
    }
}

// 실행결과

*
**
***
****
*****
******
*******

'JAVA' 카테고리의 다른 글

JAVA(2차 배열)  (0) 2020.06.02
JAVA(1차 배열)  (0) 2020.06.02
JAVA (조건문, 반복문)  (0) 2020.06.01
JAVA (기본_입출력)  (0) 2020.06.01
JAVA(에러 모음)  (0) 2020.05.29

댓글