# 문제 생성

![](https://2181851870-files.gitbook.io/~/files/v0/b/gitbook-legacy-files/o/assets%2F-Lq-Q9LciN1X9EABxGkt%2F-M-7ydE7PlJomgRPa6Pw%2F-M-7ypIh-wMdwLAl_esw%2Fimage.png?alt=media\&token=eb393de9-a13f-4fb6-91b6-2fb36e00a1ce)

상단 오른쪽에서 **'관리 메뉴'→'평가 관리'**&#xB97C; 순서대로 클릭하여 \
관리 페이지로 접속하면 관리자가 생성한 평가를 볼 수 있습니다.

![](https://2181851870-files.gitbook.io/~/files/v0/b/gitbook-legacy-files/o/assets%2F-Lq-Q9LciN1X9EABxGkt%2F-Lu2J96W1ea7KclqCncN%2F-Lu2JIUfKF-CY3nOpERm%2F%ED%8F%89%EA%B0%80%EC%83%9D%EC%84%B13.png?alt=media\&token=bbf30bdb-da26-44b4-89c2-89c3f0bd81bf)

변경하고자 하는 평가 카드를 클릭하면 아래와 같은 평가 편집 페이지로 접속할 수 있습니다. \
페이지 왼쪽 바에는 평가 제작자가 사용할 수 있는 다양한 기능이 구성되어 있습니다.

![](https://2181851870-files.gitbook.io/~/files/v0/b/gitbook-legacy-files/o/assets%2F-Lq-Q9LciN1X9EABxGkt%2F-M-7zK2dpfUPZLJTnuAj%2F-M-7znoCpxxtN7qMfahO%2Fimage.png?alt=media\&token=fc19368c-3dac-432d-a34a-e118e0065fc7)

'문제 관리'를 클릭하면 평가를 위해 **`문제 가져오기`**&#xB85C; 구름에서 기본 제공하는 문제은행을 가져오거나, \
\&#xNAN;**`새 문제 만들기`**&#xB85C; 새로운 문제를 제작할 수 있습니다.

![](https://2181851870-files.gitbook.io/~/files/v0/b/gitbook-legacy-files/o/assets%2F-Lq-Q9LciN1X9EABxGkt%2F-M-7zK2dpfUPZLJTnuAj%2F-M-7zdA9ob9-JHV1aC62%2Fimage.png?alt=media\&token=4ff0386c-e16d-4f18-b207-3da12ddc81c8)

## 1. 문제 가져오기

우측 상단의 **`문제 가져오기`**&#xB97C; 클릭하여 공개 설정된 문제를 가져올 수 있습니다.

![](https://2181851870-files.gitbook.io/~/files/v0/b/gitbook-legacy-files/o/assets%2F-Lq-Q9LciN1X9EABxGkt%2F-Lu7Az86dbcqDmbfLHHF%2F-Lu7BSIx_ZQPekI4Zyav%2F%EB%AC%B8%EC%A0%9C%EC%83%9D%EC%84%B12.PNG?alt=media\&token=e4bcd3a4-28c6-418d-8746-43725409ef63)

문제 유형, 타입, 사용 언어, 난이도, 기타 사용자 설정 항목의 다양한 태그를 통해 \
원하는 문제를 검색할 수 있습니다.&#x20;

구름에서 제공하는 문제은행을 사용하고 싶으시다면 **'기타'** 카테고리에서 \
\&#xNAN;**'기본200제', '실전50제'** 태그를 클릭하시면 됩니다.

![](https://2181851870-files.gitbook.io/~/files/v0/b/gitbook-legacy-files/o/assets%2F-Lq-Q9LciN1X9EABxGkt%2F-Lu7Az86dbcqDmbfLHHF%2F-Lu7DOVy3qzcXU7QTfR_%2F%EB%AC%B8%EC%A0%9C%EC%83%9D%EC%84%B13.PNG?alt=media\&token=ad37d8ae-c5ab-4ba3-a17a-fe551799a27e)

문제를 선택하면 위와 같이 왼쪽의 문제 내용 미리보기에서 내용을 확인할 수 있습니다. \
가져올 문제를 체크하고 **`선택 항목 가져오기`** 버튼을 통해 평가로 문제를 가져옵니다.<br>

## **2. 문제 만들기**

새로운 문제를 만들고 싶다면 우측 상단의 **`새 문제 만들기`** 버튼을 클릭한 뒤, \
원하는 유형의 문제를 선택합니다.

![](https://2181851870-files.gitbook.io/~/files/v0/b/gitbook-legacy-files/o/assets%2F-Lq-Q9LciN1X9EABxGkt%2F-Lv50JYgKva7zdVAh6D_%2F-Lv50gqmPILX701GKA0B%2Fimage.png?alt=media\&token=949dd2a1-eab2-4954-966b-318e83d9ba6e)

### **2-1. 문제설정**

**'새 문제 만들기'** 실행 화면입니다. **문제 유형 선택, 문제 공개 범위, 문제 난이도, 태그** 를 \
차례로 선택하신 후 **`시작하기`**&#xB97C; 클릭하여 새로운 문제를 만들 수 있습니다.&#x20;

![](https://2181851870-files.gitbook.io/~/files/v0/b/gitbook-legacy-files/o/assets%2F-Lq-Q9LciN1X9EABxGkt%2F-LuFubzwBkyfcmtUDxt1%2F-LuFzvNWrcW39Sydjbpk%2F%EC%9D%B4%EB%AF%B8%EC%A7%80%205.png?alt=media\&token=c5ce7f0d-3128-42e1-b2ac-7ccb322c2a92)

각각의 메뉴에 대해 간단히 설명 드리겠습니다.

* **문제 유형 선택 :** 채점모드와 제출모드가 있습니다. \
  **채점모드**는 문제 작성 시 표준 입출력값을 통한 채점답안을 반드시 입력해야 하고 \
  자동채점이 가능합니다. **제출모드**는 답안 작성 과정 없이 문제 제작이 가능하며, \
  출제자가 응시자의 제출 답안을 직접 확인하여 채점합니다.<br>
* **문제 공개 범위 :** 전체공개, 비공개, 채널공개가 있습니다. \
  전체공개는 구름 서비스를 이용하는 모든 도메인에서 사용할 수 있습니다. \
  채널공개는 현재 문제를 제작중인 기관 또는 학교의 채널에서만 사용 할 수 있습니다. \
  비공개는 해당 문제를 작성한 평가에서만 문제를 사용할 수 있습니다.<br>
* **문제 난이도 :** 출제자는 작성한 문제의 난이도를 `★` \~ `★★★★★`사이에서 설정할 수 있습니다.<br>
* **태그 :** 문제 가져오기 실행시 검색에 노출되는 태그를 설정할 수 있습니다.

### 2-2. 프로그래밍 언어 설정

문제를 풀기 위해 응시자에게 제공할 언어를 선택할 수 있습니다. \
현재 구름DEVTH에선 **총 28가지의 프로그래밍 언어**를 제공할 수 있습니다. \
제공하길 원하는 언어를 선택한 후 적용을 클릭하여 **다음**으로 넘어갑니다.

![](https://2181851870-files.gitbook.io/~/files/v0/b/gitbook-legacy-files/o/assets%2F-Lq-Q9LciN1X9EABxGkt%2F-LuFubzwBkyfcmtUDxt1%2F-LuG1Ugs2ERRMus2CuDg%2F%EC%9D%B4%EB%AF%B8%EC%A7%80%206.png?alt=media\&token=da0c3843-7e0b-4564-b5ad-3617a9e423ed)

### 2-3. 예제 코드 작성

아래 화면의 좌측의 빨간 박스에서 **문제 이름, 문제 내용, 출처** 등 응시자가 문제를 풀기위해 필요한 정보를 텍스트로 제공할 수 있습니다. 새 문제 만들기를 시작할 때 설정한 난이도를 변경하면 문제 이름 아래의 노란별을 클릭하여 수정할 수 있습니다.

우측박스에서는 응시자에게 제공할 프로그래밍 언어의 기본예제코드와 설정을 변경할 수 있습니다.&#x20;

![](https://2181851870-files.gitbook.io/~/files/v0/b/gitbook-legacy-files/o/assets%2F-Lq-Q9LciN1X9EABxGkt%2F-LuG1wIBc82HkMHdf5bn%2F-LuG2U3oSCkrgJJk6VQt%2F%EC%9D%B4%EB%AF%B8%EC%A7%80%207.png?alt=media\&token=dc8e31e8-2829-495c-81bb-c127565da455)

상단의 **언어명이 표기된 탭**에 각 언어의 기본예제를 변경할 수 있으며 \
그 외 변경 가능한 설정은 아래와 같습니다.

* 컴파일러 설정
* 언어옵션
* 제출 시 프로그램 수행시간 제한
* 제출 시 프로그램 메모리 제한
* 실행 컨테이너 설정
* 지원자에게 보여줄 내용
* 실행 시 프로그램 수행시간 제한
* 입력/출력 파일 업로드

새 문제 만들기를 시작할 때 선택한 언어를 변경하려면 언어 선택을 클릭하여 수정할 수 있습니다.

### 2-4. 정답 코드 작성

**정답 코드 작성 탭**으로 이동하여 문제에서 요구하는 알고리즘을 구현한 정답 코드를 작성할 수 있습니다. \
이 단계는 문제를 만들기 위한 필수과정은 아닙니다.

![](https://2181851870-files.gitbook.io/~/files/v0/b/gitbook-legacy-files/o/assets%2F-Lq-Q9LciN1X9EABxGkt%2F-LuG1wIBc82HkMHdf5bn%2F-LuG4NDC8N_hIFwvGRqa%2F%EC%9D%B4%EB%AF%B8%EC%A7%80%208.png?alt=media\&token=0714506a-aa19-41ba-a898-4bb597f6a11c)

### 2-5. 채점 설정

![](https://2181851870-files.gitbook.io/~/files/v0/b/gitbook-legacy-files/o/assets%2F-Lq-Q9LciN1X9EABxGkt%2F-LuG1wIBc82HkMHdf5bn%2F-LuG5Ap6C43xuvyCfKjL%2F%EC%9D%B4%EB%AF%B8%EC%A7%80%209.png?alt=media\&token=ac04be57-d1ec-4ee6-8105-76af0558bf66)

채점 설정 탭에서 자동채점을 위한 답안을 표준 입출력 기반으로 하여 작성할 수 있습니다. \
입력값과 출력값을 각각 입력하여 답안을 하나씩 추가할 수 있고 \
파일 업로드, 일괄 등록 기능을 통해 여러개의 테스트 케이스를 한 번에 추가할 수도 있습니다.&#x20;

**입/출력 예시로 사용**을 체크하면 해당 테스트 케이스는 \
응시자가 문제를 해결하는데 참고할 수 있도록 공개됩니다. \
다양한 경우의 수에 대비하여 충분한 테스트 케이스를 작성하여 문제를 제작한다면 \
좋은 문제를 만들 수 있습니다.&#x20;

채점설정에서 제공하는 채점옵션은 유연한 채점을 위해 제공 하는 기능입니다. \
공백, 쉼표, 마침표, 대소문자 구분 등을 무시하고 채점 할 수 있습니다.&#x20;

또한 채점 옵션을 통해 응시자에게 각 테스트 케이스의 정답 여부, 배점, \
리소스 사용량 등을 공개 할 수 있습니다.&#x20;

정규식을 통한 채점도 가능합니다. \
정규표현식의 이용방법에 대해서는 아래 링크를 참고해 주시기 바랍니다.

* [정규표현식 사용방법](http://www.nextree.co.kr/p4327/)
* [정규표현식 작동확인](https://regexr.com/)

위 과정들을 모두 진행한 후 **`저장`**&#xC744; 클릭하시면 새로운 문제가 생성됩니다.
