λ³Έλ¬Έ λ°”λ‘œκ°€κΈ°
μΉ΄ν…Œκ³ λ¦¬ μ—†μŒ

별찍기 예제 (Forλ¬Έ μ—°μŠ΅)

by 5566 2023. 11. 12.

λͺ©μ°¨:

  1. 별찍기 예제 μ†Œκ°œ
  2. 별찍기 예제 μ‹€ν–‰ 방법
  3. 별찍기 예제의 νŒ¨ν„΄ 뢄석
  4. 별찍기 예제의 ν™œμš© μ˜ˆμ‹œ
  5. 별찍기 예제의 μ‘μš©κ³Ό ν™•μž₯

별찍기 예제 μ†Œκ°œ

별찍기 μ˜ˆμ œλŠ” ν”„λ‘œκ·Έλž˜λ°μ—μ„œ κ°€μž₯ κΈ°λ³Έμ μ΄λ©΄μ„œλ„ μž¬λ―ΈμžˆλŠ” 예제 쀑 ν•˜λ‚˜μž…λ‹ˆλ‹€. 이 μ˜ˆμ œμ—μ„œλŠ” for문을 ν™œμš©ν•˜μ—¬ 별을 μ°λŠ” νŒ¨ν„΄μ„ μƒμ„±ν•˜λŠ” 방법을 λ‹€λ£¨κ²Œ λ©λ‹ˆλ‹€. 이λ₯Ό 톡해 for문의 μ‚¬μš©λ²•κ³Ό νŒ¨ν„΄ 뢄석에 λŒ€ν•œ 이해λ₯Ό 높일 수 μžˆμŠ΅λ‹ˆλ‹€.

별찍기 예제 μ‹€ν–‰ 방법

별찍기 예제λ₯Ό μ‹€ν–‰ν•˜κΈ° μœ„ν•΄μ„œλŠ” 개발 ν™˜κ²½μ΄ ν•„μš”ν•©λ‹ˆλ‹€. 일반적으둜 ν…μŠ€νŠΈ 에디터와 μ‹€ν–‰ κ°€λŠ₯ν•œ ν”„λ‘œκ·Έλž˜λ° μ–Έμ–΄ ν™˜κ²½μ΄ ν•„μš”ν•©λ‹ˆλ‹€. 예λ₯Ό λ“€μ–΄, Pythonμ΄λΌλŠ” ν”„λ‘œκ·Έλž˜λ° μ–Έμ–΄ ν™˜κ²½μ—μ„œλŠ” λ‹€μŒκ³Ό 같은 μ½”λ“œλ₯Ό μž‘μ„±ν•˜κ³  μ‹€ν–‰ν•©λ‹ˆλ‹€.

for i in range(5):
    print("*" * (i+1))

μœ„μ˜ μ½”λ“œλ₯Ό μ‹€ν–‰ν•˜λ©΄, 별을 μ°λŠ” λ‹€μŒκ³Ό 같은 νŒ¨ν„΄μ„ 얻을 수 μžˆμŠ΅λ‹ˆλ‹€.

*
**
***
****
*****

별찍기 예제의 νŒ¨ν„΄ 뢄석

별찍기 μ˜ˆμ œμ—μ„œ μƒμ„±λ˜λŠ” λ³„μ˜ νŒ¨ν„΄μ„ λΆ„μ„ν•΄λ³΄κ² μŠ΅λ‹ˆλ‹€. μœ„μ˜ μ˜ˆμ œμ—μ„œλŠ” for문을 ν™œμš©ν•˜μ—¬ 반볡적인 νŒ¨ν„΄μ„ μƒμ„±ν•©λ‹ˆλ‹€. 첫 번째 μ€„μ—μ„œλŠ” 별이 1개, 두 번째 μ€„μ—μ„œλŠ” 별이 2개, μ„Έ 번째 μ€„μ—μ„œλŠ” 별이 3개, ... 이런 μ‹μœΌλ‘œ λ³„μ˜ κ°œμˆ˜κ°€ ν•œ 쀄씩 λŠ˜μ–΄λ‚©λ‹ˆλ‹€. μ΄λŸ¬ν•œ νŒ¨ν„΄μ„ λ§Œλ“€κΈ° μœ„ν•΄ forλ¬Έμ—μ„œλŠ” 반볡 λ³€μˆ˜λ₯Ό ν™œμš©ν•˜μ—¬ λ³„μ˜ 개수λ₯Ό μ‘°μ ˆν•˜κ³  μžˆμŠ΅λ‹ˆλ‹€.

