ȸµ¹ÀÌ - ¶Ç´Â ÀÚ½ÅÀ» ¹Ýº¹ÇÏ´Â ±â¼ú!

¿ì¸®´Â ¹«¾ùÀ» ´Ù·ê °ÍÀΰ¡?
¹Ýº¹ÀûÀΠŸÀÌÇÎÀ» ÁÙÀ̱â À§ÇØ È¸µ¹À̸¦ »ç¿ëÇÏ´Â ¹ý. ȸµ¹ÀÌÀÇ ¿©·¯ÇüÅÂ¿Í ±×°ÍµéÀ» ¾ðÁ¦ »ç¿ëÇϴ°¡.

Áö³­ ¿¬½À¹®Á¦¿¡¼­ ¿ì¸®´Â °ö¼ÀÇ¥ 12´ÜÀÇ ÀϺθ¦ Ãâ·ÂÇØ º¸¾Ò´Ù. ±×·¯³ª ±×°ÍÀº ¸¹Àº ŸÀÌÇÎÀÌ ÇÊ¿äÇÏ°í ¿ì¸®°¡ ±×°ÍÀ» È®ÀåÇÒ ÇÊ¿ä°¡ ÀÖ´Ù¸é, ´ë´ÜÈ÷ ½Ã°£ÀÌ ¸¹ÀÌ ÇÊ¿äÇÒ °ÍÀÌ´Ù. ´ÙÇེ·´°Ôµµ ´õ ÁÁÀº ¹æ¹ýÀÌ À־ ÇÁ·Î±×·¡¹Ö ¾ð¾î°¡ ¿ì¸®¿¡°Ô Á¦°øÇÏ´Â ½ÇÁ¦ÀûÀÎ ÆÄ¿ö¸¦ ¹Ù·Î °Å±â¿¡¼­ º¸±â ½ÃÀÛÇÑ´Ù.

FOR ȸµ¹ÀÌ

¿ì¸®°¡ ÇÏ·Á°í ÇÏ´Â °ÍÀº ÇÁ·Î±×·¡¹Ö ¾ð¾î¿¡°Ô ¹Ýº¹À» Çϵµ·Ï ½ÃÄѼ­, ¹Ýº¹ÇÒ ¶§¸¶´Ù °ªÀÌ Áõ°¡ÇÏ´Â º¯¼ö¸¦ ´ëüÇÏ´Â °ÍÀÌ´Ù. ÆÄÀ̽㿡¼­ ±×°ÍÀº ´ÙÀ½°ú °°Àº ÇüÅ°¡ µÈ´Ù:

>>>for i in range(1,13):
...    print "%d x 12 = %d" % (i, i*12)

ÁÖÀÇ 1: ¿ì¸®´Â 13À» ƯÁ¤Çϱâ À§ÇÏ¿© range(1,13)¸¦ ÇÊ¿ä·Î ÇÑ´Ù. ¿Ö³ÄÇϸé range()ÇÔ¼ö´Â ù¹ø° ¼ýÀڷκÎÅÍ »ý¼ºÇϱ⠽ÃÀÛÇÏ¿© µÎ ¹ø° °ªÀº Æ÷ÇÔÇÏÁö ¾Ê°í, µÎ¹ø° ¼ýÀÚ±îÁö »ý¼ºÇÑ´Ù. ÀÌ°ÍÀº óÀ½¿¡´Â ¾à°£Àº ±«ÀÌÇÏ°Ô º¸ÀÌÁö¸¸ °Å±â¿¡´Â ÀÌÀ¯°¡ ÀÖÀ¸¸ç ¿©·¯ºÐÀº ±×°Í¿¡ Àͼ÷ÇØÁ®¾ß¸¸ ÇÑ´Ù.

ÁÖÀÇ 2: for ¿¬»êÀÚ´Â ÆÄÀ̽㿡¼­ ½ÇÁ¦·Î´Â foreach ¿¬»êÀÚÀε¥ ±× ¿¬»êÀÚ·Î ÇÏÀ§ ¿¬¼ÓÄڵ带 ÇÑ ÁýÇÕÀÇ °¢°¢ÀÇ ±¸¼º¿ø¿¡´Ù°¡ Àû¿ëÇÑ´Ù. ÀÌ °æ¿ì¿¡ ±× ÁýÇÕÀº range()°¡ »ý¼ºÇÑ ¼ýÀÚµéÀÇ ¸®½ºÆ®ÀÌ´Ù. ¿©·¯ºÐÀº print range(1,13)¸¦ ÆÄÀ̽ã ÇÁ·ÒÇÁÆ®¿¡¼­ ŸÀÌÇÁÇغ¸°í ¹«¾ùÀÌ ÀμâµÇ´Â °¡¸¦ º¸¸é ±×°ÍÀ» È®ÀÎÇÒ ¼ö ÀÖ´Ù.

