๐Ÿ“š ์Šคํ„ฐ๋””/ํŒŒ์ด์ฌ ์Šคํ„ฐ๋”” ๊ฐ•์˜์ž๋ฃŒ

[3ํŒ€/๊น€๊ทœ๋ฆฌ] 4์ฐจ์‹œ ํŒŒ์ด์ฌ ์Šคํ„ฐ๋”” - ๋ฐ˜๋ณต๋ฌธ

kyuree 2023. 3. 27. 18:48

4แ„Žแ…กแ„‰แ…ต_แ„‡แ…กแ†ซแ„‡แ…ฉแ†จแ„†แ…ฎแ†ซ_แ„€แ…ชแ„Œแ…ฆแ„’แ…ขแ„‰แ…ฅแ†ฏ.docx
0.39MB
4์ฐจ์‹œ_๋ฐ˜๋ณต๋ฌธ_๊ณผ์ œ.docx
2.04MB
4์ฐจ์‹œ_๋ฐ˜๋ณต๋ฌธ_๊ฐ•์˜์•ˆ
3.30MB

 

*๋ชจ๋“  ์ถœ์ฒ˜๋Š” ๋„์„œ "๋ฐ์ดํ„ฐ ๊ณผํ•™์„ ์œ„ํ•œ ํŒŒ์ด์ฌ ํ”„๋กœ๊ทธ๋ž˜๋ฐ"์ž…๋‹ˆ๋‹ค

#1 ๋ฐ˜๋ณต๋ฌธ

๋ฐ˜๋ณต๋ฌธ(loop)์˜ ๊ฐœ๋…


  • ์ •ํ•ด์ง„ ๋™์ž‘์„ ๋ฐ˜๋ณต์  ์ˆ˜ํ–‰ํ•  ๋•Œ ์‚ฌ์šฉํ•˜๋Š” ๋ช…๋ น์–ด
  • ์ผ์ƒ์ƒํ™œ์˜ ์˜ˆ์‹œ
    • ํ•™์ƒ 100๋ช… ์„ฑ์  ์‚ฐ์ถœ
    • ์‡ผํ•‘๋ชฐ์—์„œ ์ƒํ’ˆ ์ถ”์ฒœ → ์‚ฌ์šฉ์ž์˜ ์ƒํ’ˆ ๊ตฌ๋งค ํŠน์ง•๊ณผ ๋‹ค๋ฅธ ์ƒํ’ˆ ๊ฐ„์˜ ํŠน์ง• ๋ฌดํ•œ ๋น„๊ต
  • ๊ตฌ์„ฑ
    • ๋ฐ˜๋ณต ์‹œ์ž‘ ์กฐ๊ฑด
    • ๋ฐ˜๋ณต ์ข…๋ฃŒ ์กฐ๊ฑด
    • ์ˆ˜ํ–‰ ๋ช…๋ น
    • ๊ตฌ๋ถ„๊ธฐ์ค€ : ๋“ค์—ฌ์“ฐ๊ธฐ & ๋ธ”๋กblock
    • ๋ช…๋ น ํ‚ค์›Œ๋“œ : for, while

for๋ฌธ


  • ๊ธฐ๋ณธ์ ์ธ ๋ฐ˜๋ณต๋ฌธ
  • ๊ธฐ๋ณธ ํ˜•์‹

⇒ ‘a๊ฐ€ data์•ˆ์— ์žˆ๋Š” ๊ฐ’์ผ ๋™์•ˆ ๋ฐ˜๋ณตํ•ด์„œ ๋ช…๋ น์–ด b ์‹คํ–‰ํ•˜๋ผ’

  • ๋ฐ˜๋ณต ๋ฒ”์œ„ ์ง€์ •ํ•˜์—ฌ ์ˆ˜ํ–‰
  • ๋ฒ”์œ„ ์ง€์ • ๋ฐฉ๋ฒ•
    • 1. ๋ฆฌ์ŠคํŠธ
