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

[1ํŒ€/ํ—ˆ์„œ์›] 4์ฐจ์‹œ ํŒŒ์ด์ฌ ์Šคํ„ฐ๋”” - ๋ฐ˜๋ณต๋ฌธ

ํ—ˆ์„œ์› 2023. 3. 30. 23:22

์ฐธ๊ณ ์ž๋ฃŒ - ๋ฐ์ดํ„ฐ ๊ณผํ•™์„ ์œ„ํ•œ ํŒŒ์ด์ฌ ํ”„๋กœ๊ทธ๋ž˜๋ฐ

4์ฐจ์‹œ_๋ฐ˜๋ณต๋ฌธ_๊ฐ•์˜์•ˆ.pdf
0.67MB
4์ฐจ์‹œ_๋ฐ˜๋ณต๋ฌธ_๊ณผ์ œ.pdf
0.21MB
4์ฐจ์‹œ_๋ฐ˜๋ณต๋ฌธ_๊ณผ์ œ.pdf
0.21MB

2. ํŒŒ์ด์ฌ ๊ธฐ์ดˆ - 03

์ œ์–ด๋ฌธ (์กฐ๊ฑด๋ฌธ, ๋ฐ˜๋ณต๋ฌธ)

ํ•™์Šต๋ชฉํ‘œ

  • ๋ฐ˜๋ณต๋ฌธ์˜ ๊ฐœ๋…๊ณผ for๋ฌธ, while๋ฌธ์— ๋Œ€ํ•ด ํ•™์Šตํ•˜๊ณ , ๋ฐ˜๋ณต๋ฌธ์˜ ์ œ์–ด์— ๋Œ€ํ•ด ์ดํ•ดํ•œ๋‹ค.
  • ๋ฌธ์ž์—ด ์—ญ์ˆœ ์ถœ๋ ฅ ๋ฐ ์‹ญ์ง„์ˆ˜๋ฅผ ์ด์ง„์ˆ˜๋กœ ๋ณ€ํ™˜ํ•˜๋Š” ์‹ค์Šต์„ ์ง„ํ–‰ํ•œ๋‹ค.
  • ์ฝ”๋“œ์˜ ์˜ค๋ฅ˜๋ฅผ ์ฒ˜๋ฆฌํ•˜๋Š” ๋ฐฉ๋ฒ•์— ๋Œ€ํ•ด ํ•™์Šตํ•œ๋‹ค.

๋ฐ˜๋ณต๋ฌธ

01 ๋ฐ˜๋ณต๋ฌธ

  • ๋ฐ˜๋ณต๋ฌธ(loop)์˜ ๊ฐœ๋…
    • ๋ฐ˜๋ณต๋ฌธ: ์ •ํ•ด์ง„ ๋™์ž‘์„ ๋ฐ˜๋ณต์ ์œผ๋กœ ์ˆ˜ํ–‰ํ•  ๋•Œ ์‚ฌ์šฉํ•˜๋Š” ๋ช…๋ น์–ด

ex) - ํ•™์ƒ 100๋ช…์˜ ์„ฑ์  ์‚ฐ์ถœ

  • ์‡ผํ•‘๋ชฐ์—์„œ ์ƒํ’ˆ ์ถ”์ฒœ
  • MS ์›Œ๋“œ์—์„œ ๋‹จ์–ด ๋ฐ”๊พธ๊ธฐ ๋ช…๋ น ์‹คํ–‰

→ ์‡ผํ•‘๋ชฐ์—์„œ ์ƒํ’ˆ ์ถ”์ฒœ

: ์‚ฌ์šฉ์ž์˜ ์ƒํ’ˆ ๊ตฌ๋งค ํŠน์ง•๊ณผ ๋‹ค๋ฅธ ์ƒํ’ˆ ๊ฐ„์˜ ํŠน์ง•์„ ๋น„๊ตํ•ด์•ผ ํ•œ๋‹ค.

→ ํ•œ ๋ฒˆ์— ์ผ์–ด๋‚˜๋Š” ๊ฒƒ์ด ์•„๋‹˜ = ๋ฐ˜๋ณต์ด ์ผ์–ด๋‚  ์ˆ˜๋ฐ–์— ์—†์Œ

 

๋ฐ˜๋ณต๋ฌธ์˜ ํŠน์ง•

  • ๋ฐ˜๋ณต ์‹œ์ž‘ ์กฐ๊ฑด, ์ข…๋ฃŒ ์กฐ๊ฑด, ์ˆ˜ํ–‰ ๋ช…๋ น์œผ๋กœ ๊ตฌ์„ฑ๋˜์–ด ์žˆ๋‹ค.
  • ๋“ค์—ฌ์“ฐ๊ธฐ์™€ ๋ธ”๋ก์œผ๋กœ ๊ตฌ๋ถ„ํ•œ๋‹ค.
  • for์™€ while์ด๋ผ๋Š” ๋ช…๋ น ํ‚ค์›Œ๋“œ๋ฅผ ์‚ฌ์šฉํ•œ๋‹ค.

 

  • for๋ฌธ

๊ฐ€์žฅ ๊ธฐ๋ณธ์ ์ธ ๋ฐ˜๋ณต๋ฌธ