별찍기 예제의 ν™œμš© μ˜ˆμ‹œ

별찍기 μ˜ˆμ œλŠ” ν”„λ‘œκ·Έλž˜λ°μ—μ„œ ꡉμž₯히 λ‹€μ–‘ν•œ 상황에 ν™œμš©λ  수 μžˆμŠ΅λ‹ˆλ‹€. 예λ₯Ό λ“€μ–΄, 별찍기λ₯Ό ν™œμš©ν•˜μ—¬ λ‹€μ–‘ν•œ λ„ν˜•μ„ 그릴 수 μžˆμŠ΅λ‹ˆλ‹€. λ˜ν•œ, μ΄λŸ¬ν•œ 별찍기 μ˜ˆμ œλŠ” ν”„λ‘œκ·Έλž˜λ° ν•™μŠ΅μ—μ„œ 반볡문의 ν™œμš©λ²•μ„ μ΅νžˆλŠ” 데에도 큰 도움이 λ©λ‹ˆλ‹€. 별찍기 예제λ₯Ό 톡해 λ³΅μž‘ν•œ νŒ¨ν„΄μ„ ν”„λ‘œκ·Έλž˜λ°μ μœΌλ‘œ μƒμ„±ν•˜λŠ” λŠ₯λ ₯을 ν–₯μƒμ‹œν‚¬ 수 μžˆμŠ΅λ‹ˆλ‹€.

별찍기 예제의 μ‘μš©κ³Ό ν™•μž₯

별찍기 μ˜ˆμ œλŠ” λ‹¨μˆœν•œ νŒ¨ν„΄ 생성을 λ„˜μ–΄μ„œ μ‘μš©κ³Ό ν™•μž₯이 κ°€λŠ₯ν•©λ‹ˆλ‹€. λ³„μ˜ λͺ¨μ–‘, 크기, 배치 등을 μ‘°μ ˆν•¨μœΌλ‘œμ¨ λ‹€μ–‘ν•œ λ””μžμΈμ„ κ΅¬ν˜„ν•  수 μžˆμŠ΅λ‹ˆλ‹€. λ˜ν•œ, 별찍기 μ˜ˆμ œμ—μ„œλŠ” for문을 μ΄μš©ν•΄μ„œ νŒ¨ν„΄μ„ μƒμ„±ν•˜κ³  μžˆμ§€λ§Œ, λ‹€λ₯Έ λ°˜λ³΅λ¬Έμ΄λ‚˜ 쑰건문과 κ²°ν•©ν•˜μ—¬ λ”μš± λ³΅μž‘ν•œ νŒ¨ν„΄μ„ κ΅¬ν˜„ν•˜λŠ” 것도 κ°€λŠ₯ν•©λ‹ˆλ‹€. 이λ₯Ό 톡해 ν”„λ‘œκ·Έλž˜λ°μ  사고λ ₯κ³Ό 창의λ ₯을 ν–₯μƒμ‹œν‚¬ 수 μžˆμŠ΅λ‹ˆλ‹€.

1. 별찍기 예제 μ†Œκ°œ

별찍기 μ˜ˆμ œλŠ” ν”„λ‘œκ·Έλž˜λ°μ—μ„œ κ°€μž₯ κΈ°λ³Έμ μ΄λ©΄μ„œλ„ μž¬λ―ΈμžˆλŠ” 예제 쀑 ν•˜λ‚˜μž…λ‹ˆλ‹€. 이 μ˜ˆμ œλŠ” 주어진 κ·œμΉ™μ— 따라 별을 μ°λŠ” νŒ¨ν„΄μ„ μƒμ„±ν•˜λŠ” 방법을 λ‹€λ£¨κ²Œ λ©λ‹ˆλ‹€. 이λ₯Ό 톡해 반볡문과 쑰건문의 ν™œμš© 방법, 그리고 νŒ¨ν„΄ 뢄석에 λŒ€ν•œ 이해λ₯Ό 높일 수 μžˆμŠ΅λ‹ˆλ‹€.