for looper in [1,2,3,4,5]:
		print('hello')
  • in ๋‹ค์Œ์˜ ๋ฆฌ์ŠคํŠธ์˜ ๊ฐ๊ฐ์˜ ๊ฐ’์„ ํ•˜๋‚˜์”ฉ ๊ฐ€์ ธ์™€ looper ๋ณ€์ˆ˜์— ํ• ๋‹น
  • ํ•œ ๋ฒˆ ํ• ๋‹นํ•  ๋•Œ๋งˆ๋‹ค ๋‹ค์Œ ์ค„์˜ ๋ช…๋ น print(’hello’) ์‹คํ–‰
  • [1,2,3,4,5]์˜ ๋ชจ๋“  ๊ฐ’ ํ•œ ๋ฒˆ์”ฉ ์ˆ˜ํ–‰ → ์ด ๋‹ค์„ฏ ๋ฒˆ์˜ ๋ฐ˜๋ณต ๋ฐœ์ƒ
  • ‘hello’ ๋‹ค์„ฏ ๋ฒˆ ์ถœ๋ ฅ

+) ๋ณ€์ˆ˜ ์ž์ฒด ์ถœ๋ ฅ

for looper in [1,2,3,4,5]:
		print(looper)

  • ๋ฆฌ์ŠคํŠธ์˜ ๊ฐ๊ฐ ๊ฐ’์ด ํ•˜๋‚˜์”ฉ looper ๋ณ€์ˆ˜์— ํ• ๋‹น → ๊ทธ ๊ฐ’์ด ์ถœ๋ ฅ๋จ
  • ํ•˜์ง€๋งŒ 100๋ฒˆ ๋ฐ˜๋ณตํ•ด์•ผ ํ•  ๊ฒฝ์šฐ, ์ด ๋ฐฉ๋ฒ•์€ ๋งค์šฐ ๋น„ํšจ์œจ์ !

 

  • 2. range
for looper in range(100):
		print('hello')

  • looper ๋ณ€์ˆ˜์— 0~99๊นŒ์ง€ ์ด 100๊ฐœ์˜ ๊ฐ’ ํ• ๋‹น
  • range ๊ธฐ๋ณธ ๊ตฌ์กฐ

for ๋ณ€์ˆ˜ in range(์‹œ์ž‘ ๋ฒˆํ˜ธ, ๋งˆ์ง€๋ง‰ ๋ฒˆํ˜ธ, ์ฆ๊ฐ€๊ฐ’)

  • ๋ฆฌ์ŠคํŠธ์˜ ์ธ๋ฑ์‹ฑ ๋ฌธ๋ฒ•๊ณผ ๋™์ผ
    • 0๋ถ€ํ„ฐ ์‹œ์ž‘!
  • ๋งˆ์ง€๋ง‰ ๋ฒˆํ˜ธ์— ์ž…๋ ฅํ•œ ์ˆซ์ž - 1๊นŒ์ง€ ๋ฆฌ์ŠคํŠธ ์ƒ์„ฑ
    • ex. range(0,5) → [0,1,2,3,4]
  • ์‹œ์ž‘ ๋ฒˆํ˜ธ & ์ฆ๊ฐ€๊ฐ’ → ์ƒ๋žต ๊ฐ€๋Šฅ
    • ์ด๊ฒฝ์šฐ, ์‹œ์ž‘ ๋ฒˆํ˜ธ = 0, ์ฆ๊ฐ€๊ฐ’ = 1

2.1 range ํ™œ์šฉ

  • 2 ์นธ์”ฉ ์ฆ๊ฐ€
for i in range(1,10,2):
		print(i)

 

  • 1 ์นธ์”ฉ ๊ฐ์†Œ
for i in range(10,1,-1):
		print(i)

3. ๋ฌธ์ž์—ด

  • ๋‹จ์ˆœ ๋ฌธ์ž์—ด