ÁÖÀÇ 3: print¶óÀÎÀº À§¿¡ ÀÖ´Â for ¶óÀκ¸´Ù ´õ µé¿©¾²±â µÇ¾îÀÖ´Ù. ±×»ç½ÇÀº ´ë´ÜÈ÷ Áß¿äÇÑ ¿äÁ¡Àε¥ ¿Ö³ÄÇÏ¸é ±×°ÍÀÌ ¹Ù·Î ÆÄÀ̽ãÀÌ print¹®ÀÌ ¹Ýº¹µÉ ºÎºÐÀ̶ó´Â °ÍÀ» ¾Ë¼ö ÀÖ´Â ¹æ¹ýÀ̱⠶§¹®ÀÌ´Ù. ¿©·¯ºÐÀÌ ¾ó¸¶¸¸Å­ÀÇ µé¿©¾²±â¸¦ Çß´À³Ä´Â ÀÏ°ü¼ºÀ» À¯ÁöÇÏ´Â ÇÑ Áß¿äÇÏÁö ¾Ê´Ù.

±×·¡¼­ ¾î¶»°Ô ±× ÇÁ·Î±×·¥Àº ÀÛµ¿Çϴ°¡? ±×°ÍÀ» Á× °Å´Ò¾î º¸ÀÚ.
¸ÕÀú, ÆÄÀ̽ãÀº rangeÇÔ¼ö¸¦ »ç¿ëÇÏ¿© ¼ýÀÚÀÇ ¸®½ºÆ®¸¦ 1 ¿¡¼­ 12 ±îÁö »ý¼ºÇÏ¿´´Ù.

´ÙÀ½À¸·Î ÆÄÀ̽ãÀº i ¸¦ ¸®½ºÆ®¿¡¼­ ù ¹ø° °ª°ú °°µµ·Ï ¸¸µç´Ù. ÀÌ °æ¿ì¿¡´Â 1 ÀÌ´Ù. ±×¸®°í ³ª¼­ ±×°ÍÀº µé¿©¾²±âµÈ ºÎºÐÀÇ Äڵ带 'the value i = 1' ¸¦ »ç¿ëÇÏ¿© ½ÇÇàÇÑ´Ù:

   print "%d x 12 = %d" % (1, 1*12)

ÆÄÀ̽ãÀº ±×¸®°í´Â for ¶óÀÎÀ¸·Î ´Ù½Ã µ¹¾Æ°¡¼­ i¸¦ ¸®½ºÆ®¿¡¼­ ´ÙÀ½ °ªÀ¸·Î ¼³Á¤ÇÑ´Ù, À̹ø¿¡´Â 2 ÀÌ´Ù. ±×°ÍÀº ¶Ç ´Ù½Ã µé¿©¾²±âµÈ Äڵ带 À̹ø¿¡´Â i=2 ¸¦ °¡Áö°í, ½ÇÇàÇÑ´Ù:

   print "%d x 12 = %d" % (2, 2*12)

ÀÌ·¯ÇÑ °úÁ¤À» ¹Ýº¹Çϱ⸦ i ÀÇ °ªÀÌ ¸®½ºÆ®¿¡ ÀÖ´Â ¸ðµç °ªµé·Î ¼³Á¤µÉ ¶§±îÁö °è¼ÓÇÑ´Ù. ¹Ù·Î ±× Á¡¿¡¼­ ±×°ÍÀº µé¿©¾²±â µÇÁö ¾ÊÀº ´ÙÀ½ÀÇ ¸í·É¾î·Î À̵¿ÇÑ´Ù. - ÀÌ °æ¿ì¿¡´Â ´Ù¸¥ ¸í·É¾îµéÀÌ ¾øÀ¸¹Ç·Î ÇÁ·Î±×·¥Àº ¸ØÃá´Ù.