별찍기 μ˜ˆμ œλŠ” 주둜 for문을 ν™œμš©ν•˜μ—¬ κ΅¬ν˜„λ©λ‹ˆλ‹€. for문은 주어진 λ²”μœ„μ— 따라 반볡적인 연산을 μˆ˜ν–‰ν•˜λŠ” μ œμ–΄λ¬ΈμœΌλ‘œ, 별찍기 μ˜ˆμ œμ—μ„œλŠ” μ—¬λŸ¬ μ€„μ˜ 별을 좜λ ₯ν•˜κΈ° μœ„ν•΄ μ‚¬μš©λ©λ‹ˆλ‹€. λ°˜λ³΅λ¬Έμ„ ν™œμš©ν•˜μ—¬ νŒ¨ν„΄μ„ μƒμ„±ν•˜κ³  좜λ ₯ν•¨μœΌλ‘œμ¨ 별찍기 μ˜ˆμ œλŠ” ν”„λ‘œκ·Έλž˜λ°μ˜ 기초 κ°œλ…μ„ 읡히고, μ½”λ“œ μž‘μ„± λŠ₯λ ₯을 ν–₯μƒμ‹œν‚¬ 수 μžˆμŠ΅λ‹ˆλ‹€.

예λ₯Ό λ“€μ–΄, μ•„λž˜μ˜ μ˜ˆμ œλŠ” for문을 μ‚¬μš©ν•˜μ—¬ μ§€μ •λœ λ²”μœ„ λ‚΄μ—μ„œ 별을 좜λ ₯ν•˜λŠ” κ°„λ‹¨ν•œ 별찍기 μ˜ˆμ œμž…λ‹ˆλ‹€. 이 μ˜ˆμ œλŠ” 별 찍기의 기본적인 ν˜•νƒœλ₯Ό 보여주며, λ‚˜μ€‘μ— λ‹€μ–‘ν•œ νŒ¨ν„΄μ„ μƒμ„±ν•˜λŠ” 데에도 ν™œμš©λ  수 μžˆμŠ΅λ‹ˆλ‹€.

for i in range(5):
    print("*")

μœ„μ˜ μ½”λ“œλ₯Ό μ‹€ν–‰ν•˜λ©΄, λ‹€μŒκ³Ό 같은 별 νŒ¨ν„΄μ΄ 좜λ ₯λ©λ‹ˆλ‹€.

*
*
*
*
*

별찍기 μ˜ˆμ œλŠ” μ΄ˆλ³΄μžλΆ€ν„° μ „λ¬Έκ°€κΉŒμ§€ λͺ¨λ‘μ—κ²Œ μœ μš©ν•˜κ³  μž¬λ―ΈμžˆλŠ” ν”„λ‘œκ·Έλž˜λ° μ—°μŠ΅ κ³Όμ œμž…λ‹ˆλ‹€. μ½”λ“œ μž‘μ„± λŠ₯λ ₯κ³Ό 문제 ν•΄κ²° λŠ₯λ ₯을 ν–₯μƒμ‹œν‚€λ©°, μ°½μ˜μ„±μ„ κ°œλ°œν•˜λŠ” 데에도 도움이 λ©λ‹ˆλ‹€.

2. 별찍기 예제 μ‹€ν–‰ 방법