๋ฐ˜๋ณต ๋ฒ”์œ„๋ฅผ ์ง€์ •ํ•˜์—ฌ ๋ฐ˜๋ณต์„ ์ˆ˜ํ–‰ํ•œ๋‹ค.

  • for๋ฌธ ๋ฒ”์œ„๋ฅผ ์ง€์ •ํ•˜๋Š” ๋ฐฉ๋ฒ•
  1. ๋ฆฌ์ŠคํŠธ ์‚ฌ์šฉ
  2. range ํ‚ค์›Œ๋“œ ์‚ฌ์šฉ

๐Ÿ™Œ range ๋ฌธ๋ฒ•์˜ ๊ธฐ๋ณธ ๊ตฌ์กฐ

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

** ‘์‹œ์ž‘ ๋ฒˆํ˜ธ’์™€ ‘์ฆ๊ฐ€๊ฐ’’์€ ์ƒ๋žต ๊ฐ€๋Šฅ → ์ƒ๋žตํ–ˆ์„ ๊ฒฝ์šฐ ์ดˆ๊นƒ๊ฐ’์œผ๋กœ ์‹œ์ž‘๋ฒˆํ˜ธ๋Š” 0, ์ฆ๊ฐ€๊ฐ’์€ 1 ์ž…๋ ฅ

ex) range(1, 5)→ [1, 2, 3, 4] ๋ฆฌ์ŠคํŠธ๋ฅผ ๋งŒ๋“ฆ

๐Ÿ™Œ ๋ฐ˜๋ณต๋ฌธ์—์„œ ์•Œ์•„๋‘๋ฉด ์ข‹์€ ์ƒ์‹

  1. ๋ฐ˜๋ณต๋ฌธ์˜ ๋ณ€์ˆ˜๋Š” ๋Œ€๋ถ€๋ถ„ i, j, k๋กœ ์ง€์ •ํ•œ๋‹ค.
  2. ๋ฐ˜๋ณต๋ฌธ์€ ๋Œ€๋ถ€๋ถ„ 0๋ถ€ํ„ฐ ๋ฐ˜๋ณต์„ ์‹œ์ž‘ํ•œ๋‹ค.
  3. ๋ฐ˜๋ณต๋ฌธ์„ ์ž˜๋ชป ์ž‘์„ฑํ•˜๋ฉด ๋ฌดํ•œ ๋ฃจํ”„๋ผ๊ณ  ํ•˜๋Š” ์˜ค๋ฅ˜๊ฐ€ ๋ฐœ์ƒํ•  ์ˆ˜ ์žˆ๋‹ค.
  • ๋‹ค์–‘ํ•œ ๋ฐ˜๋ณต๋ฌธ ์ง€์›
    • ๋ฌธ์ž์—ด๋„ ๋ฆฌ์ŠคํŠธ์™€ ๊ฐ™์€ ์—ฐ์†์ ์ธ ๋ฐ์ดํ„ฐ์ด๋ฏ€๋กœ ๊ฐ ๋ฌธ์ž๋ฅผ ๋ณ€์ˆ˜์— ํ• ๋‹นํ•˜์—ฌ ํ™”๋ฉด์— ์ถœ๋ ฅํ•  ์ˆ˜ ์žˆ๋‹ค.
     

  • ๋ฌธ์ž์—ด๋กœ ์ด๋ฃจ์–ด์ง„ ๋ฆฌ์ŠคํŠธ ๊ฐ’๋“ค๋„ ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ๋‹ค.

  • range ๊ตฌ๋ฌธ์˜ ํŠน์„ฑ์„ ์ด์šฉ

  • while๋ฌธ

while๋ฌธ์€ ์–ด๋–ค ์กฐ๊ฑด์ด ๋งŒ์กฑํ•˜๋Š” ๋™์•ˆ ๋ช…๋ น ๋ธ”๋ก์„ ์ˆ˜ํ–‰ํ•˜๊ณ , ํ•ด๋‹น ์กฐ๊ฑด์ด ๊ฑฐ์ง“์ผ ๊ฒฝ์šฐ ๋”์ด์ƒ ๋ฐ˜๋ณต ๋ช…๋ น๋ฌธ์„ ์ˆ˜ํ–‰ํ•˜์ง€ ์•Š๋Š” ๊ตฌ๋ฌธ์ด๋‹ค.

→ if๋ฌธ๊ณผ ๋ฐ˜๋ณต๋ฌธ์ด ๊ฒฐํ•ฉํ•œ ํ˜•ํƒœ

๐Ÿ™Œ for๋ฌธ๊ณผ while๋ฌธ์˜ ์‚ฌ์šฉ

for๋ฌธ๊ณผ while๋ฌธ์€ ๊ธฐ๋ณธ์ ์œผ๋กœ ์œ ์‚ฌํ•˜๋ฉฐ. ์„œ๋กœ ๋ณ€ํ™˜์ด ๊ฐ€๋Šฅํ•˜๋‹ค. ํ•˜์ง€๋งŒ ๋‘ ๊ตฌ๋ฌธ์˜ ์“ฐ์ž„์—๋Š” ์ฐจ์ด๊ฐ€ ์žˆ๋‹ค.