¿©±â¿¡ ¶È °°Àº ȸµ¹À̸¦ º£ÀÌÁ÷À¸·Î ±¸ÇöÇÑ´Ù:

FOR I = 1 to 12
    PRINT I, " x 12 = ", I*12
NEXT I

ÀÌ°ÍÀº ´õ¿í ´õ ¸í·áÇÏ°í ½±°Ô ¹«½¼ÀÏÀÌ ÀϾ´ÂÁö º¸¿©ÁØ´Ù. ±×·¸Áö¸¸ ÆÄÀ̽㠹öÁ¯Àº ¿ì¸®°¡ ¼ýÀÚµéÀÇ ÁýÇÕ, ¸®½ºÆ®ÀÇ Ç׸ñµé ¶Ç´Â ´Ù¸¥ ¾î¶² ÁýÇÕµé(¿¹: ¹®ÀÚ¿­)¿¡ °üÇÏ¿©¼­µµ ȸµ¹À̸¦ ÇÒ ¼ö°¡ ÀÖ´Ù´Â Á¡¿¡¼­ ´õ¿í À¯¿¬ÇÏ´Ù.

±×¸®°í Tcl ¿¡¼­

Tcl Àº for ±¸Á¶¸¦ »ç¿ëÇϴµ¥ ±×°ÍÀº ¸¹Àº ÇÁ·Î±×·¡¹Ö ¾ð¾î¿¡¼­ ÀϹÝÀûÀÎ °ÍÀ¸·Î C °¡ ´ëÇ¥ÀûÀÌ´Ù. ±×°ÍÀº ´ÙÀ½°ú °°ÀÌ º¸ÀδÙ:


for {set i 1} {$i <= 12} {incr i} {
    puts [format "%d x 12 = %d" $i [expr $i*12]]
    }

ÁÖÀÇ : ÀÌ ±¸Á¶´Â 3 °³ÀÇ ºÎºÐÀ¸·Î ³ª´©¾îÁø´Ù:

ȸµ¹ÀÌ ¸öü´Â ¿ÀÁ÷ Á¡°ËºÎºÐÀÌ ÂüÀÏ ¶§¸¸ ½ÇÇàµÉ °ÍÀÌ´Ù. ÀÌ·¯ÇÑ ºÎºÐµé °¢°¢Àº ÀÓÀÇÀÇ Äڵ带 Æ÷ÇÔÇÒ ¼ö ÀÖÁö¸¸ ±×·¯³ª Á¡°ËºÎºÐÀº ¹Ýµå½Ã ºÒ¸®¾ð °ªÀ¸·Î Æò°¡µÇ¾ß ÇÑ´Ù.(±×°ÍÀ» Tcl¿¡¼­´Â 0À̵簡 0ÀÌ ¾Æ´Ñ°¡·Î ³ª´«´Ù.) ³»°¡ µé¿©¾²±âµÈ ȸµ¹ÀÌ ¸öü¸¦ º¸¿© ÁÖ¾úÁö¸¸ ÀÌ°ÍÀº ¼øÀüÈ÷ ÀÌÇظ¦ µ½±â À§ÇÑ °ÍÀÓÀ» ÁÖÀÇÇ϶ó. TclÀº ºí·ÏÀ» µé¿©¾²±â À§ÇØ '³ª'¸¦ ÇÊ¿ä·Î ÇÏÁö ¾Ê´Â´Ù, ±× º¸´Ù´Â °ýÈ£°¡ ½ÃÀÛ°ú ¸¶Áö¸·À» Ç¥½ÃÇϱâÀ§ÇØ »ç¿ëµÈ´Ù.

TclÀº ¶ÇÇÑ foreach±¸Á¶¸¦ °¡Áö°í À־ ¸®½ºÆ®¿¡ Àû¿ëµÉ ¼ö ÀÖ´Ù.

WHILE ȸµ¹ÀÌ

