2차월 배열, 반복문 연습 또 연습_20260702

JAEWOONG LEE·2026년 7월 2일
post-thumbnail

2차원 배열과 술게임 up and down.
상속 참조 문제를 보느라 오늘은 소스만 업로드
내일 휴강이지만 나와서 별찍기, 펜슬 문제 풀게

package Day3;

import java.util.Scanner;

public class Booking
{
static void main()
{
//예약을 해야 하기 때문에
//좌석 배열, 입력 객체
Scanner sc = new Scanner(System.in);
int[][] seat = new int[9][2]; //초기화0, ->빈좌석 :0->예약좌석:1
int count = 18;

    while(count != 0)
    {
        //0. 예약 입력
        System.out.println("예약하신 좌석을 입력하세요 (총 "+count+"석) : ");
        int h  = sc.nextInt();
        int y = sc.nextInt();

        System.out.println(h+"열");
        System.out.println(y+"행");

        if(h <= seat.length && h >=1 && y <= seat[0].length && y > 0)
        {
            //1.입력
            //2. 예약된 자리 예약시 빈 좌석 출력
            if(seat[h-1][y-1]==0)
            {
                seat[h-1][y-1] = 1;
                count--;
                System.out.println(h + "행"+ y+"열 예약이 완료되었습니다.") ;
            }
            else
            {
                for(int i = 0; i < seat.length; i++)
                {
                    for(int j = 0; j < seat[i].length;j++)
                    {
                        if(seat[i][j] == 0)
                        {
                            System.out.println("비어있는 좌석 : "+(i+1) + "행"+(j+1)+"열");
                        }
                        else
                        {

                        }
                    }
                }
            }
        }
        //잘못된 입력
        else
        {
            System.out.println("잘못된 입력입니다.");
        }
        //1.예약
        //2. 예약된 자리 예약시 빈 좌석 출력
        //3. 잘못된 입력
    }
    /*
    int[][] nBookingSeats = new int[2][9];
    int nBookingPositionR = 0, nBookingPositionC = 0;
    boolean bComplete = false;
    boolean bReturnAgain = false;

    bComplete = true;
    while(bComplete)
    {
        System.out.println("좌석을 선택해주세요.");
        Scanner scanner = new Scanner(System.in);
        nBookingPositionC = scanner.nextInt();
        nBookingPositionR = scanner.nextInt();

        try
        {
            if (nBookingPositionC < 2 && nBookingPositionR < 9)
            {
                if (nBookingSeats[nBookingPositionC][nBookingPositionR] == 0)
                {
                    nBookingSeats[nBookingPositionC][nBookingPositionR] = 1;
                    //  System.out.println(nBookingPositionC+" 열, "+ nBookingPositionR+" 행, 부킹되었습니다.");
                }
                else
                {
                    System.out.println("이미 예약되었습니다.");

                    int nSeatCol2 = nBookingSeats.length;
                    int nSeatRow2 = nBookingSeats[1].length;

                    for (int nSeatCol = 0; nSeatCol < nBookingSeats.length; nSeatCol++)
                    {
                        for (int nSeatRow = 0; nSeatRow < nBookingSeats[1].length; nSeatRow++)
                        {

                            if (nBookingSeats[nSeatCol][nSeatRow] == 0)
                            {
                              // 미완  System.out.print(nBookingSeats[nSeatCol][nSeatRow]+"시트가 남아있습니다.");
                            }
                        }
                        System.out.println();
                    }
                }
            }
            else
            {
            }
        }
        catch (Exception e)
        {
            throw new RuntimeException(e);
        }

        int nSeatCol2 = nBookingSeats.length;
        int nSeatRow2 = nBookingSeats[1].length;
        int nSeatCount = 0;

        for (int nSeatCol = 0; nSeatCol < nBookingSeats.length; nSeatCol++)
        {

            for (int nSeatRow = 0; nSeatRow < nBookingSeats[1].length; nSeatRow++)
            {
                System.out.print(nBookingSeats[nSeatCol][nSeatRow]);
                if (nBookingSeats[nSeatCol][nSeatRow] == 0)
                {
                    bComplete = true;
                  //  bReturnAgain = true;
                }
                else
                {
                    nSeatCount++;
                    bComplete = false;
                }
            }
            System.out.println();
        }
        if(nSeatCount ==18)
        {
            System.out.println("예약이 꽉 찼습니다.");
            break;
        }
    }
    */
}

}

package Day3;

import java.util.Random;
import java.util.Scanner;

public class UpAndDown
{
static void main()
{
//1. Random 객체 필요하다.
Random r = new Random();
//2. Scanner 객체 필요하다.
Scanner sc = new Scanner(System.in);
//3. com 난수 값 받기 -> 1회성 바뀌면 맞출 수 없다.
int com = r.nextInt(100)+1;
System.out.println("Com : "+com);

    //맞출때까지 ->무한루프 -> 추후에 if 조건 break;; 할거야
    while(true)
    {
        //사용자 입력!!!
        System.out.println("숫자 입력");
        int user = sc.nextInt();

        if(com > user)
        {
            System.out.println("업");
        }
        else if(com < user)
        {
            System.out.println("다운");
        }
        else
        {
            System.out.println("정답입니다.");
        }
    }


    /*
    Scanner scanner = new Scanner(System.in);

    int nGuessNum = 0, nComputerNum = 0;
    boolean bEnd = true;
    System.out.println("1~100 숫자를 입력받습니다");
    Random random = new Random();

    nComputerNum = random.nextInt(100)+1;

    while(bEnd)
    {
        nGuessNum = scanner.nextInt();

        System.out.println("숫자 입력"+nGuessNum);
        if(nGuessNum == nComputerNum)
        {
            System.out.println("맞췄습니다.");
            bEnd = false;
        }
        else
        {
            if(nGuessNum > nComputerNum)
            {
                System.out.println("다운");
                bEnd = true;
            }
            else
            {
                System.out.println("업");
                bEnd = true;
            }
        }
    }
    */
}

}

profile
just for programming test

0개의 댓글