도움말

Everycoding에 관하여 간단하게 소개해 드릴게요!

따라오세요~

아, 도움말을 종료하고 싶으면 esc키를 누르세요~


다음

단축키

Everycoding에서 사용할 수 있는 단축키입니다.

메인 화면 h
코딩 튜터 t
코딩 도전 c
코드 갤러리 g
코드 에디터 e
질문과 답변 q
자주 묻는 질문 f
소식 n
대시보드 d
개인정보 p
알림 m
스크롤 아래로
스크롤 위로
코딩 튜터 페이지 앞으로 이동
코딩 튜터 페이지 뒤로 이동

다음

코딩 튜터가 뭔가요?

업로드 된 동영상 강의나, 이미지, 예제 코드등을 보면서 코딩을 배울 수 있습니다.
원하는 튜터를 선택해서 수강해 보세요!


다음

튜터를 알아봅시다

코딩에 관한 수업목록입니다.
수업명을 클릭하면 어떤 수업 내용으로 진행이 되는지에 관한 커리큘럼과 그 외의 수업에 대한 자세한 내용들을 확인 할 수 있습니다!


이전 다음

튜터의 내용을 살펴볼까요?

클릭한 수업명에 관한 자세한 내용입니다.
학습 내용의 상세보기를 클릭해볼까요?

이전 다음

자세히 보기

큰 분류 안에 자세한 수업 꼭지들이 있습니다.
클릭해서 들어가면 수업을 들을 수 있어요.
수업 중에는 동영상도 있고, 이미지도 있고 직접 코딩을 하는 부분도 있어요



이전 다음

코딩 도전에서는 뭘 할 수 있을까요?

코딩도전은 여러가지 도전이 모여있는 페이지입니다.
프로그래밍에 관한 간단한 코드들을 학습할 수도 있고,
난이도 있는 코드들을 학습할 수도 있습니다~^^


이전 다음

직접 도전해보기

벌써 여러가지 도전들이 모여있네요!
한번 자세히 살펴봅시다.


이전 다음

문제들

각각의 도전에는 여러가지 문제가 존재합니다.
여러 문제 목록이 존재하고, 문제를 풀어 제출할 수 있어요^^
튜터를 진행하며 다시 풀어보고 싶었던 문제들을 풀 수도 있습니다.


이전 다음

기록

문제를 푼 모든 기록이 여기에 보여집니다.
문제를 풀고 다른 사람들의 문제 기록을 보고싶으면 클릭해서 확인해보세요!


이전 다음

통계

문제별 정답/오답률이 보여집니다.


이전 다음

코드갤러리가 무엇을 하는 곳인가요?

이곳은 코드갤러리 입니다. 아주 간단해요~
everycoding을 함께 하는 사람들이 업로드 한 다양한 코드들이 존재합니다!
다양한 코드를 업로드 할 수 있고,
올려진 코드를 확장시켜서 더 멋진 코드를 만들 수도 있습니다.


이전 다음

코드갤러리의 코드 둘러보기

클릭한 코드를 자세히 볼 수 있어요.
실행도 가능하고, 확장도 가능하며, 어떻게 확장되었는지도 확인 할 수 있어요.


이전 다음

코드를 자세히 봅시다!

코드 갤러리에 있던 코드중 하나입니다.
코드 내에서 검색도 가능하고(돋보기 아이콘)
전체화면(화살표 아이콘)으로 볼 수도 있습니다.


이전 다음

코드 에디터로 이동하여 실행하기

키보드 모양 아이콘은 코드와 함께 코드 에디터로 이동시켜 줍니다.


이전 다음

바로 실행하기

번개모양 아이콘을 클릭하면 바로 실행 할 수 있습니다!


이전 다음

코드 확장이 뭐냐구요?

지금 보고있는 코드를 확장시킬 수 있어요.
버튼을 클릭하면 지금 보고 있는 코드에 원하는대로 코드를 변형할 수 있습니다!
수정한 코드는 다시 코드갤러리에 업로드 되요.