for i in 'abcdefg':
		print(i)

  • ๋ฌธ์ž์—ด๋กœ ์ด๋ฃจ์–ด์ง„ ๋ฆฌ์ŠคํŠธ
for i in ['americano','latte','frappuccino']
		print(i)

๐Ÿ’ญ ์•Œ์•„๋‘๋ฉด ์ข‹์€ ๊ฒƒ

  1. ๋ฐ˜๋ณต๋ฌธ ๋ณ€์ˆ˜ ๋Œ€๋ถ€๋ถ„ i,j,k๋กœ ์ง€์ •
  2. ๋ฐ˜๋ณต๋ฌธ ๋Œ€๋ถ€๋ถ„ 0๋ถ€ํ„ฐ ๋ฐ˜๋ณต ์‹œ์ž‘
  3. ๋ฐ˜๋ณต๋ฌธ ์ž˜๋ชป ์ž‘์„ฑ์‹œ, ๋ฌดํ•œ ๋ฃจํ”„ ์˜ค๋ฅ˜ ๋ฐœ์ƒ
  • ๋ฐœ์ƒ๊ฐ€๋Šฅํ•œ ์—๋Ÿฌ
    • ์ฝœ๋ก (:)์„ ์ž…๋ ฅํ•˜์ง€ ์•Š์•˜์„ ๋•Œ
      • [ํ˜•์‹์˜ ์˜ค๋ฅ˜] SyntaxError : invalid syntax
    • ๋“ค์—ฌ์“ฐ๊ธฐ ์ž˜๋ชป๋์„ ๋•Œ
      • ๋ฐ˜๋ณต๋ฌธ ๋‚ด๋ถ€, 4์นธ ๋“ค์—ฌ์“ฐ๊ธฐ ํ•˜์ง€ ์•Š์•˜์„ ๋•Œ
      • [๋“ค์—ฌ์“ฐ๊ธฐ ์˜ค๋ฅ˜] IndentationError : expected an indented block
    • ๋ณ€์ˆ˜๊ด€๋ จ
for b in range(1,5):
		print(k, 'hello')
  • [๋ณ€์ˆ˜ ์˜ค๋ฅ˜] NameError : name ‘k’ is not defined
  • k → b๋กœ ์ˆ˜์ •ํ•˜๊ธฐ!

 

while๋ฌธ


  • ํŠน์ • ์กฐ๊ฑด์ด ๋งŒ์กฑํ•˜๋Š” ๋™์•ˆ ๋ช…๋ น ๋ธ”๋ก ์ˆ˜ํ–‰ → ์ œ์–ด๊ตฌ์กฐ
  • ๊ทธ ์กฐ๊ฑด์ด ๊ฑฐ์ง“์ผ ๊ฒฝ์šฐ ๋”์ด์ƒ ๋ฐ˜๋ณต ๋ช…๋ น๋ธ”๋ก ์ˆ˜ํ–‰ํ•˜์ง€ ์•Š์Œ
  • if + ๋ฐ˜๋ณต๋ฌธ
  • ๊ธฐ๋ณธ ๋ฌธ๋ฒ•
  • while ํŒ๋‹จ ์กฐ๊ฑด: #ํŒ๋‹จ ์กฐ๊ฑด์ด True์ธ ๋™์•ˆ
  • while ํŒ๋‹จ ์กฐ๊ฑด: #ํŒ๋‹จ ์กฐ๊ฑด์ด True์ธ ๋™์•ˆ ๋ฐ˜๋ณต ์‹คํ–‰ํ•  ๋‚ด์šฉ #์ด๋ถ€๋ถ„์„ ๋ฐ˜๋ณตํ•œ๋‹ค