별찍기 예제λ₯Ό μ‹€ν–‰ν•˜κΈ° μœ„ν•΄μ„œλŠ” 개발 ν™˜κ²½μ΄ ν•„μš”ν•©λ‹ˆλ‹€. 일반적으둜 ν…μŠ€νŠΈ 에디터와 μ‹€ν–‰ κ°€λŠ₯ν•œ ν”„λ‘œκ·Έλž˜λ° μ–Έμ–΄ ν™˜κ²½μ΄ ν•„μš”ν•©λ‹ˆλ‹€. μ•„λž˜λŠ” Python μ–Έμ–΄ ν™˜κ²½μ—μ„œ 별찍기 예제λ₯Ό μ‹€ν–‰ν•˜λŠ” λ°©λ²•μž…λ‹ˆλ‹€.

  1. ν…μŠ€νŠΈ 에디터λ₯Ό μ—΄μ–΄ μƒˆλ‘œμš΄ νŒŒμΌμ„ μƒμ„±ν•©λ‹ˆλ‹€.
  2. μ•„λž˜μ˜ μ½”λ“œλ₯Ό λ³΅μ‚¬ν•˜μ—¬ νŒŒμΌμ— λΆ™μ—¬λ„£κΈ°ν•©λ‹ˆλ‹€.
for i in range(5):
    print("*" * (i+1))
  1. νŒŒμΌμ„ μ €μž₯ν•œ ν›„, μ‹€ν–‰ κ°€λŠ₯ν•œ Python 파일(.py)둜 μ €μž₯ν•©λ‹ˆλ‹€.
  2. μ €μž₯된 νŒŒμΌμ„ μ‹€ν–‰ν•©λ‹ˆλ‹€.

μœ„μ˜ μ½”λ“œλ₯Ό μ‹€ν–‰ν•˜λ©΄, λ°˜λ³΅λ¬Έμ„ μ‚¬μš©ν•˜μ—¬ 별을 μ°λŠ” νŒ¨ν„΄μ΄ 좜λ ₯λ©λ‹ˆλ‹€. λ³„μ˜ κ°œμˆ˜λŠ” ν•œ 쀄씩 λŠ˜μ–΄λ‚˜λŠ” ν˜•νƒœλ‘œ 좜λ ₯λ˜λŠ”λ°, μ΄λŠ” 반볡문의 반볡 νšŸμˆ˜μ— 따라 κ²°μ •λ©λ‹ˆλ‹€.

별찍기 μ˜ˆμ œμ—μ„œλŠ” for문을 ν™œμš©ν•˜μ—¬ 반볡적인 νŒ¨ν„΄μ„ μƒμ„±ν•©λ‹ˆλ‹€. 첫 번째 μ€„μ—μ„œλŠ” 별이 1개, 두 번째 μ€„μ—μ„œλŠ” 별이 2개, μ„Έ 번째 μ€„μ—μ„œλŠ” 별이 3개... 이런 μ‹μœΌλ‘œ ν•œ 쀄씩 λ³„μ˜ κ°œμˆ˜κ°€ μ¦κ°€ν•©λ‹ˆλ‹€. μ΄λŸ¬ν•œ νŒ¨ν„΄μ„ λ§Œλ“€κΈ° μœ„ν•΄ forλ¬Έμ—μ„œλŠ” 반볡 λ³€μˆ˜λ₯Ό ν™œμš©ν•˜μ—¬ λ³„μ˜ 개수λ₯Ό μ‘°μ ˆν•˜κ³  μžˆμŠ΅λ‹ˆλ‹€.

별찍기 예제λ₯Ό μ‹€ν–‰ν•˜λ©΄, λ‹€μ–‘ν•œ 별 νŒ¨ν„΄μ„ 얻을 수 μžˆμŠ΅λ‹ˆλ‹€. ν”„λ‘œκ·Έλž˜λ° 언어와 κ°œλ°œν™˜κ²½μ— 따라 μ‹€ν–‰ 방법이 λ‹€λ₯Ό 수 μžˆμœΌλ‹ˆ ν•΄λ‹Ή 언어와 ν™˜κ²½μ— λ§žλŠ” μ‹€ν–‰ 방법을 μ°Ύμ•„ μ§„ν–‰ν•΄μ£Όμ„Έμš”. 별찍기 μ˜ˆμ œλŠ” ν”„λ‘œκ·Έλž˜λ° ν•™μŠ΅μ—μ„œ 반볡문의 ν™œμš©λ²•μ„ μ΅νžˆλŠ” 데에도 큰 도움이 되며, νŒ¨ν„΄ 생성과 문제 ν•΄κ²° λŠ₯λ ₯을 ν–₯μƒμ‹œν‚€λŠ” 데에도 ν™œμš©λ  수 μžˆμŠ΅λ‹ˆλ‹€.

