#python #anaconda #jupyter-notebook #visual-code #html #css #javascript #http

제목[re]질문입니다.2022-04-23 18:15
작성자

shape_list = [3, 4, 6, 9, 10, 12, 13] 


def drawShape(lineSize,shape):

    return_flag = False

  

    for shape_elem in shape_list:

        if shape == shape_elem:

            t = turtle.Pen()

            for i in range(shape_elem):

                t.forward(lineSize)

                t.left(360/shape_elem)

            return_flag = True 

            break

    return return_flag



위 처럼 함수를 만들 수 있을 것 같습니다.

shape_list를 만들어주어 if 문에서 비교할 shape를 모두 담아둡니다.

그 이후 함수 내에서 loop를 돌며 shape_list 내의 element인 shape_elem을 꺼내게 합니다.

당연히 shape는 shape_elem과 비교하면 되며, 선 또한 shape_elem번을 그리게 합니다.

left 각도 또한 360에서 shape_elem만큼을 나눈 값을 줍니다. 

if문에서 비교에 성공했을 때, 그림을 그리게 한 후 return_flag를 True로 바꿔주고 break합니다.

마지막 반환 값은 return_flag로 반환합니다.

댓글
이전질문입니다.2022-04-23
다음코드오류질문입니다.2022-04-23