for๋ฌธ์€ ์ผ๋ฐ˜์ ์œผ๋กœ ๋ฐ˜๋ณต ํšŸ์ˆ˜๋ฅผ ์ •ํ™•ํ•˜๊ฒŒ ์•Œ๊ณ  ์žˆ๊ณ , ๋ฐ˜๋ณต ํšŸ์ˆ˜๊ฐ€ ๋ณ€ํ•˜์ง€ ์•Š์„ ๋•Œ ์‚ฌ์šฉํ•œ๋‹ค.

ex) ํ•™์ƒ๋“ค์˜ ์„ฑ์ ์„ ์ฑ„์ ํ•˜๋Š” ํ”„๋กœ๊ทธ๋žจ ์ž‘์„ฑ: ์ด๋ฏธ ํ•™์ƒ์ด ์ด ๋ช‡ ๋ช…์ธ์ง€ ๋ช…ํ™•ํ•˜๊ฒŒ ์•Œ๊ณ  ์žˆ์Œ → for๋ฌธ ์‚ฌ์šฉ

while๋ฌธ์€ ๋ฐ˜๋ณต ์‹คํ–‰ ํšŸ์ˆ˜๊ฐ€ ๋ช…ํ™•ํ•˜์ง€ ์•Š๊ณ  ์กฐ๊ฑด์„ ๋งŒ์กฑํ•˜๋ฉด ํ”„๋กœ๊ทธ๋žจ์„ ์ข…๋ฃŒํ•  ๋•Œ ์‚ฌ์šฉํ•œ๋‹ค.

ex ) ๊ฐ€์œ„๋ฐ”์œ„๋ณด๋ฅผ ํ•˜๋Š”๋ฐ ‘์ด๊ธฐ๋ฉด ์ข…๋ฃŒํ•˜๋ผ’๋ผ๋Š” ์กฐ๊ฑด์„ ์ค€ ํ”„๋กœ๊ทธ๋žจ :์–ธ์ œ ์ด๊ธธ์ง€ ๋ชจ๋ฆ„

→ while๋ฌธ ์‚ฌ์šฉ

 

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

ํŒŒ์ด์ฌ์—์„œ๋Š” ์ค‘๊ฐ„์— ๋ฐ˜๋ณต์„ ์ข…๋ฃŒํ•˜๊ฑฐ๋‚˜ ์‹คํ–‰ ์ค‘์ธ ๋ฐ˜๋ณต๋ฌธ์„ ๊ฑด๋„ˆ๋›ธ ์ˆ˜๋„ ์žˆ๋‹ค.

  • break๋ฌธ

break๋ฌธ์ด ๋ฐ˜๋ณต๋ฌธ์— ์žˆ์œผ๋ฉด ๋ฐ˜๋ณต๋ฌธ์„ ๊ฐ•์ œ๋กœ ์ข…๋ฃŒ์‹œํ‚ฌ ์ˆ˜ ์žˆ๋‹ค.

๋…ผ๋ฆฌ์ ์œผ๋กœ ๋ฐ˜๋ณต์„ ์ข…๋ฃŒํ•˜๋Š” ๋ฐฉ๋ฒ•

  • continue๋ฌธ

ํŠน์ • ์กฐ๊ฑด์—์„œ ๋‚จ์€ ๋ช…๋ น์„ ๊ฑด๋„ˆ๋›ฐ๊ณ  ๋‹ค์Œ ๋ฐ˜๋ณต๋ฌธ์„ ์ˆ˜ํ–‰ํ•œ๋‹ค.

i == 5์ผ ๊ฒฝ์šฐ ๋ฐ”๋กœ ๋‹ค์Œ ์ค„ ์ˆ˜ํ–‰์„ ๊ฑด๋„ˆ๋›ฐ๊ณ  ๊ทธ ๋‹ค์Œ ๋ฐ˜๋ณต์œผ๋กœ ๋„˜์–ด๊ฐ„๋‹ค.

→ i = 6์ธ ์ƒํƒœ๋กœ print(i)์ฝ”๋“œ๋ฅผ ์ˆ˜ํ–‰: 5๋ฅผ ์ œ์™ธํ•œ ๋‚˜๋จธ์ง€ ๊ฐ’์ด ํ™”๋ฉด์— ์ถœ๋ ฅ

 

  • else๋ฌธ

๋ฐ˜๋ณต๋ฌธ์ด ์ค‘๊ฐ„์— ์ข…๋ฃŒ ์—†์ด ์™„๋ฒฝํžˆ ์ˆ˜ํ–‰๋˜์—ˆ๋Š”์ง€๋ฅผ ๋ช…์‹œ์ ์œผ๋กœ ํ™•์ธํ•˜๊ธฐ ์œ„ํ•ด ํ•„์š”ํ•˜๋‹ค.

์–ด๋–ค ์กฐ๊ฑด์ด ์™„์ „ํžˆ ๋๋‚ฌ์„ ๋•Œ ํ•œ๋ฒˆ ๋” ์‹คํ–‰ํ•ด์ฃผ๋Š” ์—ญํ• ์„ ํ•œ๋‹ค.

๐Ÿ™Œ ๋ฐ˜๋ณต๋ฌธ์„ ์ œ์–ดํ•˜๋Š” ๊ตฌ๋ฌธ์˜ ์‚ฌ์šฉ