3. 별찍기 예제의 νŒ¨ν„΄ 뢄석

별찍기 μ˜ˆμ œλŠ” 주어진 κ·œμΉ™μ— 따라 별을 μ°λŠ” νŒ¨ν„΄μ„ μƒμ„±ν•˜λŠ”λ°, 이λ₯Ό λΆ„μ„ν•˜μ—¬ μ–΄λ–»κ²Œ νŒ¨ν„΄μ΄ ν˜•μ„±λ˜λŠ”μ§€ μ•Œμ•„λ³Ό 수 μžˆμŠ΅λ‹ˆλ‹€. μ•„λž˜μ˜ μ½”λ“œλ₯Ό μ˜ˆμ‹œλ‘œ λ“€μ–΄ νŒ¨ν„΄μ„ λΆ„μ„ν•΄λ³΄κ² μŠ΅λ‹ˆλ‹€.

for i in range(5):
    print("*" * (i+1))

μœ„μ˜ μ½”λ“œμ—μ„œ λ³„μ˜ κ°œμˆ˜λŠ” i λ³€μˆ˜μ— μ˜ν•΄ κ²°μ •λ©λ‹ˆλ‹€. i λ³€μˆ˜λŠ” λ°˜λ³΅λ¬Έμ— μ˜ν•΄ 0λΆ€ν„° 순차적으둜 μ¦κ°€ν•˜λ©° 반볡되고, 이λ₯Ό ν™œμš©ν•˜μ—¬ λ³„μ˜ 개수λ₯Ό μ‘°μ ˆν•©λ‹ˆλ‹€.

첫 번째 μ€„μ—μ„œλŠ” i 값이 0 μ΄λ―€λ‘œ, 별이 1개 좜λ ₯λ©λ‹ˆλ‹€. print("*" * (i+1))의 결과둜 "*"이 좜λ ₯λ˜λŠ”λ°, (i+1)은 1μ΄λ―€λ‘œ, "*"이 1번 좜λ ₯λ©λ‹ˆλ‹€.

두 번째 μ€„μ—μ„œλŠ” i 값이 1μ΄λ―€λ‘œ, 별이 2개 좜λ ₯λ©λ‹ˆλ‹€. (i+1)이 2μ΄λ―€λ‘œ, "*"이 2번 좜λ ₯λ©λ‹ˆλ‹€.

이와 같은 λ°©μ‹μœΌλ‘œ μ„Έ 번째 μ€„μ—μ„œλŠ” 3개, λ„€ 번째 μ€„μ—μ„œλŠ” 4개, λ‹€μ„― 번째 μ€„μ—μ„œλŠ” 5개의 별이 μ°νž™λ‹ˆλ‹€. i 값이 증가함에 따라 λ³„μ˜ κ°œμˆ˜λ„ μ¦κ°€ν•˜λŠ” νŒ¨ν„΄μ„ λ³Ό 수 μžˆμŠ΅λ‹ˆλ‹€.

νŒ¨ν„΄ 뢄석을 톡해 별찍기 예제의 κ·œμΉ™μ„ μ΄ν•΄ν•˜κ³  λ‚˜λ©΄, λ‹€μ–‘ν•œ νŒ¨ν„΄μ„ 생성할 수 μžˆμŠ΅λ‹ˆλ‹€. 숫자의 λ²”μœ„λ₯Ό λ³€κ²½ν•˜κ±°λ‚˜ 별 λŒ€μ‹  λ‹€λ₯Έ 문자λ₯Ό μ‚¬μš©ν•˜κ³ , 반볡문의 증감폭을 μ‘°μ ˆν•˜μ—¬ μ›ν•˜λŠ” ν˜•νƒœμ˜ νŒ¨ν„΄μ„ 생성할 μˆ˜λ„ μžˆμŠ΅λ‹ˆλ‹€. μ΄λŸ¬ν•œ νŒ¨ν„΄ 뢄석은 반볡문과 쑰건문을 효과적으둜 ν™œμš©ν•˜μ—¬ λ³΅μž‘ν•œ νŒ¨ν„΄μ˜ 생성과 문제 해결을 ν•  수 있게 λ„μ™€μ€λ‹ˆλ‹€.