i = 1               # i ๋ณ€์ˆ˜์— 1 ํ• ๋‹น
while i < 10:       # i๊ฐ€ 10 ๋ฏธ๋งŒ์ธ์ง€ ํŒ๋‹จ
    print(i)        # ์กฐ๊ฑด์„ ๋งŒ์กฑํ•  ๋•Œ i ์ถœ๋ ฅ, i์— 1์„ ๋”ํ•จ
    i += 1          # i๊ฐ€ 10์ด ๋˜๋ฉด ๋ฐ˜๋ณต ์ข…๋ฃŒ

  • +) for vs. while
    • ์„œ๋กœ ๋ณ€ํ™˜๊ฐ€๋Šฅ, ์œ ์‚ฌํ•จ
    • ์“ฐ์ž„์ƒˆ์˜ ์ฐจ์ด ์กด์žฌ
      • for : ๋ฐ˜๋ณต ํšŸ์ˆ˜ ๋ช…ํ™•ํžˆ ์•Ž & ๋ฐ˜๋ณต ํšŸ์ˆ˜ ๋ถˆ๋ณ€ → [๋ฐ˜๋ณตํ•  ๊ตฌ๊ฐ„]
        • ex. ํ•™์ƒ ์„ฑ์  ์ฑ„์  ํ”„๋กœ๊ทธ๋žจ → ์ด ํ•™์ƒ ์ˆ˜ ์•Ž
      • while : ๋ฐ˜๋ณต ํšŸ์ˆ˜ ๋ถˆ๋ช…ํ™• & ํŠน์ • ์กฐ๊ฑด ๋งŒ์กฑํ•  ๋•Œ ํ”„๋กœ๊ทธ๋žจ ์ข…๋ฃŒ ๊ฐ€๋Šฅ → [๋ฐ˜๋ณตํ•  ์กฐ๊ฑด]
        • ex. ๊ฐ€์œ„๋ฐ”์œ„๋ณดํ•  ๋•Œ ์ด๊ธฐ๋ฉด ์ข…๋ฃŒ → ์‹œ์  ์ •ํ™•ํžˆ ์•Œ ์ˆ˜ ์—†์Œ ⇒ while๋ฌธ

๋ฐ˜๋ณต๋ฌธ์˜ ์ œ์–ด


  • ํ•„์š”์— ๋”ฐ๋ผ ์ œ์–ด ๊ฐ€๋Šฅ
  • ์ค‘๊ฐ„์— ๋ฐ˜๋ณต ์ข…๋ฃŒ or ์‹คํ–‰ ์ค‘ ๋ฐ˜๋ณต๋ฌธ ๊ฑด๋„ˆ๋›ฐ๊ธฐ

break๋ฌธ

  • ๋…ผ๋ฆฌ์ ์œผ๋กœ ๊ฐ•์ œ ์ข…๋ฃŒ ๊ฐ€๋Šฅ
  • ex. ‘i == 5’๊ฐ€ ์ฐธ์ผ ๋•Œ ์ข…๋ฃŒ์‹œํ‚ค๊ธฐ
for i in range(10):
    if i == 5: break        # i๊ฐ€ 5๊ฐ€ ๋˜๋ฉด ๋ฐ˜๋ณต ์ข…๋ฃŒ
    print(i)
print("End of Program")     # ๋ฐ˜๋ณต ์ข…๋ฃŒ ํ›„ ‘End of Program’ ์ถœ๋ ฅ

continue๋ฌธ

  • ํŠน์ • ์กฐ๊ฑด์—์„œ ๋‚จ์€ ๋ช…๋ น ์Šคํ‚ต → ๋‹ค์Œ ๋ฐ˜๋ณต๋ฌธ ๋ช…๋ น ์ˆ˜ํ–‰
  • ex. ‘i == 5’์ผ ๊ฒฝ์šฐ, ๋‹ค์Œ ๋ช…๋ น ๊ฑด๋„ˆ๋›ฐ๊ธฐ
for i in range(10):
    if i == 5: continue     # i๊ฐ€ 5๊ฐ€ ๋˜๋ฉด i๋ฅผ ์ถœ๋ ฅํ•˜์ง€ ์•Š์Œ
    print(i)
