Study/2019 모각코

07/16 모각코 활동보고서

명주_^ 2019. 7. 16. 22:06

2798. 카드 3개를 골라 그 합이 기준값보다 작은 수 중 가장 가까운 수가 되도록 하는 블랙잭 게임을 구현한다. 2개의 값을 먼저 입력받는다. N과 M을 입력받았을 때, N은 카드의 개수를, M은 기준값이 된다. 그리고 N만큼의 카드 숫자를 입력한다.

예제 입력과 출력은 위와 같다.

java에서 삼중 반복문을 이용하여 값을 비교하도록 해주었는데 실패했다. 왜 실패했는지 곰곰히 생각해본 결과 자바에서 Scanner로 입력받는 형태는 주어진 시간보다 더 걸린다고 하였다. 그래서 이 문제를 언어를 바꾸어 풀어보았다. 같은 코드를 c++로 바꾸어 풀었더니 해결되었다.

 

2231. 입력받은 수에서 가장 작은 분해합 생성자를 구하는 문제. 분해합이란 245라는 수가 있을 때 245+2+4+5 하여 256을 구하는 형태인데 이때, 245는 256의 생성자가 된다. 생성자가 여러개 일 경우 그 중 가장 작은 수를 출력하고 생성자가 없을 경우 0을 출력한다. 

처음에 틀린 이유는 생성자가 없을 경우 0을 출력하지 않았기 때문이었다.

 

 

7568. 입력받은 키와 몸무게를 이용하여 덩치를 비교하는 문제. 만약 키와 몸무게가 모두 크다면 순위가 하나 높은 것이고, 만약 키는 더 큰데 몸무게가 더 적다면 그 둘은 같은 순위로 매긴다. 

키와 몸무게를 2차원 배열로 받아 저장하고 순위를 매기는 배열을 따로 설정해두었다. 키와 몸무게를 반복문으로 비교하여 두 부분 다 높다면 순위를 하나 올려주었다.

 

 

 

 <JAVA GUI-1>

GUI : 그래픽 사용자 인터페이스

컴포넌트 : GUI를 작성하는 기본적인 빌딩 블록

1. AWT와 스윙

- AWT : OS가 제공하는 자원을 이용하여 컴포넌트 생성.

           장점) 여러 플랫폼에서 쉽게 컴포넌트 제공

           단점) 일관된 화면을 제공하는 것이 어려움

- 스윙 : 컴포넌트가 java로 작성되어 있기 때문에 어떤 플랫폼에서도 일관된 화면 보여줌.

  특징) * 다양한 컴포넌트 제공

         * 그림이나 이미지, 애니메이션 제공

         * 룩앤필 지원(룩앤필 : 특정 운영체제가 제공하는 컴포넌트의 모습과 비슷한 외관을 만드는 것)

         * 자르기, 복사, 붙이기, 드래그 앤 드롭 등의 데이터 전송기능 내장

         * 되돌리기, 되풀이 기능 제공

 

2. 컨테이너 : 다른 컴포넌트들을 내부에 넣을 수 있는 컴포넌트

- 최상위 컨테이너 : 절대 다른 컨테이너 안에 포함될 수 없는 컨테이너

                         예) JFrame, JDialog, JApplet

- 일반 컨테이너 : 다른 컨테이너 안에 포함될 수 있는 컨테이너

                       예) JPanel, JScrollPane

3. GUI 작성 절차

컨테이너 생성 -> 컴포넌트 추가