4. 별찍기 예제의 ν™œμš© μ˜ˆμ‹œ

별찍기 μ˜ˆμ œλŠ” ν”„λ‘œκ·Έλž˜λ° ν•™μŠ΅μ—μ„œ 반볡문의 ν™œμš©λ²•μ„ μ΅νžˆλŠ”λ° μœ μš©ν•©λ‹ˆλ‹€. λ˜ν•œ, νŒ¨ν„΄ 생성과 문제 ν•΄κ²°λ ₯을 ν–₯μƒμ‹œν‚€λŠ” 데에도 ν™œμš©λ  수 μžˆμŠ΅λ‹ˆλ‹€. μ΄λ²ˆμ—λŠ” 별찍기 예제의 ν™œμš© μ˜ˆμ‹œλ₯Ό μ•Œμ•„λ³΄κ² μŠ΅λ‹ˆλ‹€.

예λ₯Ό λ“€μ–΄, μ•„λž˜μ™€ 같은 별 λͺ¨μ–‘을 좜λ ₯ν•˜λŠ” λ¬Έμ œκ°€ μžˆλ‹€κ³  κ°€μ •ν•΄λ΄…μ‹œλ‹€.

*****
 ****
  ***
   **
    *

μœ„μ˜ λͺ¨μ–‘은 μ—­μ‚Όκ°ν˜• λͺ¨μ–‘μœΌλ‘œ, 곡백의 κ°œμˆ˜μ™€ λ³„μ˜ κ°œμˆ˜κ°€ μ„œλ‘œ λ°˜λŒ€λ‘œ μ¦κ°€ν•˜λŠ” νŒ¨ν„΄μž…λ‹ˆλ‹€. μ΄λŸ¬ν•œ νŒ¨ν„΄μ„ μƒμ„±ν•˜κΈ° μœ„ν•΄, 별찍기 예제의 μ½”λ“œλ₯Ό λ‹€μŒκ³Ό 같이 λ³€κ²½ν•˜μ—¬ ν™œμš©ν•  수 μžˆμŠ΅λ‹ˆλ‹€.

for i in range(5):
    print(" " * i + "*" * (5-i))

μœ„μ˜ μ½”λ“œμ—μ„œλŠ” 곡백의 κ°œμˆ˜μ™€ λ³„μ˜ 개수λ₯Ό μ‘°μ ˆν•˜κΈ° μœ„ν•΄, 각각 i와 (5-i)λ₯Ό μ‚¬μš©ν•˜κ³  μžˆμŠ΅λ‹ˆλ‹€. 첫 번째 μ€„μ—μ„œλŠ” 곡백이 0개, 별이 5개둜 좜λ ₯λ˜λ„λ‘ ν•˜κ³ , 두 번째 μ€„μ—μ„œλŠ” 곡백이 1개, 별이 4개둜 좜λ ₯λ˜λŠ” μ‹μž…λ‹ˆλ‹€.

νŒ¨ν„΄ 뢄석을 톡해 μ΄ν•΄ν•œ 별찍기 예제의 원리λ₯Ό μ‘μš©ν•˜μ—¬ μ›ν•˜λŠ” νŒ¨ν„΄μ„ 좜λ ₯ν•  수 μžˆμŠ΅λ‹ˆλ‹€. λ³„μ˜ κ°œμˆ˜μ™€ 곡백의 개수λ₯Ό μ‘°μ ˆν•˜λŠ” 방법을 읡힘으둜써 λ‹€μ–‘ν•œ λͺ¨μ–‘κ³Ό νŒ¨ν„΄μ„ 생성할 수 μžˆμŠ΅λ‹ˆλ‹€. 이λ₯Ό 톡해 ν”„λ‘œκ·Έλž˜λ°μ—μ„œ 문제λ₯Ό ν•΄κ²°ν•˜λŠ” 데에 μžˆμ–΄ λ‹€μ–‘ν•œ νŒ¨ν„΄μ˜ 생성과 λ³€ν˜•μ„ ν•  수 μžˆλŠ” λŠ₯λ ₯을 ν–₯μƒμ‹œν‚¬ 수 μžˆμŠ΅λ‹ˆλ‹€.