print("End of Program")     # ๋ฐ˜๋ณต ์ข…๋ฃŒ ํ›„ ‘End of Program’ ์ถœ๋ ฅ

else๋ฌธ

  • ํŠน์ • ์กฐ๊ฑด ์™„์ „ํžˆ ๋๋‚ฌ์„ ๋•Œ ํ•œ๋ฒˆ ๋” ์‹คํ–‰ํ•˜๋Š” ์—ญํ• 
  • break ๋“ฑ์œผ๋กœ ์ฝ”๋“œ ์ข…๋ฃŒ ํ›„ else๋ฌธ ์ˆ˜ํ–‰๋˜์ง€ ์•Š์Œ → ๋ฐ˜๋ณต๋ฌธ ์™„๋ฒฝํžˆ ์ˆ˜ํ–‰๋๋Š”์ง€ ํ™•์ธ ์šฉ๋„
for i in range(10):
    print(i)
else:
    print("End of Program")

์‹ค์Šต; ๊ตฌ๊ตฌ๋‹จ ๊ณ„์‚ฐ๊ธฐ


์‹ค์Šต ๋‚ด์šฉ

  • ๋ฐ˜๋ณต๋ฌธ ํ™œ์šฉ
  • ์‚ฌ์šฉ์ž ๊ณ„์‚ฐํ•˜๊ณ  ์‹ถ์€ ๊ตฌ๊ตฌ๋‹จ์˜ ๋‹จ์ˆ˜ ์ž…๋ ฅ → ๊ตฌ๊ตฌ๋‹จ ์ถœ๋ ฅ
  • for๋ฌธ, input ํ™œ์šฉ

  • ์‹คํ–‰ ๊ฒฐ๊ณผ

  • ๋ฌธ์ œ ํ•ด๊ฒฐ
#1
print("๊ตฌ๊ตฌ๋‹จ ๋ช‡ ๋‹จ์„ ๊ณ„์‚ฐํ• ๊นŒ?")
#2
user_input = input()
#3
print("๊ตฌ๊ตฌ๋‹จ", user_input, "๋‹จ์„ ๊ณ„์‚ฐํ•œ๋‹ค.")
#4
int_input = int(user_input)
#5~7
for i in range(1, 10):
    result = int_input * i
    print(user_input, "x", i, "=", result)
  • #1 : “๊ตฌ๊ตฌ๋‹จ ๋ช‡ ๋‹จ์„ ๊ณ„์‚ฐํ• ๊นŒ?” ๋ฌธ๊ตฌ ์ถœ๋ ฅ
  • #2 : ์‚ฌ์šฉ์ž ์ž…๋ ฅ ๊ฐ’ → user_input ํ• ๋‹น
  • #3 : ๋ณ€์ˆ˜ ์ด์šฉ → ๊ตฌ๊ตฌ๋‹จ ๊ณ„์‚ฐ ๋ฌธ๊ตฌ ์ถœ๋ ฅ
  • #4 : user_input์ด ๋ฌธ์ž์—ด์ด๋ฏ€๋กœ ์ •์ˆ˜ํ˜•์œผ๋กœ ๋ณ€ํ™˜ → int_input ํ• ๋‹น
  • #5 ~ 7 : ์ž…๋ ฅ๋œ ์ˆซ์ž์™€ 1~9๊นŒ์ง€ ๊ณฑ ๋ฐ˜๋ณต๋ฌธ์œผ๋กœ ํ‘œํ˜„
    • range ํ™œ์šฉ → 1 ~ 9 ์ˆซ์ž i ํ• ๋‹น
    • ์‚ฌ์šฉ์ž ์ž…๋ ฅ๊ฐ’๊ณผ ๊ณฑํ•˜์—ฌ ๊ฒฐ๊ณผ๋ฅผ result์— ํ• ๋‹น

#2 ์กฐ๊ฑด๋ฌธ๊ณผ ๋ฐ˜๋ณต๋ฌธ ์‹ค์Šต