๊ธด ์ฝ”๋“œ๋ฅผ ์ž‘์„ฑํ•  ๋•Œ ์ค‘๊ฐ„์— break๋ฌธ์ด๋‚˜ continue๋ฌธ์ด ์žˆ๋‹ค๋ฉด ์ฝ”๋“œ๊ฐ€ ์˜ค์ž‘๋™ํ•  ์ˆ˜๋„ ์žˆ๋‹ค. ํŠนํžˆ ๋งŽ์€ ์‚ฌ๋žŒ๊ณผ ํ•จ๊ป˜ ์ฝ”๋”ฉํ•  ๋•Œ๋Š” ์ด๋Ÿฐ ์ฝ”๋“œ๋กœ ์ธํ•ด ์˜ˆ์ธกํ•˜์ง€ ๋ชปํ•œ ์ž‘๋™์„ ํ•  ์ˆ˜๋„ ์žˆ์œผ๋‹ˆ ์ฃผ์˜ํ•ด์•ผ ํ•œ๋‹ค.

 

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

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

๊ตฌ๊ตฌ๋‹จ ๊ณ„์‚ฐ๊ธฐ ํ”„๋กœ๊ทธ๋žจ์€ ์‚ฌ์šฉ์ž๊ฐ€ ๊ณ„์‚ฐํ•˜๊ณ  ์‹ถ์€ ๋‹จ์ˆ˜๋ฅผ ์ž…๋ ฅํ•˜๋ฉด ํ”„๋กœ๊ทธ๋žจ์ด ๊ตฌ๊ตฌ๋‹จ์„ ์ถœ๋ ฅ

  • ๊ตฌ๊ตฌ๋‹จ ๊ณ„์‚ฐ๊ธฐ์˜ ๊ทœ์น™
    • ํ”„๋กœ๊ทธ๋žจ์ด ์‹œ์ž‘๋˜๋ฉด ‘๊ตฌ๊ตฌ๋‹จ ๋ช‡ ๋‹จ์„ ๊ณ„์‚ฐํ• ๊นŒ?’๊ฐ€ ์ถœ๋ ฅ๋œ๋‹ค.
    • ์‚ฌ์šฉ์ž๋Š” ๊ณ„์‚ฐํ•˜๊ณ  ์‹ถ์€ ๊ตฌ๊ตฌ๋‹จ ๋‹จ์ˆ˜๋ฅผ ์ž…๋ ฅํ•œ๋‹ค.
    • ํ”„๋กœ๊ทธ๋žจ์€ ‘๊ตฌ๊ตฌ๋‹จ n๋‹จ์„ ๊ณ„์‚ฐํ•œ๋‹ค.’๋ผ๋Š” ๋ฉ”์‹œ์ง€์™€ ํ•จ๊ป˜ ๊ตฌ๊ตฌ๋‹จ์˜ ๊ฒฐ๊ณผ๋ฅผ ์ถœ๋ ฅํ•œ๋‹ค.
  • ์‹คํ–‰๊ฒฐ๊ณผ

  • ๋ฌธ์ œ ํ•ด๊ฒฐ

for๋ฌธ๊ณผ input๋ฌธ์„ ์ด์šฉํ•˜์—ฌ ํ•ด๊ฒฐ

  1. ์ฒ˜์Œ ํ”„๋กœ๊ทธ๋žจ์„ ์‹คํ–‰ํ•˜๋ฉด print() ํ•จ์ˆ˜๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ ‘๊ตฌ๊ตฌ๋‹จ ๋ช‡ ๋‹จ์„ ๊ณ„์‚ฐํ• ๊นŒ?’๋ฅผ ์ถœ๋ ฅํ•œ๋‹ค.
  2. ์‚ฌ์šฉ์ž๊ฐ€ ์ž…๋ ฅํ•œ ๊ฐ’์„ userjnput ๋ณ€์ˆ˜์— ํ• ๋‹นํ•œ๋‹ค.
  3. user_input ๋ณ€์ˆ˜๋ฅผ ์ด์šฉํ•˜์—ฌ ํ™”๋ฉด์— ๊ตฌ๊ตฌ๋‹จ์„ ๊ณ„์‚ฐํ•œ๋‹ค๋Š” ๋ฉ”์‹œ์ง€๋ฅผ ์ถœ๋ ฅํ•œ๋‹ค.
  4. user_input์ด ๋ฌธ์ž์—ด์ด๋ฏ€๋กœ int() ํ•จ์ˆ˜๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ ์ •์ˆ˜ํ˜•์œผ๋กœ ๋ณ€ํ™˜ํ•˜์—ฌ int_input์— ํ• ๋‹น
  5. ์ž…๋ ฅ๋œ ์ˆซ์ž์™€ 1๋ถ€ํ„ฐ 9๊นŒ์ง€์˜ ๊ณฑ์„ ๋ฐ˜๋ณต๋ฌธ์œผ๋กœ ํ‘œํ˜„ํ•œ๋‹ค. → range(1, 10)์„ ์ด์šฉํ•˜์—ฌ 1๋ถ€ํ„ฐ 9๊นŒ์ง€์˜ ์ˆซ์ž๋ฅผ ๋ฐœ์ƒ์‹œ์ผœ i์— ํ• ๋‹นํ•œ๋‹ค. ์ด ๊ฐ’๋“ค์€ ๋ชจ๋‘ int_input๊ณผ ๊ณฑํ•˜์—ฌ ๊ทธ ๊ฒฐ๊ณผ๊ฐ’์„ result ๋ณ€์ˆ˜์— ํ• ๋‹นํ•œ๋‹ค.
  6. print() ํ•จ์ˆ˜์— ์˜ํ•ด ๊ตฌ๊ตฌ๋‹จ ํ˜•์‹์œผ๋กœ result ๊ฐ’์„ ์ถœ๋ ฅํ•œ๋‹ค.

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

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