FOR ȸµ¹ÀÌ´Â °¡´ÉÇÑ ¿ÀÁ÷ À¯ÀÏÇÑ È¸µ¹ÀÌ ±¸Á¶´Â ¾Æ´Ï´Ù. ±×°ÍÀº ´ÜÁö FOR ·çÇÁ´Â ¼öÇàÇϱ⸦ ¿øÇÏ´Â ¹Ýº¹ÀÇ È½¼ö¸¦ ¾Ë·Á ÁÖµµ·Ï ȤÀº ¸ÕÀú °è»êÇÒ¼ö ÀÖµµ·Ï ¿ì¸®¿¡°Ô ¿ä±¸ÇÑ´Ù ¹«½¼ÀÏÀΰ¡ ÀϾ ±îÁö ¿ì¸®°¡ ƯÁ¤ÇÑ ÀÛ¾÷À» °è¼ÓÇÏ°íÀÚ ÇÒ¶§ ±×·¯³ª ¾ðÁ¦ ±× ÀÏÀÌ ÀϾÁö ¾ËÁö ¸øÇÑ´Ù¸é ±×·¯¸é ¹«½¼ÀÏÀÌ ÀϾ´Â°¡? ¿¹¸¦ µé¾î, ¿ì¸®´Â ÆÄÀÏ·Î ºÎÅÍ µ¥ÀÌŸ¸¦ Àаí ó¸®Çϱ⸦ ¿øÇÒ ¼öµµ ÀÖ´Ù, ±×·¯³ª ¿ì¸®´Â ¸ÕÀú ¾ó¸¶³ª ¸¹Àº µ¥ÀÌŸÇ׸ñÀ» ÆÄÀÏÀÌ Æ÷ÇÔÇÏ°í ÀÖ´ÂÁö ¾ËÁö ¸øÇÑ´Ù. ¿ì¸®´Â ÆÄÀÏÀÇ ³¡¿¡ µµ´ÞÇÒ ¶§±îÁö ´ÜÁö µ¥ÀÌŸ¸¦ ó¸®Çϱ⸦ ¿øÇÒ »ÓÀÌ´Ù. ±×°ÍÀº °¡´ÉÇϱâ´Â ÇÏÁö¸¸ FOR ȸµ¹ÀÌ¿¡¼­´Â ¾î·Æ´Ù.

ÀÌ ¹®Á¦¸¦ Ç®±â À§Çؼ­ ¿ì¸®´Â ¶Ç ´Ù¸¥ Á¾·ùÀÇ È¸µ¹À̸¦ °¡Áø´Ù: WHILE ȸµ¹ÀÌ. ±×°ÍÀº º£ÀÌÁ÷À¸·Î´Â ´ÙÀ½°ú °°ÀÌ º¸ÀδÙ:

J = 1
WHILE J <= 12
    PRINT J, " x 12 = ", J*12
    J = J + 1
WEND

ÀÌ°ÍÀº Àü°ú °°Àº °á°ú¸¦ »êÃâÇÏÁö¸¸ forȸµ¹ÀÌ ´ë½Å¿¡ whileȸµ¹À̸¦ »ç¿ëÇß´Ù. ±¸Á¶°¡ whileÀÓÀ» ÁÖ¸ñÇ϶ó, ´ÙÀ½¿¡´Â ºÒ¸®¾ð °ªÀ»(Âü ¶Ç´Â °ÅÁþÀÌ´Ù, ±â¾ï³ª´Â°¡?) Æò°¡Çϴ ǥÇö½ÄÀÌ µû¶ó¿Â´Ù. ¸¸¾à ±× Ç¥Çö½ÄÀÌ ÂüÀ̶ó¸é ȸµ¹ÀÌ ¾ÈÂÊÀÇ Äڵ尡 ½ÇÇàµÈ´Ù.

´ëü¿ëÀ¸·Î ¿ì¸®´Â ƼŬ¹öÀüÀ» »ìÆ캼 °ÍÀÌ´Ù:

set j  1
while {$j <= 12} {
   puts [format "%d x 12 = %s"  $j [expr $j*12]]
   set j [expr $j + 1]
}

