C-log

👩‍🏫class : 13week 본문

📘Python/👩‍🏫class

👩‍🏫class : 13week

4:Bee 2023. 12. 9. 06:09
728x90

13주차에선 for문을 주로 다루었지만 아주 기본적이기 때문에 바로 응용부터 글을 작성할 것이다.

for문으로 다양한 각도의 원형 그리기

import turtle
t = turtle.Turtle()
t.speed(8)
radius=100

for n in range(1,7) :
    t.circle(radius) #원형을 그리는 값이다.
    t.left(360/n) #화살표의 회전을 정하는 값이다.

for문으로 여러 각도 그리기

import turtle
t = turtle.Turtle()
#원형 그리
t.circle(50)

t.goto(100,0)
#삼각형 그리
for n in range(3):
    t.forward(100)
    t.left(120)

입력한 값의 도형 그리기

import turtle
t=turtle.Turtle()

n = int(input("How Many?"))

for m in range(n) :
    t.forward(60)
    t.left(360/n)

5를 입력했을 때의 결과이다.

forwoard와 goto의 차이

#test
import turtle
t =turtle.Turtle()
t.shape("turtle")

t.up() #팬을 들고
t.goto(-200,-100) #원하는 곳으로 이동
t.down() #팬을 다운
t.write("goto" + str(t.position())) #좌표를 찍어주는 함
t.circle(50) #해당 위치로 옮겨진 팬은 그림을 그린다.
t.hideturtle() #해당 커서를 감추는 함수
#test
import turtle
t =turtle.Turtle()
t.shape("turtle")

t.up()
#팬을 현재 들려 있는 상태이다.
t.forward(-200) #goto와 다르게 x,y를 따로 작성해서 움직여야 한다.
t.right(90)
t.forward(100) #goto와 다르게 x,y를 따로 작성해서 움직여야 한다.
t.down()
#팬이 현재 다운 되어 있다.

t.write("forward" + str(t.position()))
t.circle(50)
t.hideturtle()

goto와 forward의 차이는 xy좌표값을 한번에 작성 할 수 있냐 없냐 차이이다.

색상을 이용한 for문

import turtle
import random
turtle.colormode(255) #r,g,b의 fillcolor를 사용하기 위해선 해당 구문이 필요하다.
t = turtle.Turtle()
t.speed(8)

radius = 150

for n in range(5): #(1,150,-30)
    r = random.randrange(256)
    g = random.randrange(256)
    b = random.randrange(256)
    t.fillcolor(r,g,b) #random값을 가지고 와서 각 fillcolor의 r,g,b값에 부여한다.
    t.begin_fill() #색상을 체우기 위해서는 해당 구문이 필요하다.
    
    t.circle(radius)
    t.end_fill()
    radius -= 30

기본적인 원형에 색상 넣기

import turtle
import random

turtle.colormode(255)
t = turtle.Turtle()
t.speed(8)

t.fillcolor(50,150,50)
t.begin_fill()
t.circle(150) #circle이 마지막에 들어가야한다.
t.end_fill()

해당 명령문의 순서가 중요하다. 그림을 그리는 circle이 먼저 실행되면 안된다. 실행이 되기전에 먼저 생상을 체워 넣고 진행이 되어야한다.

for문을 통한 다양한 합


#!!Notice!! =? 10까지의 합을 구하는 것이다.
sum = 0
for n in range(11):
    print(n, end = " ")
    sum += n
print("The sum = " + str(sum))#0 1 2 3 4 5 6 7 8 9 10 The sum = 55

sum = 0

for n in range(1,11,2): #+2만큼의 숫자 들의 합 
    print(n, end = " ")
    sum += n
print("The sum = " + str(sum))#1 3 5 7 9 The sum = 25

HW

n = 0

while n < 5 :
    print(n, end = ' ') #0 1 2 3 4
    n += 1

print()

for n in range(9,0,-2) : #-2만큼의 숫자들만 나열
    print(n, end =' ') #9 7 5 3 1
728x90
Comments