reverse_sentence ๋ณ€์ˆ˜๋Š” ์ž…๋ ฅ๋œ ๋ฌธ์ž์—ด์„ ์—ญ์ˆœ์œผ๋กœ ์ถœ๋ ฅํ•˜๊ธฐ ์œ„ํ•œ ๋ณ€์ˆ˜์ด๋‹ค.

→ for๋ฌธ์„ ์‚ฌ์šฉํ•˜์—ฌ ๋งˆ์ง€๋ง‰ ๊ธ€์ž๋ถ€ํ„ฐ ์ถœ๋ ฅ๋˜๋Š” ๋ช…๋ น์–ด๋ฅผ ์ƒ๊ฐ!!!

→ ๊ธฐ์กด sentence ๋ณ€์ˆ˜์— ์žˆ๋Š” ๊ธ€์ž๋ฅผ char๋ผ๋Š” ๋ณ€์ˆ˜์— ํ•˜๋‚˜์”ฉ ์ €์žฅํ•œ ํ›„, ์—ญ์ˆœ์œผ๋กœ reverse_sentence์— ๋ถ™์—ฌ๋„ฃ๋Š” ๊ตฌ์กฐ

reverse_sentence : 4ํ–‰์˜ reverse_sentence = char + reverse_sentence ์ค‘ ์˜ค๋ฅธ์ชฝ์— ์žˆ๋Š” ๊ฐ’ reverse_sentence : char์™€ reverse_sentence๊ฐ€ ํ•ฉ์ณ์ง„ ์™ผ์ชฝ์— ์žˆ๋Š” reverse_sentence

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

์‹ญ์ง„์ˆ˜ ์ˆซ์ž๋ฅผ 2๋กœ ๊ณ„์† ๋‚˜๋ˆˆ ํ›„ ๊ทธ ๋‚˜๋จธ์ง€๋ฅผ ์—ญ์ˆœ์œผ๋กœ ์ทจํ•˜๋ฉด ์ด์ง„์ˆ˜๊ฐ€ ๋œ๋‹ค.

while๋ฌธ ์‚ฌ์šฉ

→ decimal ๋ณ€์ˆ˜์— ์–ด๋–ค ๊ฐ’์ด ๋“ค์–ด์˜ค๋”๋ผ๋„ ์กฐ๊ฑด์ด ๋งž์„ ๋•Œ๊นŒ์ง€ ๋ฐ˜๋ณต๋ฌธ์ด ์‹คํ–‰๋˜๊ธฐ ๋•Œ๋ฌธ์ด๋‹ค.

๐Ÿ™Œ์ฃผ์˜๊นŠ๊ฒŒ ๋ด์•ผํ•  ์ฝ”๋“œ!!!

→ remainder = decimal % 2

: ๋‚˜๋จธ์ง€๋ฅผ ๊ตฌํ•ด remainder ๋ณ€์ˆ˜์— ์ €์žฅ = ๋‚˜๋จธ์ง€ ๊ฐ’์„ ‘•••’ ๊ธฐํ˜ธ๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ ์˜†์— ์ ์€ ๊ฒƒ

→ decimal = decimal // 2

: ํ˜„์žฌ์˜ ์‹ญ์ง„์ˆ˜๋ฅผ 2๋กœ ๋‚˜๋ˆˆ ๋ชซ์„ ๋‹ค์‹œ decimal ๋ณ€์ˆ˜์— ์ €์žฅ

→ result = str(remainder) + result

: ๊ฐ’์˜ ์—ญ์ˆœ์„ result ๋ณ€์ˆ˜์— ์ €์žฅ

 

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

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

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

  • ์—ฐ์†์ ์ธ ๊ตฌ๊ตฌ๋‹จ ๊ณ„์‚ฐ๊ธฐ ๊ทœ์น™
    • ํ”„๋กœ๊ทธ๋žจ์ด ์‹œ์ž‘๋˜๋ฉด ‘๊ตฌ๊ตฌ๋‹จ ๋ช‡ ๋‹จ์„ ๊ณ„์‚ฐํ• ๊นŒ์š”(1~9)?’๊ฐ€ ์ถœ๋ ฅ๋œ๋‹ค.
    • ์‚ฌ์šฉ์ž๋Š” ๊ณ„์‚ฐํ•˜๊ณ  ์‹ถ์€ ๊ตฌ๊ตฌ๋‹จ ๋‹จ์ˆ˜๋ฅผ ์ž…๋ ฅํ•œ๋‹ค.
    • ํ”„๋กœ๊ทธ๋žจ์€ ‘๊ตฌ๊ตฌ๋‹จ n๋‹จ์„ ๊ณ„์‚ฐํ•ฉ๋‹ˆ๋‹ค.’๋ผ๋Š” ๋ฉ”์‹œ์ง€์™€ ํ•จ๊ป˜ ๊ตฌ๊ตฌ๋‹จ์˜ ๊ฒฐ๊ณผ๋ฅผ ์ถœ๋ ฅํ•œ๋‹ค.
    • ๊ธฐ์กด ์˜ˆ์ œ์™€ ๋‹ค๋ฅด๊ฒŒ ์ด๋ฒˆ์—๋Š” ํ”„๋กœ๊ทธ๋žจ์ด ๊ณ„์† ์‹คํ–‰๋˜๋‹ค๊ฐ€ ์ข…๋ฃŒ ์กฐ๊ฑด์— ํ•ด๋‹นํ•˜๋Š” ์ˆซ์ž (์—ฌ๊ธฐ์—์„œ๋Š”0)๋ฅผ ์ž…๋ ฅํ•˜๋ฉด ์ข…๋ฃŒ๋œ๋‹ค.
  • ์‹คํ–‰๊ฒฐ๊ณผ

  • ๋ฌธ์ œ ํ•ด๊ฒฐ