¿©·¯ºÐÀÌ º¸µíÀÌ ±× ±¸Á¶´Â º£ÀÌÁ÷¿¡¼­ÀÇ WEND º¸´Ù´Â ¹Ý°ýÈ£ ȤÀº °¢°ýÈ£¿Í ´ë´ÜÈ÷ À¯»çÇÏ´Ù. ±×·¯³ª ȸµ¹ÀÌ ¾ÈÀÇ º¹ÀâÇÑ °ÍµéÀº ¹«¾ùÀΰ¡? ÆÄÀ̽㿡¼­ÀÇ Çü½ÄÈ­ ¹®ÀÚ¿­À» ±â¾ïÇϴ°¡? format Àº ƼŬÀÇ Çü½ÄÈ­ ¹®ÀÚ¿­ÀÌ´Ù. $j ´Â ´ÜÁö (¹®ÀÚ 'j'°¡ ¾Æ´Ï¶ó) j ÀÇ °ªÀ» ÀǹÌÇϸç expr ´Â ´ÜÁö '´ÙÀ½ ºÎºÐÀ» Ç¥Çö½ÄÀ¸·Î °è»êÇ϶ó'°í ¸»ÇØÁØ´Ù. °¢°ýÈ£´Â ƼŬ¿¡°Ô ¾î¶² ºÎºÐÀÌ ¸ÕÀú ó¸®µÇ¾ß ÇÏ´ÂÁö¸¦ °¡¸£ÃÄ ÁØ´Ù. ƼŬÀº Äڵ带 Çѹø¿¡ ¸ðµÎ ¹ø¿ªÇÏ¿© ½ÇÇàÇÑ´Ù´Â Á¡¿¡¼­ Æò¹üÇÑ ¾ð¾î´Â ¾Æ´Ï´Ù, ±×·¡¼­ °ýÈ£ ¾øÀ̴ ƼŬÀº ´Ü¾î 'expr'¸¦ Ãâ·ÂÇÏ·Á°í ÇÒ °ÍÀÌ°í ´ÙÀ½¿¡ ´õ ¸¹Àº °ªµéÀÌ ÀÖ´Â °ÍÀ» º¸°í´Â ¿¡·¯¸Þ½ÃÁö¸¦ ³»°í Æ÷±âÇÒ °ÍÀÌ´Ù ¿ì¸®´Â ƼŬ¿¡°Ô Çհ踦 ³»°í, ´ÙÀ½¿£ ¹®ÀÚ¿­À» Æ÷¸ËÇÏ°í, ´ÙÀ½¿£ ±× °á°ú¸¦ Ãâ·ÂÇ϶ó°í Áö½ÃÇÒ ÇÊ¿ä°¡ ÀÖ´Ù. È¥µ¿µÈ´Ù°í? °ÆÁ¤ÇÏÁö ¸¶¶ó. ³»°¡ ¸»Çѹٴë·Î ƼŬÀº ¾à°£ÀÇ µ¶Æ¯ÇÑ ÀåÁ¡µé°ú ¸¹Àº ±âÀÌÇÔÀ» °¡Áö´Â, Æò¹üÇÑ ¾ð¾î°¡ ¾Æ´Ï´Ù.

ÀÌÁ¦ ÆÄÀ̽ãÀ» »ìÆ캸ÀÚ:

>>> j = 1
>>> while j <= 12:
...    print "%d x 12 = %d" % (j, j*12)
...    j = j + 1

Áö±Ý±îÁö ÀÌ°ÍÀº ¸Å¿ì Á÷¼³ÀûÀ¸·Î º¸ÀδÙ. ´ÜÁö ÁöÀûÇÏ°íÀÚ ÇÏ´Â ÇÑ°¡Áö°¡ ÀÖ´Ù¸é - ¿©·¯ºÐÀº À§¿¡¼­ while°ú for°¡ ÀÖ´Â ¶óÀÎÀÇ ³¡¿¡ ÄÝ·Ð(:)ÀÌ Àִ°ÍÀÌ º¸À̴°¡? ±×°ÍÀº ÆÄÀ̽㿡°Ô ÇÑ ¹«´õ±âÀÇ ÄÚµå(ºí·Ï block)°¡ ³ªÅ¸³­´Ù´Â °ÍÀ» ¾Ë·Á ÁØ´Ù. ´ëºÎºÐÀÇ ¾ð¾î´Â ºí·ÏÀÇ ³¡À» ³ªÅ¸³»´Â ( º£ÀÌÁ÷ÀÇ WEND³ª ȤÀº ƼŬÀÇ °ýÈ£°°Àº) Ç¥½ÄÀ» °¡Áø´Ù. ±×·¯³ª ÆÄÀ̽ãÀº µé¿©¾²±â¸¦ »ç¿ëÇÏ¿© ±× ±¸Á¶¸¦ Áö½ÃÇÑ´Ù. ÀÌ°ÍÀÌ ¶æÇÏ´Â ¹Ù´Â ȸµ¹ÀÌ ¾ÈÀÇ ¶óÀÎµé ¸ðµÎ°¡ °°Àº ¾çÀ¸·Î µé¿©¾²±â µÇ¾î¾ß ÇÏ´Â °ÍÀÌ Áß¿äÇÔÀ» ÀǹÌÇÑ´Ù. ÀÌ°ÍÀº Àб⿡ ´õ ½¬¿ì¹Ç·Î ¾î·µç ÁÁÀº ½À°üÀÌ´Ù!