5. 별찍기 예제의 μ‘μš©κ³Ό ν™•μž₯

별찍기 μ˜ˆμ œλŠ” ν”„λ‘œκ·Έλž˜λ°μ—μ„œ 반볡문과 쑰건문을 μ‘μš©ν•˜μ—¬ λ‹€μ–‘ν•œ νŒ¨ν„΄μ„ μƒμ„±ν•˜λŠ” 데에 μ‚¬μš©ν•  수 μžˆμŠ΅λ‹ˆλ‹€. μ΄λ²ˆμ—λŠ” 별찍기 예제λ₯Ό μ‘μš©ν•˜κ³  ν™•μž₯ν•˜λŠ” λͺ‡ 가지 방법에 λŒ€ν•΄ μ•Œμ•„λ³΄κ² μŠ΅λ‹ˆλ‹€.

5.1 λ‹€μ–‘ν•œ 문자 μ‚¬μš©ν•˜κΈ°

별찍기 μ˜ˆμ œμ—μ„œλŠ” 별을 μ‚¬μš©ν•˜μ—¬ νŒ¨ν„΄μ„ μƒμ„±ν•˜μ˜€μ§€λ§Œ, λ‹€λ₯Έ 문자λ₯Ό μ‚¬μš©ν•˜μ—¬ νŒ¨ν„΄μ„ 생성할 μˆ˜λ„ μžˆμŠ΅λ‹ˆλ‹€. 예λ₯Ό λ“€μ–΄, νŒ¨ν„΄μ„ "_" 문자둜 μƒμ„±ν•˜κ³  μ‹Άλ‹€λ©΄ λ‹€μŒκ³Ό 같이 μ½”λ“œλ₯Ό λ³€κ²½ν•˜λ©΄ λ©λ‹ˆλ‹€.

for i in range(5):
    print("_" * (i+1))

μœ„μ˜ μ½”λ“œλŠ” 첫 번째 μ€„μ—μ„œλŠ” ""이 1개 좜λ ₯되고, 두 번째 μ€„μ—μ„œλŠ” ""이 2개 좜λ ₯λ˜λŠ” λ°©μ‹μœΌλ‘œ νŒ¨ν„΄μ„ μƒμ„±ν•©λ‹ˆλ‹€.

λ‹€μ–‘ν•œ 문자λ₯Ό μ‚¬μš©ν•˜μ—¬ 별찍기 예제λ₯Ό μ‘μš©ν•˜λ©΄ λ‹€μ–‘ν•œ νŒ¨ν„΄μ„ 생성할 수 μžˆμŠ΅λ‹ˆλ‹€. 이λ₯Ό 톡해 ν”„λ‘œκ·Έλž˜λ°μ—μ„œ ν‘œν˜„ν•  수 μžˆλŠ” λ‹€μ–‘ν•œ ν˜•νƒœμ˜ λͺ¨μ–‘κ³Ό νŒ¨ν„΄μ„ 배울 수 μžˆμŠ΅λ‹ˆλ‹€.

5.2 숫자 λ²”μœ„ λ³€κ²½ν•˜κΈ°

별찍기 μ˜ˆμ œμ—μ„œλŠ” 반볡문의 λ²”μœ„λ₯Ό 톡해 λ³„μ˜ 개수λ₯Ό μ‘°μ ˆν•˜μ˜€μ§€λ§Œ, 이 λ²”μœ„λ₯Ό λ³€κ²½ν•˜μ—¬ λ‹€μ–‘ν•œ λͺ¨μ–‘을 생성할 μˆ˜λ„ μžˆμŠ΅λ‹ˆλ‹€. 예λ₯Ό λ“€μ–΄, 1λΆ€ν„° 10κΉŒμ§€μ˜ 숫자 μ€‘μ—μ„œ ν™€μˆ˜λ§Œμ„ μ‚¬μš©ν•˜μ—¬ λͺ¨μ–‘을 μƒμ„±ν•˜κ³  μ‹Άλ‹€λ©΄ λ‹€μŒκ³Ό 같이 μ½”λ“œλ₯Ό λ³€κ²½ν•˜λ©΄ λ©λ‹ˆλ‹€.

