[TIL] python_FizzBuzz, turtle grapics

정세비·2021년 5월 24일
0

test

목록 보기
9/13
post-thumbnail

FizzBuzz 문제

1에서 100까지 출력
3의 배수는 Fizz 출력
5의 배수는 Buzz 출력
3과 5의 공배수는 FizzBuzz 출력

>>> for i in range(1, 101):
	if i % 3 == 0 and i % 5 == 0:   // 또는 if i % 15 == 0:
		print('FizzBuzz')
	elif i % 3 == 0:
		print('Fizz')
	elif i % 5 == 0:
		print('Buzz')
	else:
		print(i)

// ★ 또는 한 코드를 아래와 같이 축약할 수 있음 (코드 골프 방식)

>>> for i in range(1, 101):
	print('Fizz' * (i % 3 ==0) + 'Buzz' * (i % 5 == 0) or i)

📌 코드골프 방식

  • 문자열을 곱하면 문자열 반복
  • 문자열을 더하면 두 문자열 연결
  • 문자열 * True : 문자열 출력
  • 문자열 * False : 미출력

터틀그래픽스 그림그리기

import.turtle as t
t.shape('turtle') 로 불러오기

코드내용
t.forward( ) 또는 t.fd( )입력값만큼 앞으로 이동
t.backward( ) 또는 t.bk( )입력값만큼 뒤로 이동
t.right( ) 또는 t.rt( )입력값만큼 오른쪽으로 회전 (각도)
t.left( ) 또는 t.lt( )입력값만큼 왼쪽으로 회전 (각도)
t.circle( )입력값(반지름)인 원 그리기
t.color( )'blue' , 'red' 등
t.speed( )'fastest' 또는 0 / 'fast' 또는 10, / 'normal' 또는 6
'slow' 또는 3 / 'slowest' 또는 1

1. 사각형 그리기

t.fd(100)
t.rt(90)
t.fd(100)
t.rt(90)
t.fd(100)
t.rt(90)
t.fd(100)

// 반복문 사용
for i in range(4):
  t.fd(100)
  t.rt(90)

2 오각형 그리기

import turtle as t

t.shape('turtle')
for i in range(5):
    t.fd(100)
    t.rt(360 / 5)

3. 다각형 그리기

import turtle as t

n = int(input())
t.shape('turtle')
for i in range(n):
    t.fd(100)
    t.rt(360 / n)

4. 원 그리기

import turtle as t

t.shape('turtle')
t.circle(120)

5. 원 반복 그리기

import turtle as t

n = 50                       // 원을 n번 그림
t.shape('turtle')
t.speed('fastest')           // 속도
for i in range(n):          
    t.circle(120)            // 반지름 120
    t.right(360 / n)         // 오른쪽으로 360/n 도 회전

6. 선으로 복잡한 무늬 그리기

import turtle as t

t.shape('turtle')
t.speed('fastest')
for i in range(300):
    t.fd(i)
    t.rt(91)

import turtle as t

t.shape('turtle')
t.speed('fastest')
for i in range(300):
    t.fd(i)
    t.rt(90)

7. 색칠하기

import turtle as t

n = int(input())
t.shape('turtle')
t.color('blue')
t.begin_fill()          // 색칠할 영역 시작
for i in range(n):
    t.fd(100)
    t.rt(360 / n)      // 360을 n으로 나눠 각도 구하기
t.end_fill()           // 색칠할 영역 끝
profile
파주

0개의 댓글