´õ¿í À¯¿¬ÇÑ È¸µ¹ÀÌ

ÀÌ ¼½¼ÇÀÇ Ã³À½¿¡ »ç¿ëÇß´ø 12´Ü °ö¼ÀÇ¥·Î µ¹¾Æ¿Í º¸¸é ¿ì¸®°¡ ¸¸µç ȸµ¹ÀÌ´Â 12´Ü °ö¼ÀÇ¥¸¦ Ãâ·ÂÇϱ⿡ ¾ÆÁÖ Àû´çÇÏ´Ù. ±×·¯³ª ´Ù¸¥ °ªµéÀº ¾î¶³±î? ¿©·¯ºÐÀº ±× ȸµ¹À̸¦ ¼öÁ¤ÇÏ¿©¼­ ¿¹¸¦ µé¾î 7´Ü °ö¼ÀÇ¥µµ °¡´ÉÇÏ°Ô ÇÒ ¼ö Àִ°¡? ±×°ÍÀº ´ÙÀ½°ú °°ÀÌ º¸ÀÏ °ÍÀÌ´Ù:

>>> for j in range(1,13):
...    print "%d x 7 = %d" % (j,j*7)

ÀÌÁ¦ ÀÌ°ÍÀº ¿ì¸®°¡ 12¸¦ 7·Î µÎ¹ø º¯°æÇؾ߸¸ ÇÑ´Ù´Â °ÍÀ» ÀǹÌÇÑ´Ù. ¸¸¾à ¿ì¸®°¡ ´Ù¸¥ °ªÀ» ¿øÇÑ´Ù¸é ¿ì¸®´Â ±×°ÍÀ» ¶Ç ´Ù½Ã º¯°æÇؾ߸¸ ÇÑ´Ù. ¿ì¸®°¡ ¿øÇÏ´Â °ö¼À°ªÀ» ÀÔ·ÂÇÒ ¼ö ÀÖ´Ù¸é ´õ¿í ÁÁÁö ¾ÊÀ»±î?

¿ì¸®´Â Ãâ·ÂµÉ ¹®ÀÚ¿­¿¡ ÀÖ´Â °ªµéÀ» ´Ù¸¥ º¯¼ö·Î ¹Ù²ÞÀ¸·Î½á ±×°ÍÀ» ÇÒ ¼ö ÀÖ´Ù. ±×·¯¸é ±× º¯¼ö¸¦ ¿ì¸®°¡ ȸµ¹À̸¦ ½ÇÇàÇϱâ Àü¿¡ ¼³Á¤Ç϶ó:

>>> multiplier = 12
>>> for j in range(1,13):
...    print "%d x %d = %d" % (j, multiplier, j*multiplier)

ÀÌ°ÍÀº ¿ì¸®ÀÇ ¿À·£ Ä£±¸ 12´Ü °ö¼ÀÇ¥ÀÌ´Ù. ±×·¯³ª ÀÌÁ¦ 7´ÜÀ¸·Î ¹Ù²Ù±â À§Çؼ­, ¿ì¸®´Â ´ÜÁö 'multiplier'ÀÇ °ªÀ» ¹Ù²Ù±â¸¸ ÇϸéµÈ´Ù.

¿©±â¿¡ ¿ì¸®´Â ¿¬¼Ó¿­°ú ȸµ¹À̸¦ °áÇÕÇÏ¿´´Ù. multiplier = 12ÀÇ µÚ¿¡, ¿¬¼ÓÀûÀ¸·Îin sequence for ȸµ¹ÀÌ°¡ µû¸£°í, óÀ½À¸·Î ¿ì¸®´Â ÇÑ°³ÀÇ ¸í·É¾î¸¦ °¡Áø´Ù.

ȸµ¹À̸¦ ȸµ¹ÀÌÇϱâ