for i in range(1, 11, 2):
    print("*" * i)

μœ„μ˜ μ½”λ“œλŠ” 첫 번째 μ€„μ—μ„œλŠ” "*"이 1개 좜λ ₯되고, μ„Έ 번째 μ€„μ—μ„œλŠ” "*"이 3개 좜λ ₯λ˜λŠ” λ°©μ‹μœΌλ‘œ νŒ¨ν„΄μ„ μƒμ„±ν•©λ‹ˆλ‹€.

숫자의 λ²”μœ„λ₯Ό λ³€κ²½ν•˜μ—¬ 별찍기 예제λ₯Ό μ‘μš©ν•˜λ©΄ λ‹€μ–‘ν•œ ν˜•νƒœμ˜ νŒ¨ν„΄μ„ 생성할 수 μžˆμŠ΅λ‹ˆλ‹€. 이λ₯Ό 톡해 ν”„λ‘œκ·Έλž˜λ°μ—μ„œ 문제λ₯Ό λ‹€μ–‘ν•œ κ΄€μ μ—μ„œ ν•΄κ²°ν•  수 있게 되며, 문제 ν•΄κ²°λ ₯을 ν–₯μƒμ‹œν‚¬ 수 μžˆμŠ΅λ‹ˆλ‹€.

5.3 별 λ°˜μ „ν•˜κΈ°

별찍기 μ˜ˆμ œμ—μ„œλŠ” 별을 μ°λŠ” νŒ¨ν„΄μ„ μƒμ„±ν•˜μ˜€μ§€λ§Œ, λ°˜λŒ€λ‘œ 곡백을 μ‚¬μš©ν•˜μ—¬ λ³„μ˜ μœ„μΉ˜λ₯Ό λ°˜μ „μ‹œν‚¬ μˆ˜λ„ μžˆμŠ΅λ‹ˆλ‹€. 예λ₯Ό λ“€μ–΄, μ•„λž˜μ™€ 같은 λͺ¨μ–‘을 μƒμ„±ν•˜κ³  μ‹Άλ‹€λ©΄ λ‹€μŒκ³Ό 같이 μ½”λ“œλ₯Ό λ³€κ²½ν•˜λ©΄ λ©λ‹ˆλ‹€.

    *
   **
  ***
 ****
*****
for i in range(5):
    print(" " * (4-i) + "*" * (i+1))

μœ„μ˜ μ½”λ“œλŠ” 첫 번째 μ€„μ—μ„œλŠ” 곡백이 4개, 별이 1개 좜λ ₯되고, λ‹€μ„― 번째 μ€„μ—μ„œλŠ” 곡백이 0개, 별이 5개 좜λ ₯λ˜λŠ” λ°©μ‹μœΌλ‘œ νŒ¨ν„΄μ„ μƒμ„±ν•©λ‹ˆλ‹€.

별찍기 예제λ₯Ό μ‘μš©ν•˜μ—¬ λ³„μ˜ μœ„μΉ˜λ₯Ό λ°˜μ „μ‹œν‚€λ©΄ λ‹€μ–‘ν•œ ν˜•νƒœμ˜ νŒ¨ν„΄μ„ 생성할 수 μžˆμŠ΅λ‹ˆλ‹€. 이λ₯Ό 톡해 ν”„λ‘œκ·Έλž˜λ°μ—μ„œ λ³΅μž‘ν•œ ν˜•νƒœμ˜ λͺ¨μ–‘κ³Ό νŒ¨ν„΄μ„ 생성할 수 있게 되며, 창의적인 문제 ν•΄κ²°λ ₯을 ν‚€μšΈ 수 μžˆμŠ΅λ‹ˆλ‹€.

λŒ“κΈ€