๋ฌธ์ž์—ด ์—ญ์ˆœ ์ถœ๋ ฅ


  • reverse_sentence.py

sentence = "I love you"
reverse_sentence = ' '
for char in sentence:
    reverse_sentence = char + reverse_sentence
print(reverse_sentence)
  • sentence์˜ ๊ธ€์ž๋ฅผ char ์— ํ•˜๋‚˜์”ฉ ์ €์žฅ → ์—ญ์ˆœ์œผ๋กœ reverse_sentence์— ๋ถ™์—ฌ๋„ฃ๊ธฐ
  • ๋ฐ˜๋ณต๋ฌธ ์ˆœ์„œ

์‹ญ์ง„์ˆ˜๋ฅผ ์ด์ง„์ˆ˜๋กœ ๋ณ€ํ™˜


  • ์›๋ฆฌ : ์‹ญ์ง„์ˆ˜ ์ˆซ์ž → 2๋กœ ๊ณ„์† ๋‚˜๋ˆ„๊ธฐ → ๊ทธ ๋‚˜๋จธ์ง€ ์—ญ์ˆœ ์ทจํ•˜๊ธฐ

  • demical.py
#1
decimal = 10
#2
result = ''
#3
while (decimal > 0):
#4
    remainder = decimal % 2
#5
    decimal = decimal // 2
#6
    result = str(remainder) + result
#7
print(result)

  • ์ฝ”๋“œ ์„ค๋ช…
    • while ๋ฌธ ์‚ฌ์šฉ → decimal์ด ์–ด๋–ค ๊ฐ’์ด๋“  ‘decimal > 0’์ด ์ฐธ์ผ ๋•Œ๊ฐ€์ง€ ๊ณ„์† ์‹คํ–‰
    • #4 : remainder์— ๋‚˜๋จธ์ง€ ์ €์žฅ
    • #5 : ํ˜„์žฌ ์‹ญ์ง„์ˆ˜๋ฅผ 2๋กœ ๋‚˜๋ˆˆ ๋ชซ → ๋‹ค์‹œ decimal์— ์ €์žฅ
    • #6 : result์— ๊ฐ’์˜ ์—ญ์ˆœ ์ €์žฅ
  • ๋ณ€์ˆ˜ ๋ณ€ํ™” ์„ธ๋ถ€ ๊ณผ์ •

์‹ค์Šต ; ์ˆซ์ž ์ฐพ๊ธฐ ๊ฒŒ์ž„


์‹ค์Šต ๋‚ด์šฉ

  • ๋ฐ˜๋ณต๋ฌธ ์กฐ๊ฑด๋ฌธ ํ™œ์šฉ
  • ์ˆซ์ž ์ฐพ๊ธฐ ๊ฒŒ์ž„ : ์ปดํ“จํ„ฐ๊ฐ€ ์ž„์˜๋กœ ์ƒ์„ฑํ•œ ์ˆซ์ž๋ฅผ ์‚ฌ์šฉ์ž๊ฐ€ ์ถ”์ธกํ•˜๊ธฐ
  • ๊ทœ์น™

  • ๋งžํž ๋•Œ๊นŒ์ง€ if๋ฌธ์œผ๋กœ ๋น„๊ตํ•˜๋ฉฐ ๋ฐ˜๋ณต ( =๊ฐ€๋ณ€์  ๋ฐ˜๋ณต๋ฌธ)
    • ๋ณ€์ˆ˜์˜ ๊ฐ’์— ๋”ฐ๋ผ ์ˆ˜ํ–‰ ์—ฌ๋ถ€ ๊ฒฐ์ •
  • ์‹คํ–‰ ๊ฒฐ๊ณผ

  • ๋ฌธ์ œ ํ•ด๊ฒฐ
#1
import random     # ๋‚œ์ˆ˜ ๋ฐœ์ƒ ํ•จ์ˆ˜ ํ˜ธ์ถœ