ÀÌÀüÀÇ ¿¹Á¦¸¦ ÇÑ´Ü°è ´õ ÁøÀü½ÃÄÑ º¸ÀÚ. ¿ì¸®°¡ (1 Àº ±«·ÓÈ÷±â¿¡´Â ³Ê¹« ½Ã½ÃÇϹǷÎ) 2´Ü ºÎÅÍ 12´Ü±îÁö ¸ðµç °ö¼ÀÇ¥¸¦ Ãâ·ÂÇϱ⸦ ¿øÇÑ´Ù°í °¡Á¤ÇØ º¸¶ó. ¿ì¸®°¡ ½ÇÁ¦·Î ÇؾßÇÒ ¸ðµç °ÍÀº multiplierº¯¼ö¸¦ ȸµ¹ÀÌÀÇ ºÎºÐÀ¸·Î ¼³Á¤ÇÏ´Â °ÍÀÌ´Ù, ´ÙÀ½°ú °°ÀÌ:

>>> for multiplier in range(2,13):
...    for j in range(1,13):
...       print "%d x %d = %d" % (j,multiplier,j*multiplier)

óÀ½ÀÇ forȸµ¹ÀÌ ¾ÈÂÊÀ¸·Î µé¿©¾²±âµÈ ºÎºÐÀº ¿ì¸®°¡ óÀ½¿¡ ÇÔ²² ´Ù·ç±â ½ÃÀÛÇß´ø ȸµ¹ÀÌ¿Í ¶È °°´Ù. ±×°ÍÀº ´ÙÀ½°ú °°ÀÌ ÀÛµ¿ÇÑ´Ù:
¿ì¸®´Â multiplier¸¦ óÀ½ÀÇ °ª(2)À¸·Î ¼³Á¤ÇÑ´Ù ±×¸®°í´Â ´ÙÀ½ÀÇ È¸µ¹À̸¦ µ·´Ù.
±×¸®°í ³ª¼­ ¿ì¸®´Â multiplier¸¦ ´ÙÀ½ÀÇ °ª(3)À¸·Î ¼³Á¤ÇÏ°í ¾ÈÂÊÀÇ È¸µ¹À̸¦ ¶Ç ´Ù½Ã µ·´Ù, µîµî.
ÀÌ·¯ÇÑ Å×Å©´ÐÀº ³»Æ÷nestingµÈ ȸµ¹À̶ó°í ¾Ë·ÁÁ® ÀÖ´Ù.

ÇÑ°¡Áö ¹®Á¦Á¡Àº ¸ðµç Å×À̺íÀÌ ÇÔ²² º´Çյȴٴ °ÍÀε¥, ¿ì¸®´Â óÀ½ ȸµ¹ÀÌÀÇ ¸¶Áö¸·¿¡ ºÐ¸®¶óÀÎÀ» ´ÜÁö Ãâ·ÂÇÔÀ¸·Î½á ±×°ÍÀ» ¼öÁ¤ÇÒ ¼ö ÀÖ´Ù, ´ÙÀ½°ú °°ÀÌ:

>>> for multiplier in range(2,13):
...    for j in range(1,13):
...       print "%d x %d = %d" % (j,multiplier,j*multiplier)
...    print "------------------- "

µÎ¹ø° print¼­¼ú¹®Àº µÎ¹ø°ÀÇ 'for'¶óÀαîÁö ¿Ã¶ó¿Í Àִ°ÍÀ» ÁÖ¸ñÇ϶ó, ±×°ÍÀº ȸµ¹ÀÌ ¿¬¼Ó¿¡¼­ µÎ¹ø° ¼­¼ú¹®ÀÌ´Ù. ±â¾ïÇ϶ó, µé¿©¾²±â ¼öÁØÀº ÆÄÀ̽㿡¼­ ´ë´ÜÈ÷ Áß¿äÇÏ´Ù.

¾î¶² Å×À̺íÀÌ µû¶ó ¿À´ÂÁö º¸¿©ÁÖ±â À§ÇÏ¿© ±× ºÐ¸®ÀÚ¸¦ °¡Áö°í ½ÇÇèÇغ¸¶ó, Á¦¸ñÀ» Á¦°øÇÏ¸é ´õ¿í È¿°úÀûÀÌ´Ù. ÈùÆ® : ¿©·¯ºÐÀº ¾Æ¸¶µµ multiplier º¯¼ö¿Í Çü½ÄÈ­ ¹®ÀÚ¿­À» »ç¿ëÇÒ ÇÊ¿ä°¡ ÀÖÀ» °ÍÀÌ´Ù.

