본문 바로가기
Programming/LOGO

LOGO : 변수(Variables) - 3

by The Programmer 2024. 3. 14.

LOGO : 변수(Variables) - 3

 

1. Introduction

 

1) A special variable name, 'repCount'. 이 변수는 특별한 변수입니다. 뭐가 특별한가요? ^.^;

2) label command.

3) setHeading command.

4) Spiral shapes,

 

 

2. Code

 

to main
    ready1
    spiral5
    ;; ht
end

to move1
    pu 
        home
        setHeading 90
        fd repCount * 170 - 400   

        ;; fd 뒤의 표현식은 괄호로 묶어도 허용됨.
        label repCount
        setHeading 0
    pd
end

to ready1
    window home cs ppt pd st
    pu
        lt 90 fd 400 rt 90
    pd
end

to spiral1
    make "width 0
    repeat 900 [
        fd :width
        make " width :width + 0.008
        rt 5
    ]   
;; 반복 블록을 여러 줄에 걸쳐 나누어 적음. 허용됨.
end

to spiral5
    repeat 5 [ spiral1 move1 ]

    ;; 반복 블록을 한 줄에 이어서 적음. 허용됨. 내용이 많지 않을 때 편리함.
end

 

 

3. Notes

0) 'repCount' 변수는 반복 횟수를 세는 특별한 용도로 사용되는 변수입니다. 이 변수의 초기화는 언제 이루어지나요?

1) fd 100에서 100 숫자 부분에 음수값을 넣으면 어떻게 될까요? back 대신 사용해도 될까요?

2) label은 문자열도 출력할 수 있습니다. 문자열 출력 방향은? 폰트는 어떻게 결정될까요?

3) 덧셈과 곱셈 혼합 연산에서의 연산의 우선순위 문제는?

4) 반복문 repeat 4 [ ... ] 와 같이 뒷 부분 대괄호는 서로 같은 줄에 쓰지 않아도 됩니다. 단, 반복 블록의 시작을 의미하는 대괄호 시작('[') 기호는 repeat 4와 같은 줄에 적어야 합니다. 다음 예시를 참고해서 주의해서 사용하세요.

 

옳게 적은 경우 :

 

repeat 4 [ ... ]

 

repeat 4 [ ...

]

 

repeat 4 [

...

]

 

repeat 4 [

    ...

]    ;; 반복 블록에 들여쓰기 적용.

 

틀리게 적은 경우 : 아래의 경우라면 FMSLogo는 repeat 반복문에서 오류를 일으킵니다.

 

repeat 4

[ ... ]

 

repeat 4

[

...

]

 

4. 생각해 볼 문제

1) repeat 문이 2개 이상일 경우, repCount는 어떤 repeat 문과 관계될까요?

2) 중/고급 : 보다 정밀한 해상도의 Spiral shape 구현 방법은?

 

 

5. 결과

 

 

6. 첨부

 

Ch_03_Variable_Ex_003_.lgo
0.00MB

 

 

즐거운 프로그래밍!

 

^.^;

 

 

 

'Programming > LOGO' 카테고리의 다른 글

LOGO : 변수(Variables) - 5  (0) 2024.03.17
LOGO : 변수(Variables) - 4  (0) 2024.03.14
LOGO : 변수(Variables) - 2  (0) 2024.03.12
LOGO : 변수(Variables) - 1  (0) 2024.01.07
LOGO : Animation - 001  (0) 2023.10.15