#2
guess_number = random.randint(1, 100)               # 1~100 ์‚ฌ์ด ์ •์ˆ˜ ๋‚œ์ˆ˜ ๋ฐœ์ƒ
#3
print("์ˆซ์ž๋ฅผ ๋งž์ถฐ๋ณด์„ธ์š”. (1 ~ 100)")
#4
users_input = int(input())                          # ์‚ฌ์šฉ์ž ์ž…๋ ฅ์„ ๋ฐ›์Œ

#5
while (users_input is not guess_number):            # ์‚ฌ์šฉ์ž ์ž…๋ ฅ๊ณผ ๋‚œ์ˆ˜๊ฐ€ ๊ฐ™์€์ง€ ํŒ๋‹จ
#6
    if users_input > guess_number:                  # ์‚ฌ์šฉ์ž ์ž…๋ ฅ์ด ํด ๊ฒฝ์šฐ
        print("์ˆซ์ž๊ฐ€ ๋„ˆ๋ฌด ํฝ๋‹ˆ๋‹ค.")
    else:                                           # ์‚ฌ์šฉ์ž ์ž…๋ ฅ์ด ์ž‘์„ ๊ฒฝ์šฐ
        print("์ˆซ์ž๊ฐ€ ๋„ˆ๋ฌด ์ž‘์Šต๋‹ˆ๋‹ค.")
#10
    users_input = int(input())                      # ๋‹ค์‹œ ์‚ฌ์šฉ์ž ์ž…๋ ฅ์„ ๋ฐ›์Œ
#11
else:
#12
    print("์ •๋‹ต์ž…๋‹ˆ๋‹ค.", "์ž…๋ ฅํ•œ ์ˆซ์ž๋Š”", users_input, "์ž…๋‹ˆ๋‹ค.")     # ์ข…๋ฃŒ ์กฐ๊ฑด
  • #1 : random ๋ชจ๋“ˆ ์‚ฌ์šฉ → ์ž„์˜ ์ˆ˜ ์ƒ์„ฑ
    • ๋ชจ๋“ˆ : ๋‹ค์–‘ํ•œ ํ•จ์ˆ˜ ๋ฌถ์Œ
  • #2 : random ์•ˆ์˜ randint() ํ•จ์ˆ˜ ์‚ฌ์šฉ → 1,100 ์ˆซ์ž ์ค‘ ์ž„์˜์˜ ์ˆซ์ž ์ƒ์„ฑ → guess_number์— ์ €์žฅ
  • #3 : ์‚ฌ์šฉ์ž๊ฐ€ ์ˆซ์ž ์ž…๋ ฅํ•˜๋„๋ก ์•ˆ๋‚ด ๋ฌธ๊ตฌ ์ถœ๋ ฅ
  • #4 : users_input์— ์ •์ˆ˜ํ˜•์œผ๋กœ ๋ณ€ํ™˜ํ•˜์—ฌ ์ €์žฅ
  • #5 ~ 10 : ์‚ฌ์šฉ์ž ์ž…๋ ฅ๊ฐ’๊ณผ guess_number์ด ๋‹ค๋ฅผ ๋™์•ˆ while ๋ฌธ ๋ฐ˜๋ณต ์ˆ˜ํ–‰
  • ⇒ ‘users_input is not guess_number’ ์ถฉ์กฑํ•  ๋™์•ˆ
  • #11 ~ 12 : ๊ฐ™์•„์ง€๋ฉด ๋ฐ˜๋ณต๋ฌธ ํƒˆ์ถœํ•˜์—ฌ ์•ˆ๋‚ด ๋ฌธ๊ตฌ ์ถœ๋ ฅ

์‹ค์Šต ; ์—ฐ์†์ ์ธ ๊ตฌ๊ตฌ๋‹จ ๊ณ„์‚ฐ๊ธฐ


