본문 바로가기

Programming30

LOGO : 별 그리기(Drawing Star) - 001 1. Introduction FMSLogo 프로그램을 이용해서 Logo 언어로 별을 그려보겠습니다. 기초 학습용이라 코드 중복 문제는 고려하지 않습니다. 2. Code to goLeft ;; // home call시 방향은 어디.. pu home lt 90 fd 490 rt 180 pd end to main ;; // Q. 1. 첫 줄의 rt 90의 효용 가치를 평가하세요. cs st rt 90 goLeft repeat 5 [ star1 pu fd 150 pd ] ht end to star1 ;; // 더 단축 가능할까.. repeat 5 [ fd 50 lt 72 fd 50 rt 144 ] end 3. 결과 Result 4. 첨부 파일 Files 간단한 코드라 첨부 파일은 생략. Logo에서는 main .. 2023. 9. 27.
[ L2P ] 재귀 : 다른 방식의 루프 반복의 다른 방법, 재귀를 연습해보겠습니다. import turtle t1 = turtle.Pen() count = 0 def box1(): for i in range(4): t1.fd(50) t1.rt(90) def run(): global count box1() t1.rt(90) t1.pu() t1.fd(70) t1.lt(75) t1.pd() count = count + 1 if count 2023. 9. 24.
[ L2P ] random Module 1. 개요 이번에는 다용도로 사용되는 랜덤random 모듈Module에 대해 살펴보겠다. random 관련 기능을 사용하려면 먼저 다음처럼 프로그램 시작부분에 random 모듈을 불러와야 한다. import random import turtle # 이왕이면 거북이 모듈도 함께 불러온다. 이하 본문에서는 랜덤 모듈 관련 핵심적인 내용들만 간략하게 정리한다. 2. Code 랜덤 모듈 덕분에 추가로 사용할 수 있는 주요 함수들을 요약하면 다음과 같다.random.randint()random.random()random.choice()random.shuffle()random.randrange()하나씩 간략하게 살펴보자. 1) random.randint(1, 5) 1부터 5 사이의 정수 하나를 임의로 고른다. 1과.. 2023. 9. 10.
[ L2P ] OnKeyPress() 1. Introduction 모바일폰 예제. PyDroid 3에서만 테스트됨. 이번 예제에서는 turtle.onkeypress() 함수 사용법을 살펴보자. 완성된 프로그램에서 스페이스키를 여러번 눌러보면 된다. 스마트폰에서는 스페이스 키 대신 손가락으로 화면 여기 저기 '터치'할 것. ^.^; 2. Code import turtle import random win1 = turtle.Screen() win1.tracer(2, 50) # 마름모꼴은 거의 생겨나지 않음. 그리기 속도에 관여한다. # win1.delay(0) # 스마트폰 속도 문제로 약간의 마름모꼴 생겨남. # 너무 빠르게 연속으로 그릴 때에만. t1 = turtle.Pen() def setupWindow(): win1.setup(1200, 9.. 2023. 8. 20.