-
21.6 심사문제 별 그리기(터틀 그래픽스)코딩도장 심사문제모음 2020. 10. 12. 18:01728x90
표준 입력으로 꼭지점 개수(정수)와 선의 길이(정수)가 입력됩니다(꼭지점 개수의 입력 범위는 5~10, 선의 길이 입력 범위는 50~150입니다). 다음 소스 코드를 완성하여 꼭지점 개수와 선의 길이에 맞는 별이 그려지게 만드세요. 별을 그릴 때는 현재 위치부터 오른쪽으로 이동해서 시작해야 하며 시계 방향으로 그려야 합니다.
사용한 코드
1. import
2. map
3. int
4. input
5. t.shape(터틀 모듈 함수)
6. t.speed(터틀 모듈 함수)
7. for 반복문
8. range
9. t. 방향 함수
첫 접근 방법
입력값을 받아 n각형의 line 길이의 도형을 그리는 것으로
도형을 만들때 꼭지점 갯수만큼 반복하면 되는 사실만 안다면, 어렵지 않게 해결 할 수 있다.
풀이
문제에서는 두 가지 입력값을 받는 코드가 나와있다.
import turtle as t n
line = map(int, input().split())
t.shape('turtle')
t.speed('fastest')
상태에서 시작한다..
1. for 반복문을 바로 시작해주며 앞서 언급하였듯 n각형의 도형을 만들기위해서는 n개 꼭지점 갯수만큼 반복되어야 함을 확인할 수 있다.
ex : 5각형 -> range(5) -> 0 ~ 4 까지 총 5번 반복
for i in range(n):
2. 아래 코드블럭은 터틀 모듈 함수의 이동에 사용되는 함수를 이용하며 직진, 회전, 직진, 회전을 마무리하면 1회가 끝난다.
또한, 360/ n * 2 가 첫 회전, 두번째 회전은 반대방향으로 360 / n 만큼 회전하면 별의 들어간 부분을 표현할 수 있다.
(회전 기준 : right)
t.fd(line)
t.rt(360/n *2)
t.fd(line)
t.left(360/n)더보기import turtle as t
n, line = map(int, input().split())
t.shape('turtle')
for i in range(n):
t.fd(line)
t.rt(360/n *2)
t.fd(line)
t.left(360/n)
※ 실제 코딩 도장의 해법과 다를 수 있으며, 답은 여러가지가 존재합니다.
코딩 지적 정말 감사히 받겠습니다.
※ 접은글 클릭 감사합니다.
728x90'코딩도장 심사문제모음' 카테고리의 다른 글
23.7 지뢰찾기(어려움..) (0) 2020.10.18 23.6 연습문제 3차원 리스트 만들기 (0) 2020.10.15 22.10 심사문제 2의 거듭제곱 리스트 생성하기 (0) 2020.10.14 20.8 심사문제 5와 7의 배수, 공배수 처리하기(입력값) (0) 2020.10.09 19.6 심사문제 역삼각형 모양 별출력 (0) 2020.10.08