while๋ฌธ ์•ˆ์— ๋‹ค์‹œ for๋ฌธ์„ ์‚ฌ์šฉํ•˜์—ฌ ๋ฌธ์ œ ํ•ด๊ฒฐ

  1. ์‚ฌ์šฉ์ž๊ฐ€ ์ˆซ์ž๋ฅผ ์ž…๋ ฅํ•  ์ˆ˜ ์žˆ๋„๋ก ์•ˆ๋‚ด ๋ฉ”์‹œ์ง€๋ฅผ ์ถœ๋ ฅํ•œ๋‹ค.
  2. while๋ฌธ์„ ์‹œ์ž‘ํ•˜๊ธฐ ์ „์— x = 1์ด๋ผ๋Š” ์ฝ”๋“œ๋ฅผ ์ž…๋ ฅ → while๋ฌธ ์‹œ์ž‘ ์‹œ ์ดˆ๊ธฐํ™”ํ•˜๋Š” ๊ณผ์ • while๋ฌธ์ด ๋ฌด์กฐ๊ฑด ํ•œ ๋ฒˆ์€ ์‹คํ–‰๋˜์–ด์•ผ ํ•˜๋ฏ€๋กœ while๋ฌธ ์กฐ๊ฑด (x is not 0)์„ ๋งŒ์กฑํ•  ์ˆ˜ ์žˆ๋„๋ก x์— 1์„ ๋จผ์ € ํ• ๋‹นํ•˜๋Š” ๊ฒƒ!!!
  3. while ๋ฐ˜๋ณต๋ฌธ์„ ์‹œ์ž‘ํ•œ๋‹ค. ๊ฐ€์žฅ ๋จผ์ € ์‚ฌ์šฉ์ž์—๊ฒŒ ์ž…๋ ฅ๊ฐ’์„ ๋ฐ›์•„ ๊ทธ ๊ฐ’์„ x์— ํ• ๋‹นํ•œ๋‹ค.
  4. x์˜ ์ž…๋ ฅ๊ฐ’์— ๋”ฐ๋ผ 3๊ฐ€์ง€ ์กฐ๊ฑด์˜ ๋ช…๋ น์ด ์‹คํ–‰๋œ๋‹ค.
    1. ์ฒซ ๋ฒˆ์งธ ์กฐ๊ฑด→ x์— 0์ด ํ• ๋‹น๋์„ ๋•Œ ํ”„๋กœ๊ทธ๋žจ์€ ์ข…๋ฃŒ๋œ๋‹ค. break๋ฌธ์„ ํ˜ธ์ถœํ•˜์—ฌ while๋ฌธ์„ ๋น ์ ธ๋‚˜๊ฐ€ print() ํ•จ์ˆ˜๋ฅผ ํ†ตํ•ด ‘๊ตฌ๊ตฌ๋‹จ ๊ฒŒ์ž„์„ ์ข…๋ฃŒํ•ฉ๋‹ˆ๋‹ค.’ ๋ฅผ ํ™”๋ฉด์— ์ถœ๋ ฅํ•œ๋‹ค.
    2. ๋‘ ๋ฒˆ์งธ ์กฐ๊ฑด→ x๊ฐ€ 1 ์—์„œ 9 ์‚ฌ์ด์˜ ์ˆซ์ž๊ฐ€ ์•„๋‹Œ ๊ฒฝ์šฐ์ด๋‹ค. ์กฐ๊ฑด๋ฌธ if not(1 <= x <= 9):์œผ๋กœ ํ‘œํ˜„. ์กฐ๊ฑด์„ ๋งŒ์กฑํ•˜๋ฉด ํ™”๋ฉด์— ์ž…๋ ฅ์ด ์ž˜๋ชป๋๋‹ค๋Š” ์•ˆ๋‚ด ๋ฉ”์‹œ์ง€๋ฅผ ์ถœ๋ ฅํ•œ ํ›„ continue๋ฌธ์œผ๋กœ while๋ฌธ์˜ ์ฒ˜์Œ์œผ๋กœ ์ด๋™ํ•œ๋‹ค.
    3. ์„ธ ๋ฒˆ์งธ ์กฐ๊ฑด → ์œ„ ๋‘ ์กฐ๊ฑด์„ ๋ชจ๋‘ ๋งŒ์กฑํ•˜์ง€ ์•Š์•˜์„ ๋•Œ (1์—์„œ 9 ์‚ฌ์ด์˜ ์ˆซ์ž ์ œ๋Œ€๋กœ ์ž…๋ ฅ) for๋ฌธ์„ ์ด์šฉํ•˜์—ฌ ํ™”๋ฉด์— ์ž…๋ ฅ๋œ ์ˆซ์ž์˜ ๊ตฌ๊ตฌ๋‹จ ๊ฒฐ๊ณผ๊ฐ€ ์ถœ๋ ฅ๋œ๋‹ค.