이전 다음

코드맵?

코드맵은 코드 확장한 코드들을 한눈에 보여주는 역할을 합니다.
Tree 모양으로 구조화 되어 있어서 여러 코드간의 유기관계를 볼 수 있어요.
어떤 주요한 부분들이 들어갔는지, 관계된 코드는 무엇인지 알 수 있습니다.


이전 다음

코드에디터에서는 뭘 할 수 있나요?

직접 코드를 실행하고 평가 해 볼 수 있어요.
콘솔창에 입력하고 출력값을 보는것보다 훨씬 깔끔하게 확인 할 수 있습니다.
추가적인 몇가지 기능도 존재합니다.


이전 다음

코드 실행하기

이전 다음

코드 공유하기


이전 다음

실행결과

코드를 적어보고 실행 버튼을 누르면 여기에서 바로 확인할 수 있어요.
옳은 코드를 실행시켰다면 출력 결과가 보여지고,
오류가 나면 오류메시지가 출력됩니다!


이전 다음

터틀이 뭔가요?

python 모듈인 터틀은 명령어를 이용하여 여러가지 그림을 그릴 수 있습니다^^
조금 더 쉽게 파이썬에 다가갈 수 있는 방법이랍니다.


이전 다음

터틀 코드 입력하기

파이썬 코드를 입력하는 것과 똑같은 방법으로 코드를 입력하세요.
코드 입력 후 실행을 누르면 코드가 실행됩니다!


이전 다음

터틀 실행하기

터틀을 실행하면 결과를 그림으로 보여줍니다.
원하지 않는 그림이었다면 코드를 수정하세요!


이전 다음

끝!

everycoding이 준비한 도움말은 여기까지 입니다.
홈페이지에 관한 궁금증이 생긴다면 아래의 문의/의견 페이지에서 질문해주세요.
everycoding이 답변하겠습니다!


이전 종료

틱택토로 배우는 파이썬 기초 실습

(2명 평가 : 평균 3.0 / 로그인한 사용자만 평가할 수 있습니다. )
# 분류 문제명 설명
1 실습 게임판을 화면에 출력해보자

파이썬을 이용해서 틱택토 게임판을 화면에 출력해봅시다. 

출력값이 설명과 같은 같은 모양이 되도록 코드를 작성해주세요.

특수문자는 ㅂ+한자키를 이용하시면 됩니다. 

윈도우 환경이 아닐 경우(맥, 리눅스) ─,│,┌,┐,┘,└,├,┬,┤,┴,┼ 이 문자를 복사-붙여넣기하여 문제를 해결해보시기 바랍니다.

2 실습 게임판을 필요한 변수로 나타내보자

틱택토 게임판에는 변하는 부분이 있습니다.

이 변하는 부분을 변수로 나타내봅시다.

저번과 마찬가지로 게임판을 출력해야겠죠?

3 실습 좌표를 입력받아보자!

틱택토 게임의 좌표를 입력받아봅시다.

틱택토 게임은 3 * 3으로 x좌표는 A~C까지, y좌표는 1~3까지 있습니다.

입력값은 A1~C3사이의 값이 들어올 것입니다.

이 과제에서는 좌표를 받고, x좌표와 y좌표를 분리해서 화면에 출력해보도록 합시다.

4 실습 입력받은 좌표에 말을 놓아보자!

입력과 출력을 해결하는 방법을 알아봤죠? 이제 본격적으로 프로세싱 작업을 시작해봅시다.

이번 문제에서는 조건문을 활용해서, 게임판에 말을 놓아보도록 하겠습니다. 

일단 아무 말도 놓여있지 않은 빈 게임판을 출력해줍니다.\

그 후 사용자로부터 좌표를 입력받습니다.

좌표를 입력받은 후, 입력받은 좌표 자리에 O가 적히도록 출력해줍시다.

5 실습 잘못된 입력 값을 처리해보자.