´Ù¸¥ ȸµ¹À̵é

¾î¶² ¾ð¾îµéÀº ´õ¿í ¸¹Àº ȸµ¹ÀÌ ±¸Á¶¸¦ Á¦°øÇÏÁö¸¸ for ¿Í while °°Àº °ÍÀº Ç×»ó Á¦°øµÈ´Ù. (¸ðµâ¶ó 2¿Í ¿Àº£·ÐÀº for ȸµ¹À̸¦ Èä³»³¾¼ö ÀÖÀ¸¹Ç·Î while ȸµ¹À̸¸À» Á¦°øÇÑ´Ù - À§¿¡¼­ ¿ì¸®°¡ º» ¹Ù¿Í °°ÀÌ) ¿©·¯ºÐÀÌ ¸¶ÁÖÄ¥Áöµµ ¸ð¸¦ ´Ù¸¥ ȸµ¹À̵éÀº ´ÙÀ½°ú °°´Ù:

do-while
while°ú °°Áö¸¸ Á¡°ËÀº ÈĹ̿¡¼­ ÀÌ·ç¾îÁö¹Ç·Î ȸµ¹ÀÌ´Â Ç×»ó Àû¾îµµ ÇѹøÀº ¸ÕÀú ½ÇÇàµÈ´Ù.

repeat-until
À§ÀÇ °Í°ú ºñ½ÁÇÏÁö¸¸ Á¡°ËÀÇ ³í¸®´Â ¹Ý´ëÀÌ´Ù

GOTO, JUMP, LOOP µîµî
¿À·¡µÈ ¾ð¾î¿¡¼­ ÁÖ·Î º¸ÀδÙ, À̰͵éÀº º¸Åë Äڵ忡 Ç¥½ÄÀÚ¸¦ ¼³Á¤ÇÏ°í ¸í½ÃÀûÀ¸·Î Á÷Á¢ ±×°÷¿¡ Á¡ÇÁÇÑ´Ù.

±â¾ïÇؾßÇÒ ¿äÁ¡
  • FOR ȸµ¹ÀÌ´Â ¸í·ÉÀÇ ÁýÇÕÀ» °íÁ¤µÈ ¹Ýº¹ÀÇ È½¼ö ¸¸Å­ ¹Ýº¹ÇÑ´Ù.
  • WHILE ȸµ¹ÀÌ´Â ¸í·ÉÀÇ ÁýÇÕÀ» ¾î¶² Á¾·á Á¶°ÇÀÌ ¸¸Á·µÉ ¶§±îÁö ¹Ýº¹ÇÑ´Ù. ¸¸¾à Á¾·á Á¶°ÇÀÌ °ÅÁþÀ¸·Î ½ÃÀ۵ȴٸé ȸµ¹ÀÌÀÇ ¸öübody´Â ½ÇÇàµÇÁö ¾ÊÀ» °ÍÀÌ´Ù.
  • ´Ù¸¥ Á¾·ùÀÇ È¸µ¹À̵µ Á¸ÀçÇÏÁö¸¸ FOR¿Í WHILE ´Â °ÅÀÇ Ç×»ó Á¦°øµÈ´Ù.
  • ÆÄÀ̽ãÀÇ for ȸµ¹ÀÌ´Â ½ÇÁ¦·Î´Â foreach ȸµ¹ÀÌÀÌ´Ù - ±×°ÍµéÀº Ç׸ñÀ¸·Î ÀÌ·ç¾îÁø ¸®½ºÆ®¿¡ ÀÛµ¿ÇÑ´Ù.
  • ȸµ¹ÀÌ´Â ÇϳªÀÇ ¾ÈÂÊ¿¡ ´Ù½Ã ³»Æ÷°¡´ÉÇÏ´Ù.
Previous  Next  Contents


ÀÌ À¥ÆäÀÌÁö¿¡ ´ëÇÏ¿© Áú¹®À̳ª Á¦¾È»çÇ×ÀÌ ÀÖÀ¸¸é ´ÙÀ½ ÁÖ¼Ò·Î ³ª¿¡°Ô ÀüÀÚ¸ÞÀÏÀ» º¸³»¶ó: agauld@crosswinds.net