์‹ค์Šต ๋‚ด์šฉ

  • ๋ฐ˜๋ณต๋ฌธ ์กฐ๊ฑด๋ฌธ ํ™œ์šฉ
  • ์ค‘์ฒฉ ๋ฐ˜๋ณต๋ฌธ ์ดํ•ด
  • ์—ฐ์†์ ์ธ ๊ตฌ๊ตฌ๋‹จ : ์‚ฌ์šฉ์ž๊ฐ€ ์ข…๋ฃŒํ•  ๋•Œ ๊นŒ์ง€ ์ž…๋ ฅํ•œ ์ˆซ์ž์— ๋Œ€ํ•œ ๊ตฌ๊ตฌ๋‹จ ๊ฒฐ๊ณผ ์ถœ๋ ฅ
  • 0 ์ž…๋ ฅ ์‹œ, ํ”„๋กœ๊ทธ๋žจ ์ข…๋ฃŒ
  • ๊ทœ์น™

  • ์‹คํ–‰ ๊ฒฐ๊ณผ

  • ๋ฌธ์ œ ํ•ด๊ฒฐ
print("๊ตฌ๊ตฌ๋‹จ ๋ช‡ ๋‹จ์„ ๊ณ„์‚ฐํ• ๊นŒ์š”(1~9)?")

#2
x = 1
#3
while (x is not 0):
#4
    x = int(input())
#5
    if x == 0: break
#6
    if not(1 <= x <= 9):
#7
        print("์ž˜๋ชป ์ž…๋ ฅํ–ˆ์Šต๋‹ˆ๋‹ค", "1๋ถ€ํ„ฐ 9 ์‚ฌ์ด ์ˆซ์ž๋ฅผ ์ž…๋ ฅํ•˜์„ธ์š”.")
#8
        continue
#9
    else:
#10
        print("๊ตฌ๊ตฌ๋‹จ " + str(x) + "๋‹จ์„ ๊ณ„์‚ฐํ•ฉ๋‹ˆ๋‹ค.")
#11
        for i in range(1,10):
#12
            print(str(x) + " x " + str(i) + " = " + str(x*i))
#13
        print("๊ตฌ๊ตฌ๋‹จ ๋ช‡ ๋‹จ์„ ๊ณ„์‚ฐํ• ๊นŒ์š”(1~9)?")
#14
print("๊ตฌ๊ตฌ๋‹จ ๊ฒŒ์ž„์„ ์ข…๋ฃŒํ•ฉ๋‹ˆ๋‹ค.")
  • #2 : while๋ฌธ ์‹œ์ž‘ํ•  ๋•Œ ์ดˆ๊ธฐํ™” / ‘x is not 0’์„ ๋งŒ์กฑํ•˜๊ธฐ ์œ„ํ•ด
  • #3 : while ๋ฐ˜๋ณต๋ฌธ ์‹œ์ž‘
  • #4 : ์‚ฌ์šฉ์ž์—๊ฒŒ ๊ฐ’ ์ž…๋ ฅ๋ฐ›์•„ x ํ• ๋‹น
  • #5 : 0 ํ• ๋‹น๋  ๋•Œ ํ”„๋กœ๊ทธ๋žจ ์ข…๋ฃŒ → #14ํ–‰ ์‹คํ–‰
  • #6 ~8 : x๊ฐ€ 1 ~9๊ฐ€ ์•„๋‹Œ ๊ฒฝ์šฐ → ์•ˆ๋‚ด ๋ฌธ๊ตฌ ์ถœ๋ ฅ → #4ํ–‰์œผ๋กœ ์ด๋™
  • #9 ~ 13 : x๊ฐ€ 1 ~ 9์ผ ๋•Œ for๋ฌธ์œผ๋กœ ๊ตฌ๊ตฌ๋‹จ ๊ฒฐ๊ณผ ์ถœ๋ ฅ
  • ์ค‘์ฒฉ ๋ฐ˜๋ณต๋ฌธ(nested loop)!