입력값이 항상 제대로 된 값만 들어가는 것은 아닙니다

A1~C3 사이의 값이 아닌 값이 들어갈 경우를 처리해보도록 합시다.

X좌표에 알파벳이 아닌 값이 들어올 경우 에러 메세지 "You input wrong value. You must input a alphabet for X."를 출력

X좌표에 알파벳이지만 대문자 A, B, C가 아닌 값이 들어올 경우 에러 메세지 "You input wrong value. Your input value for X must between A to C."를 출력

Y좌표에 숫자가 아닌 값이 들어올 경우 에러 메세지 "You input wrong value. You must input a numeric value for Y."를 출력

Y좌표에 숫자이지만 1,2,3이 아닌 값이 들어올 경우 에러 메세지 "You input wrong value. Your input value for Y must between 1 to 3."를 출력해주도록 합시다.

만약 X와 Y좌표가 모두 잘못되었을 경우에는 X좌표에 대한 에러 메세지만을 출력해줍니다.

6 실습 계속해서 말을 놓아보자.

말을 한 번 놓고 게임이 끝나서는 안 되겠죠.

계속해서 말을 놓도록 해봅시다.

단, 9번까지만 말을 놓게 하고, 10번을 넘어서 플레이를 하려는 경우에는 강제로 반복을 멈추도록 만들어봅시다.

만약 코딩도전 실패 메세지가 뜨지 않는다면, 반복문 종료 조건을 만족하지 못한 것이기 때문에 문제 풀이를 잘못 한 것입니다.

7 실습 틱택토를 더 세련되게 표현해보자.

자료구조를 도입해서 문제를 해결해봅시다.

사전을 써도 되고, 리스트를 써도 됩니다. 저 외에도 자신이 파이썬에 자신이 있다면 편하신 자료구조를 이용해서 완료해주세요.

제대로 과제를 완수했다면, 코드의 길이가 절반 가까이 줄어들었다는 것을 확인할 수 있을 것입니다.

 

X좌표에 알파벳이 아닌 값이 들어올 경우 에러 메세지 "You input wrong value. You must input a alphabet for X."를 출력

X좌표에 알파벳이지만 대문자 A, B, C가 아닌 값이 들어올 경우 에러 메세지 "You input wrong value. Your input value for X must between A to C."를 출력

Y좌표에 숫자가 아닌 값이 들어올 경우 에러 메세지 "You input wrong value. You must input a numeric value for Y."를 출력

Y좌표에 숫자이지만 1,2,3이 아닌 값이 들어올 경우 에러 메세지 "You input wrong value. Your input value for Y must between 1 to 3."를 출력해주도록 합시다.

만약 X와 Y좌표가 모두 잘못되었을 경우에는 X좌표에 대한 에러 메세지만을 출력해줍니다.

단, 9번까지만 말을 놓게 하고, 10번을 넘어서 플레이를 하려는 경우에는 강제로 반복을 멈추도록 만들어봅시다.

8 실습 말은 빈 자리에만 놓여야한다. (선택)

이미 말이 놓였던 자리에 말을 다시 놓으면 안되겠죠?

이미 말이 놓여있는 자리에 다시 말을 놓을 경우에는, 경고메세지 "Marker is already placed."를 출력해주도록 합시다.

나머지 사양은 7회차 코드와 동일합니다.

9 실습 두 사람이 번갈아 플레이하자!

틱택토는 혼자서 하는 게임이 아니죠? 두 명이서 번갈아가면서 하는 게임이기 때문에 한 사람이 돌을 놓으면, 다른 사람의 차례로 넘어가야 할 것입니다.

O와 X로 두 게임플레이어를 구분하도록 합시다. 맨 처음에는 O부터 두기 시작해서 번갈아가며 돌을 하나씩 놓을 것입니다.

 

추가되는 점은 두 가지입니다.

첫 번째로는 게임판을 보여준 후, 누구의 차례인지 표시해줍시다.