⇒ ๋ฐ˜๋ณต๋ฌธ ์•ˆ์— ๋ฐ˜๋ณต๋ฌธ์ด ์žˆ๋Š” ๊ตฌ์กฐ๋ฅผ ์ค‘์ฒฉ ๋ฐ˜๋ณต๋ฌธ(nested loop) ์ด๋ผ๊ณ  ํ•œ๋‹ค.

 

05 ์ฝ”๋“œ์˜ ์˜ค๋ฅ˜๋ฅผ ์ฒ˜๋ฆฌํ•˜๋Š” ๋ฐฉ๋ฒ•

  • ๋ฒ„๊ทธ(bug)์™€ ๋””๋ฒ„๊ทธ(debug)

ํ”„๋กœ๊ทธ๋ž˜๋ฐ์—์„œ๋Š” ์˜ค๋ฅ˜๋ฅผ ๋ฒ„๊ทธ๋ผ๊ณ  ํ•˜๊ณ , ์˜ค๋ฅ˜๋ฅผ ์ˆ˜์ •ํ•˜๋Š” ๊ณผ์ •์„ ๋””๋ฒ„๊ทธ๋ผ๊ณ  ํ•œ๋‹ค.

๊ทธ๋ฆฌ๊ณ  ์ฝ”๋“œ์—์„œ ์˜ค๋ฅ˜๋ฅผ ๋งŒ๋‚ฌ์„ ๋•Œ ์ž˜๋ชป์„ ์ฐพ์•„๋‚ด๊ณ  ๊ณ ์น˜๋Š” ๊ฒƒ์„ ๋””๋ฒ„๊น…์ด๋ผ๊ณ  ํ•œ๋‹ค.

  • ์˜ค๋ฅ˜์˜ ์ข…๋ฅ˜์™€ ํ•ด๊ฒฐ ๋ฐฉ๋ฒ•

์˜ค๋ฅ˜๋ฅผ ๋ฐœ๊ฒฌํ•ด ์ˆ˜์ •ํ•˜๊ธฐ ์œ„ํ•ด์„œ๋Š” ์˜ค๋ฅ˜์˜ ๋ฐœ์ƒ ์ด์œ ์™€ ํ•ด๊ฒฐ ๋ฐฉ๋ฒ•์„ ์•Œ์•„์•ผ ํ•œ๋‹ค. ์˜ค๋ฅ˜๊ฐ€ ์™œ ๋ฐœ์ƒํ–ˆ๋Š”์ง€ ์•Œ๊ธฐ ์œ„ํ•ด์„œ๋Š” ์˜ค๋ฅ˜์˜ ์ข…๋ฅ˜๋ฅผ ์ดํ•ดํ•ด์•ผ ํ•œ๋‹ค.

  • ๋ฌธ๋ฒ•์  ์˜ค๋ฅ˜

์ฝ”๋”ฉ ๊ณผ์ •์—์„œ ์ธํ„ฐํ”„๋ฆฌํ„ฐ๊ฐ€ ํ•ด์„์„ ๋ชปํ•ด ์ฝ”๋“œ ์ž์ฒด๋ฅผ ์‹คํ–‰์‹œํ‚ค์ง€ ๋ชปํ•˜๋Š” ์˜ค๋ฅ˜์ด๋‹ค. ๋น„๊ต์  ์‰ฌ์šด ์œ ํ˜•์˜ ์˜ค๋ฅ˜์ด๋ฉฐ, ๋Œ€ํ‘œ์ ์œผ๋กœ ๋“ค์—ฌ์“ฐ๊ธฐ ์˜ค๋ฅ˜์™€ ์˜คํƒˆ์ž๋กœ ์ธํ•œ ์˜ค๋ฅ˜๊ฐ€ ์žˆ๋‹ค.

    • ๋“ค์—ฌ์“ฐ๊ธฐ ์˜ค๋ฅ˜ (IndentationError)

y = 5 ์•ž์— ๋„์–ด์“ฐ๊ธฐ๊ฐ€ ๋˜์–ด ์žˆ๋Š”๋ฐ, ํŒŒ์ด์ฌ์€ ์ด์œ  ์—†๋Š” ๋„์–ด์“ฐ๊ธฐ๋ฅผ ํ—ˆ์šฉํ•˜์ง€ ์•Š๋Š”๋‹ค.