예를 들어 O의 차례이면 게임판 밑에 "It's O's turn!"

X의 차례이면 게임판 밑에 "It's X's turn!" 이라고 출력해주는 것이죠.

당연히 게임이 끝날 때 출력하는 게임판 밑에는, 게임이 끝나서 누구도 말을 놓지 않기 때문에 저 문구가 출력되서는 안됩니다.

 

두 번째는, 이 문제의 중심내용인 번갈아 플레이입니다.

O가 말을 놓은 후에는 X가 말을 놓아야겠죠?

다만, 누군가 말을 잘못 놓아서 에러 메시지를 출력했다면, 순서를 바꾸지 않고 계속 O가 플레이하도록 해야합니다.

예를 들어 O차례였는데 O 플레이어가 C5라는 잘못된 값을 입력했다면, X의 차례로 넘어가지 않고 다시 O가 말을 놓도록 해야한다는 것입니다.

 

나머지 사양은 이전 과제와 동일합니다.

말을 잘못놓건 제대로 놓건, 9번만 말을 놓도록 만들어줍시다.

 

10 실습 기능을 나눠보자!

이번에는 기존의 코드를, 함수를 이용해서 기능을 나누어 표현해보도록 하겠습니다.

지금까지 만든 코드를 살펴보면, 게임판을 화면에 출력해주는 코드는 반복문 안에서 1번, 반복문 밖에서 1번으로 2번이나 중복해서 나타나죠?

지금은 각각에 대해 8줄이나 코드를 할당해주는데, 이를 별도의 기능으로 나누면 더 간단하게 표현할 수 있을 것 같습니다.

게임판을 화면에 출력해주는 코드를, print_board라는 별도의 기능으로 나눈 뒤, 원래 게임판을 출력하던 자리에 print_board를 넣어서 제대로 작동하는지 확인해봅시다.

11 실습 승리 조건을 만들자!

드디어 마지막입니다.

지금은 게임을 플레이해도, 누가 이겼는지 누가 졌는지 알 수 있는 방법이 없죠.
거기다 지금은 무조건 9번 말을 놓으면(입력을 받으면) 게임이 끝나도록 설정이 되어있는데, 사실 게임은 두 사람 중 누군가가 이기거나 지거나, 또는 더 이상 말을 놓을 수 없을 경우(비기는 경우)에만 게임이 끝나야 할 것입니다.

게임의 승패를 확인하는 기능(함수) check_win을 작성하고, 틱택토 프로그램을 완성시키도록 합시다.

게임이 끝날 경우, 게임 결과를 화면에 출력해주고, 누가 이겼는지까지 표시를 해줘야겠죠.

 

check_win 함수의 동작을 설명하겠습니다.
check_win은 게임판을 입력으로 받게 됩니다. (게임판이 어떻게 생겼는지를 알아야, 승패를 확인할 수 있겠죠?)

플레이어 O가 돌 3개로 줄을 완성시켰을 경우 "O"를 결과값으로 돌려줍니다.
플레이어 X가 돌 3개로 줄을 완성시켰다면, "X"를 결과값으로 돌려주게 되죠.
그리고 O가 이기지도 않고, X가 이기지도 않았는데 모든 칸에 말이 놓여있다면(빈 칸이 하나도 없다면) 비겼다는 의미로 "D"를 결과값으로 돌려줍니다.
이 3가지에 해당하지 않을 경우에는, 그 누구도 이기지 못한 상황이기 때문에 "N"을 결과값으로 돌려줍니다.


 
mok05289@naver.com

실습 5의 샘플 코드에 있는 isNumeric은 잘못된 문법입니다. 소문자로 isnumeric() 으로 해야 맞습니다.


  로그인한 사용자만 코드에 대한 의견을 달 수 있습니다.

 도전 <틱택토로 배우는 파이썬 기초 실습>


분류
문제해결형
사용 언어
수준
초급

틱택토로 배우는 파이썬 기초 관련 실습 도전입니다.



 문제 분류