๋”ฐ๋ผ์„œ ๋„์–ด์“ฐ๊ธฐ๊ฐ€ ์žˆ๋Š” ์ƒํƒœ์—์„œ ํŒŒ์ผ์„ ์‹คํ–‰ํ•˜๋ฉด ๋“ค์—ฌ์“ฐ๊ธฐ ์˜ค๋ฅ˜๊ฐ€ ๋ฐœ์ƒํ•œ๋‹ค. ํŠนํžˆ if๋ฌธ์ด๋‚˜ for๋ฌธ, while๋ฌธ ๋“ฑ์„ ์ž‘์„ฑํ•˜๋ฉด์„œ ๋“ค์—ฌ์“ฐ๊ธฐ๋ฅผ ์‹ค์ˆ˜ํ•  ๋•Œ๊ฐ€ ๋งŽ๋‹ค. ์ด๋Ÿฌํ•œ ์˜ค๋ฅ˜๊ฐ€ ๋ฐœ์ƒํ•˜๋ฉด ํŒŒ์ด์ฌ์—์„œ๋Š” ‘IndentationError'๋ผ๋Š” ์˜ค๋ฅ˜ ๋ฉ”์‹œ์ง€๋ฅผ ์ถœ๋ ฅํ•œ๋‹ค.

๋ฌธ๋ฒ•์  ์˜ค๋ฅ˜๋Š” ํŒŒ์ด์ฌ ํŒŒ์ผ์„ ์‹คํ–‰์‹œ์ผฐ์„ ๋•Œ ๊ณง๋ฐ”๋กœ ๋ฌธ๋ฒ•์  ์˜ค๋ฅ˜์ž„์„ ์•Œ๋ ค์ค€๋‹ค. ์˜ค๋ฅ˜ ๋ฉ”์‹œ์ง€์˜ ๋‚ด์šฉ์€ ์˜ค๋ฅ˜๊ฐ€ ๋ฐœ์ƒํ•œ ํŒŒ์ผ ๊ฒฝ๋กœ์™€ ์ค„ ๋ฒˆํ˜ธ๋ฅผ ์ถœ๋ ฅํ•œ๋‹ค. ๊ทธ๋ฆฌ๊ณ  ์˜ค๋ฅ˜๊ฐ€ ๋ฐœ์ƒํ•œ ๋ถ€๋ถ„์— ๊บพ์‡  ํ‘œ์‹œ๋ฅผ ํ•˜๊ณ , ์˜ค๋ฅ˜ ์ข…๋ฅ˜์™€ ํ•จ๊ป˜ ‘unexpected indent’๋ผ๊ณ  ๋‚˜ํƒ€๋‚ธ๋‹ค.

์ด๋Ÿฌํ•œ ๋ฉ”์‹œ์ง€๋ฅผ ํ†ตํ•ด ํ”„๋กœ๊ทธ๋ž˜๋จธ๋Š” ์˜ค๋ฅ˜๊ฐ€ ์žˆ์Œ์„ ์‰ฝ๊ฒŒ ์•Œ ์ˆ˜ ์žˆ๋‹ค.

 

  • ์˜คํƒˆ์ž๋กœ ์ธํ•œ ์˜ค๋ฅ˜(NameError)

  • ๋…ผ๋ฆฌ์  ์˜ค๋ฅ˜

ํ”„๋กœ๊ทธ๋žจ์„ ์ž‘์„ฑํ•˜๋‹ค ๋ณด๋ฉด ์ฝ”๋“œ๋ฅผ ์ œ๋Œ€๋กœ ์ž‘์„ฑํ–ˆ๋‹ค๊ณ  ์ƒ๊ฐํ–ˆ์Œ์—๋„ ์›ํ•˜๋Š” ๊ฒฐ๊ณผ๊ฐ€ ๋‚˜์˜ค์ง€ ์•Š๋Š” ๊ฒฝ์šฐ๊ฐ€ ์ข…์ข… ์žˆ๋‹ค. ์ด ๊ฒฝ์šฐ ๋…ผ๋ฆฌ์  ์˜ค๋ฅ˜๊ฐ€ ๋ฐœ์ƒํ–ˆ์„ ๊ฐ€๋Šฅ์„ฑ์ด ํฌ๋ฉฐ. ์ด๋ ‡๊ฒŒ ๋œป๋Œ€๋กœ ์‹คํ–‰๋˜์ง€ ์•Š๋Š” ์ฝ”๋“œ๋ฅผ ‘๋…ผ๋ฆฌ์  ์˜ค๋ฅ˜๊ฐ€ ์žˆ๋‹ค’ ๋˜๋Š” ‘๋ฒ„๊ทธ๊ฐ€ ์žˆ๋‹ค’๊ณ  ํ‘œํ˜„ํ•œ๋‹ค.

๋…ผ๋ฆฌ์  ์˜ค๋ฅ˜๋ฅผ ๊ฐ€์žฅ ์†์‰ฝ๊ฒŒ ํ•ด๊ฒฐํ•  ์ˆ˜ ์žˆ๋Š” ๋ฐฉ๋ฒ•์€ ํ™•์ธ์ด ํ•„์š”ํ•œ ๋ณ€์ˆ˜๋“ค์˜ ๊ฐ’์„ print() ํ•จ์ˆ˜๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ ์ถœ๋ ฅํ•ด๋ณด๋Š” ๊ฒƒ์ด๋‹ค.