lecture Home > ASP Tips > Algorithm

Algorithm

   °­Á ÃÖÃÊ ÀÛ¼ºÀÏ : 2000³â 11¿ù 26ÀÏ
   °­Á ÃÖÁ¾ ¼öÁ¤ÀÏ : 2001³â 12¿ù 04ÀÏ

   ÀÛ¼ºÀÚ : caelin(±è ¹Î¿À)
   ÆíÁýÀÚ : Taeyo(±è Å¿µ)

   °­Á Á¦¸ñ : À¯Å¬¸®µåÀÇ ¾Ë°í¸®Áò (Euclid`s algorithm) Àϸí ÃÖ´ë°ø¾à¼ö ¾Ë°í¸®Áò

°­Á Àü Å¿ÀÀÇ Àâ´ã>

±è¹Î¿À´ÔÀÇ ¾Ë°í¸®Áò °­Á°¡ ¿Ã¶ó¿À±â ½ÃÀÛÇϰí ÀÖ½À´Ï´Ù. ÇÁ·Î±×·¡¹Ö¿¡¼­ ¾Ë°í¸®ÁòÀº »ó´çÈ÷ Áß¿äÇÑ ºÎºÐÀÓÀº ´Ùµé ¾Æ½Ç °Ì´Ï´Ù. ¾ð¾î´Â ¹Ù²î¾îµµ ¾Ë°í¸®ÁòÀº ¿µ¿øÇÏ´Ù... .NET Á¤Ç°Ãâ½Ã¸¦ ¾ÕµÎ°í ¾Ë°í¸®Áò¿¡ ½Ã°£À» Á» ´õ ÅõÀÚÇÏ´Â °ÍÀº ¾î¶³±î¿ä? ÀÌ»ó ¹öÁö´Ï¾Æ¿¡¼­ Àӽà ƯÆÄ¿ø Å¿À¿´¾¸´Ù.. ¿ä°ÅÀÌ ¿Ô¶¡´Ù.
¾Æ¾Æ.. ÀÌ °­ÁÂÀÇ ºÐ·ù´Â.. ASP ÆÁ ÂÊÀ¸·Î ÀÏ´Ü Á¤ÇßÀ¸´Ï Âø¿À¾øÀ¸½Ã±â ¹Ù¶ø´Ï´Ù.


°­Á ½ÃÀÛ >

1) ¾Ë°í¸®ÁòÀÇ Á¤ÀÇ 

¾È³çÇϼ¼¿ä taeyo ´Ô ½ÎÀÌÆ®¿¡¼­ óÀ½ °­Á¸¦ ¸Ã°Ô µÈ caelin À̶ó°í ÇÕ´Ï´Ù. ^^*    ¾ÕÀ¸·Î ÀоîÁֽô ºÐÀÌ ¸¹´Ù¸é °è¼Ó °­Á¸¦ ¿Ã¸±»ý°¢À̱¸¿ä..Àα⠾øÀ¸¸é ÅðÃâ´çÇϴ°ÅÁÒ ..È÷È÷..    ÀÏ´Ü Á¦°¡ ¾Ë°í¸®Áò¿¡ ´ëÇØ¼­ °­Á¸¦ ÇÏ°Ô µÈ ¹è°æÀº ÀÌ ±ÛÀ» Àд ´ëºÎºÐÀÇ ÇÁ·Î±×·¡¸ÓµéÀº  ¾Æ¸¶ À¥ÇÁ·Î±×·¡¸Ó ¶ó´Â Á÷¾÷À» °¡Áö°í °è½Ã´Â ºÐµéÀϰÍÀÔ´Ï´Ù. (±×Áß¿¡¼­µµ asp °ÚÁÒ?)  Àú¿ª½Ã ÇѶ§ À¥ÇÁ·Î±×·¥À» ÇÏ¿´¾ú°í óÀ½½ÃÀÛÀ» À¥ÇÁ·Î±×·¥ºÎÅÍ ½ÃÀÛÇß¾ú½À´Ï´Ù. Áö±Ýµµ ¸¶Âù°¡ÁöÁö¸¸ ±×´ç½Ã ÀúÇÑÅ× taeyo ´ÔÀÇ Ã¥Àº ÇÑÁٱ⠺û°°Àº °ÍÀÌ¿´ÁÒ..±²ÀåÈ÷ ½±°Ô ¼³¸íÀ» ÇØÁּ̱⿡ ÇÁ·Î±×·¥ÀÇ °³³äÀ» ÀâÀ»¼ö ÀÖ¾ú°í Àç¹Ìµµ ºÙÀϼö ÀÖ¾ú½À´Ï´Ù... 

±×·¯´øÁß ¾î´À¶§ºÎÅϰ¡ Á¦¸Ó¸®¼Ó¿¡¼­ ¶°³ªÁö ¾Ê´Â °í¹Î°Å¸®°¡ Çϳª ã¾Æ ¿Ô½À´Ï´Ù..  °ú¿¬ taeyo ´ÔÀÌ °Ô½ÃÆÇ ¸¸µå´Â ¹ýÀ» °¡¸£ÃÄ ÁÖÁö ¾Ê¾Ò´Ù¸é ³»°¡ ³»ÈûÀ¸·Î °Ô½ÃÆÇÀ» ¸¸µé¼ö ÀÖ¾úÀ»±î ÇÏ´Â °í¹ÎÀÌÁÒ.. ´Ü¼øÈ÷ database ¿¡ Á¢¼ÓÇØ¼­ recordset ¸¦ °¡Á® ¿À´Â°Í¸¸À¸·Î Àú´Â °Ô½ÃÆÇÀ» ¸¸µé¼ö ÀÖ¾úÀ»±î¿ä? ¿©·¯ºÐÀº ¾î¶²°¡¿ä ?? 

Database ¸¦ ÀÌ¿ëÇÏ´Â ¹æ¹ý¿¡ ´ëÇÑ Ã¥Àº ½ÃÁß¿¡ ¹«¼öÈ÷ ¸¹½À´Ï´Ù..  ÇÏÁö¸¸ ±×Ã¥À» º¸°í ¿ì¸®´Â ´äº¯Çü °Ô½ÃÆÇÀ» ¸¸µé¼ö ÀÖ¾úÀ»±î¿ä ? ¾Æ¸¶µµ Èûµé¾úÀ¸¸®¶ó »ý°¢µË´Ï´Ù..¿ì¸®´Â Å¿ä´ÔÀÌ »ý°¢ÇØ ³»½Å ´äº¯Çü °Ô½ÃÆÇ ¾Ë·Î¸®ÁòÀÌ ÀÖ¾ú±â¿¡ ÈûµéÀÌÁö ¾Ê°í ´äº¯Çü °Ô½ÃÆÇÀ» ¸¸µé¼ö ÀÖ¾ú´ø °ÍÀÔ´Ï´Ù..  ÇÏÁö¸¸..¿©·¯ºÐÀÌ taeyo ´ÔÀÇ Ã¥ÀÌ ³ª¿À±âÀü¿¡ ´äº¯Çü °Ô½ÃÆÇÀ» ¸¸µé¾î¾ß Çß´Ù¸é..? ¿©·¯ºÐÀº ¾Æ¸¶ ¾öû³­ °í»ýÀ» ÇϼÌÀ»°ÍÀÔ´Ï´Ù. ÇÏÁö¸¸ ±×ÀÌÈÄ ÀÇ ³»°øÀº ½Ç·Î ¾öû³ª°Ô ³ô¾ÆÁ³À½À» ¿©·¯ºÐ ½º½º·Î ´À³¢°Ô µÉ°ÍÀÌ°í ±×°ÍÀº ¿©·¯ºÐÀÇ Àç»êÀÌ µÉ°ÍÀÔ´Ï´Ù.  ±×·± ¾Ë°í¸®ÁòÀ» Çϳª »ý°¢ÇØ ³»´Â°Í¸¸À¸·Îµµ ¿©·¯ºÐÀº À¯¸íÇÑ»ç¶÷ÀÌ µÉ¼öµµ Àִٴ°ÅÁÒ..  °á±¹ ÇÁ·Î ±×·¡¸Ó´Â ¾î¶² ÇÁ·Î±×·¥À» ÇÒÁÙ ¾Æ´À³Äº¸´Ù. ¾î¶² ¾Ë°í¸®ÁòÀ» ¸¸µéÁÙ ¾Æ´À³Ä¿¡ ¹äÁÙÀÌ ´Þ·È´ÙÇØµµ °ú¾ðÀÌ ¾Æ´Õ´Ï´Ù..

¿ì¸®¿¡°Ô´Â asp ¿Í IIS ¶ó´Â ¸ÁÄ¡¿Í ¸øÀÌ ÀÖ°í MS-SQl À̶ó´Â ³ª¹«°¡ ÀÖ½À´Ï´Ù. ÇÏÁö¸¸ À̰͸¸À¸·Î ¿ì¸®´Â ¸ÚÁø ÁýÀ» ÁöÀ»¼ö ÀÖÀ»±î¿ä ?  ¿ì¸®°¡ ÁýÀ» Áþ±â À§Çؼ­´Â ¼³°èµµµµ ÀÖ¾î¾ß ÇÏ°í °æÇèµµ ÀÖ¾î¾ß ÇÏ°í ³ª¹«¸¦ ÀÚ¸£´Â ¹ý°ú ¸ÁÄ¡ÁúÀ» ÇÏ´Â ¹ýÀ» ¹è¿ö¾ß¸¸ÇÕ´Ï´Ù..À̰ÍÀÌ ¹Ù·Î ¾Ë°í¸®ÁòÀÔ´Ï´Ù. 

ÇÏÁö¸¸ Áö±Ý Çö½ÇÀ» ¾î¶°ÇѰ¡¿ä..? ȸ»ç¿¡¼­ ¼îÇθô ¸¸µé¾î¶ó..°Ô½ÃÆÇ ¸¸µé¾î¶ó Çϸé ÀÎÅͳݿ¡ ¸¹ÀÌ °ø°³µÇ¾î ÀÖ´Â ¾Ë°í¸®ÁòÀ» ±×³É °¡Á®´Ù ¾²Áö´Â ¾ÊÀ¸½ÅÁö¿ä.  ±×·¸°Ô ÀÎÅͳݿ¡¼­ °¡Á®´Ù ¾²´Â°Ô ³ª»Ú´Ù´Â ¶æÀº Àý´ë ¾Æ´Õ´Ï´Ù. ÇÏÁö¸¸ ÇѹøÂë ¿©·¯ºÐÀº ¿©·¯ºÐ¸¸ÀÇ ¾Ë°í¸®ÁòÀ¸·Î °Ô½ÃÆÇµµ ¸¸µé¾î º¸°í ¼îÇθôµµ ¸¸µé¾î º¸·Á°í ³ë·ÂÀº ÇØº¸¼Ì´ÂÁö ±Ã±ÝÇÕ´Ï´Ù.

¿©·¯ºÐÀÌ ¾ÕÀ¸·Î ¹«¾ùÀ» ¸¸µé´ø °£¿¡ ³²ÀÇ ¾Ë°í¸®ÁòÀ» ¹è³¢Áö ¾Ê°í ÇѹøÂëÀÌ¶óµµ ±× ¹®Á¦¿¡ ´ëÇØ¼­ °í¹ÎÇÔÀ¸·Î½á (±×°ÍÀÌ ¼º°øÇÏ´øÁö ½ÇÆÐÇÏ´øÁö °£¿¡..) ¿©·¯ºÐÀº ÁøÁ¤ÇÑ ÇÁ·Î±×·¡¸Ó°¡ µÉ¼ö ÀÖÁö ¾ÊÀ»±î »ý°¢ÇÕ´Ï´Ù. ( Àú¿ª½Ã ¾ÆÁ÷ ¹äÁÙ°ÆÁ¤ÇÏ´Â ÇÁ·Î±×·¡¸ÓÁß Çϳª ÀÔ´Ï´Ù. :) ¹«½¼ ÇÁ·Î±×·¥À¸·Î ¸¸µå´À³Ä¿Í (asp, jsp, vb , vc++ µîµî ) ¹«¾ùÀ» ¸¸µå´À³Ä ( database ¿¬µ¿ ÇÁ·Î±×·¥ , ÀͽºÇ÷η¯, ¼îÇθô µîµî..) Àº ¾Ë·Î¸®Áò °­ÀÇ ¿¡¼­ º°·Î Áß¿äÇÏÁö ¾ÊÀº°Å °°½À´Ï´Ù.

¿ì¸®´Â ¾î¶² »ç°í¹æ½ÄÀ» °¡Áö°í ÇÁ·Î±×·¥À» ÇØ¾ß Çϴ°¡.! »ç¶÷ÀÌ ÇÒ¼ö ÀÖ´ÂÀϰú ÄÄÇ»ÅͰ¡ ÇÒ¼ö Àִ ÀÏÀÇ Â÷ÀÌÁ¡Àº ¹«¾ùÀÌ°í ±×Â÷ÀÌÁ¡À» ¿ì¸®´Â ¾î¶²½ÄÀ¸·Î ÀÌ¿ëÇØ¾ß Çϴ°¡¿¡ ´ëÇÑ ¾ê±â¸¦ Áö±ÝºÎÅÍ ÇÏ·Á°í ÇÕ´Ï´Ù. (¼­·ÐÀÌ Á» ±æ¾úÁÒ..?ÇìÇì..)

¾ÕÀ¸·Î À̾߱â´Â »ó´çÈ÷ ¼öÇÐÀûÀÎ ³»¿ëÀϼöµµ À־ »ó´çÈ÷ Àç¹Ì°¡ ¾ø´Â ³»¿ëÀÌ µÉ°ÍÀ̶ó°í Àú¿ª½Ã »ý°¢ÇÏÁö¸¸ ¿©·¯ºÐÀÌ Á÷¾÷À» ¹Ù²Ù½Ç »ý°¢ÀÌ ¾øÀ¸½Ã´Ù¸é 30ºÐÁ¤µµ ½Ã°£À» ³»¼Å¼­ ±×³É Àç¹Ì ¾ø´Â ¼Ò¼³Ã¥ Àд´٠»ý°¢ÇÏ½Ã°í ³¡±îÁö ÀоîÁֽñ⠹ٶø´Ï´Ù . ±×¸®°í ¾ÕÀ¸·Î °¡´ÉÇÏ¸é ¿µ¾î´Â ¾²Áö ¾Ê°í Çѱ۷ΠÇϰڽÀ´Ï´Ù. (Á¦°¡ ¿µ¾î°¡ ¸¹ÀÌ µþ¸³´Ï´Ù . T.T) ±×¸®°í °£È¤ ¹Ý¸»ÀÌ ¼¯ÀÌ´õ¶óµµ ÀÌÇØ ºÎŹ µå¸³´Ï´Ù. 

ÀÌÁ¦ ¾Ë°í¸®Áò°øºÎ¸¦ ¿Ö ÇØ¾ß¸¸ ÇÏ´ÂÁö´Â ¸»¾¸µå¸°°Å °°°í. ¿ì¼± ¸»¾¸µå¸®°í ½ÍÀº°ÍÀº "Àý´ëÀûÀ¸·Î ÃÖ»óÀÇ ¾Ë°í¸®ÁòÀº ¾ø´Ù " ÀÔ´Ï´Ù. Áï ¾î¶² »óȲ¿¡¼­µµ °¡Àå À߸´ ¾Ë°í¸®ÁòÀº Á¸ÀçÇÏÁö ¾Ê°í, Ç×»ó ÁÖ¾îÁø ¹®Á¦ÀÇ »óȲ°ú Á¦ÇÑÁ¡ÀÌ ÁÖ¾îÁú¶§¿¡¸¸ ÃÖ»óÀÇ ¾Ë°í¸®ÁòÀ» ¼±ÅÃÇÒ¼ö ÀÖ´Ù´Â °ÍÀÔ´Ï´Ù. À̰ÍÀº °æÇè»ó ³ª¿Â°ÍÀÏ ¼öµµ ÀÖ°í Åë°èÀûÀ¸·Î ³ª¿Â°ÍÀ» º¸°í ¾Ë°í¸®ÁòÀ» ±¸ÇöÇÒ¼öµµ ÀÖ´Ù´Â ¶æÀ̱⵵ ÇÕ´Ï´Ù.

»ç½Ç ¾Ë°í¸®ÁòÀ̶õ ¾î¶² Ãß»óÀûÀÎ °ÍÀÏÁöµµ ¸ð¸£±â¶§¹®¿¡ À̰Ϳ¡ °üÇØ¼­ ´õ ¼³¸íÀ» ÇØµå¸®°í ½Í°í ¾î¶»°Ô ¿¬±¸ µÇ¾î ¿Ô´ÂÁöµµ ¸»¾¸µå¸®°í ½ÍÁö¸¸ .. Á¦°¡ °­Á¸¦ ¸¹ÀÌ ºÁ¿Â°á°ú ±×·±°Ô ¼³¸íÀÌ ³Ê¹« ±æ¸é Áö·çÇÏ´õ¶ó±¸¿ä..±×·¡¼­ ÀÏ´Ü ¸ÀºÆ±â·Î "ÃÖ´ë °ø¾à¼ö" ¸¦ ã´Â ¾Ë°í¸®ÁòÀ» °°ÀÌ »ý°¢ÇØ º¸±â·Î ÇϰڽÀ´Ï´Ù.  ( ¿©±â¼­ ¿©·¯ºÐÀº ³­ ÃÖ´ë°ø¾à¼ö ã´Â ÇÁ·Î±×·¥µûÀ§´Â ¸¸µéÀϾøÀ»²¬ ? ÇϽÇÁöµµ ¸ð¸£°Ú½À´Ï´Ù. Àú¿ª½Ã À̰ÍÀ» ½áº»Àû ¾ø½À´Ï´Ù..¾Æ±îµµ ¸»¾¸µå·ÈµíÀÌ À̰­Á¿¡¼­ ¹«¾ùÀ» ¸¸µå´À³Ä´Â º°·Î Áß¿äÇÑ°Ô ¾Æ´ÔÀ» ´Ù½Ã Çѹø °­Á¶ÇØ µå¸³´Ï´Ù.)

(2) À¯Å¬¸®µåÀÇ ¾Ë°í¸®Áò (Euclid`s algorithm) Àϸí ÃÖ´ë°ø¾à¼ö ¾Ë°í¸®Áò.

ÀÌ ¾Ë°í¸®ÁòÀº Àü»ê°ú¸¦ Á¹¾÷ÇϽŠºÐµéÀº ¾Ë°í¸®Áò ½Ã°£¿¡ ¹è¿ü´Ù°í ÇÏ´õ±º¿ä..(°¡Á¶±â´ÔÀÌ ¸»¾¸ÇØ Áּ̽À´Ï´Ù T.T) ´õ±º´Ù³ª ÀÌ ¾Ë°í¸®ÁòÀº ½ÇÁ¦ÇÁ·Î±×·¡¹Ö Çϴµ¥ º°·Î µµ¿òÀÌ µÉ¸¸ÇÑ ¾Ë°í¸®ÁòÀÌ ¾Æ´Ô¿¡µµ Ã¹¹øÂ°·Î ¼Ò°³½ÃÄѵ帮´Â ÀÌÀ¯´Â ÀÌ ¾Ë°í¸®ÁòÀÇ Æ¯Â¡ÀÌ ÄÄÇ»ÅͰ¡ ÇÏ´ÂÀϰú »ç¶÷ÀÇ ÇÏ´Â ÀÏÀÇ Â÷À̸¦ ¾ÆÁÖ ±Ø¸íÇÏ°Ô ´ëÁ¶Çؼ­ º¸¿©ÁÝ´Ï´Ù.

ÀúÀÇ °æ¿ì ÀÌ ¾Ë°í¸®ÁòÀ» º¸°í ³ª¼­ ¾Ë°í¸®Áò °øºÎ¸¦ ½ÃÀÛÇß°í ¿©·¯ºÐµµ ±×·¸°Ô ´À²¼À¸¸é ÇÏ´Â ¸¶À½¿¡¼­ À¯Å¬¸®µå ¾Ë°í¸®Áò À» ¼±ÅÃÇÏ°Ô µÇ¾úÀ½À» ¹Ì¸® ¹àÈü´Ï´Ù. ÀÏ´Ü ¿ì¸®´Â ÁßÇб³¸¦ Á¹¾÷ÇÑÁö°¡ ¿À·¡ µÆ±â¶§¹®¿¡ ÃÖ´ë °ø¾à¼ö Á¤ÀÇ¿¡ ´ëÇØ¼­ ´Ù½Ã ¸»¾¸µå¸®¸é "ÁÖ¾îÁö´Â µÎÁ¤¼öÀÇ ¾à¼öÁß¿¡¼­ °¡Àå Å« °øÅëµÇ´Â ¾à¼ö( ¾Æ ¹º°¡ ¸»ÀÌ ³Ê¹« ¾î·Æ´Ù --;)" ÀÔ´Ï´Ù.

¾à¼ö¶õ ¿¹¸¦ µé¾î 7À» ³ª¸ÓÁö ¾øÀÌ ³ª´­¼ö ÀÖ´Â Á¤¼ö ÀÔ´Ï´Ù. 7 ÀÇ °æ¿ì 1°ú 7¹Û¿¡ ¾ø°ÚÁÒ? 10ÀÇ ¾à¼ö´Â 1, 2, 5, 10 ÀÌ µÇ°ÚÁÒ ?

 

ex ) 280 °ú 30ÀÇ ÃÖ´ë°ø¾à¼ö ±¸Çϱâ


  280 ÀÇ ¾à¼ö : 1, 2, 4, 5, 7, 8, 10, 14, 20, 28, 40, 56, 70, 280
  30   ÀÇ ¾à¼ö : 1, 2, 3, 5, 6, 10, 15, 30

280 ÀÇ ¾à¼ö¿Í 30ÀÇ ¾à¼öÁß °øÅëµÇ´Â°ÍÀº 1, 2, 5, 10 À̸ç ÀÌÁß¿¡¼­ Á¦ÀÏ Å« 10 ÀÌ ¹Ù·Î ÃÖ´ë °ø¾à¼ö ÀÔ´Ï´Ù.!!

¾Æ ±×·³ À̰ÍÀ» ¿ì¸®´Â ÁßÇб³¶§ ¾î¶»°Ô Ç®¾úÀ»±î¿ä. ±â¾ï³ª½ÇÁö ¸ð¸£Áö¸¸ ¿ì¸®´Â À̰ÍÀ» ¼ÒÀμö ºÐÇØ ¶ó´Â °ÍÀ¸·Î Ç®¾ú¾ú½À´Ï´Ù.


  2 | 280 30        280 °ú 30À» 2·Î ³ª´«´Ù
  5 | 140 15        ±×°ÍÀÇ ¸òÀ» ´Ù½Ã 5·Î ³ª´«´Ù.
   -------------
       28  3 <- ´õÀÌ»ó ³ª´©¾î ¶³¾î ÁöÁö¾Ê´Â Á¤¼ö.(°ø½Ä 1)

¿©±â¼­ 280°ú 30À» ³ª´©¾ú´ø 2¿Í 5¸¦ °öÇÏ¸é ³ª¿À´Â ¼ö 10 ÀÌ ¿ì¸®°¡ Çß´ø ÃÖ´ë°ø¾à¼ö ±¸ÇÏ´Â ¹æ¹ýÀ̾ú½À´Ï´Ù. (±â¾ï ¾È³ªÁöÁÒ? Àúµµ ±â¾ï ¾È³² T.T) À̹æ¹ýÀº ´ë´ÜÈ÷ ÁÁÀº ¹æ¹ýÀ̱â´Â ÇÏÁö¸¸ ¾îµð±îÁö³ª »ç¶÷ÀÌ Ç®±â¿¡ ÁÁÀº ¹æ¹ýÀÔ´Ï´Ù. ÄÄÇ»ÅÍ¿¡ À̹æ¹ýÀ» Àû¿ëÇϱâ´Â Á»²¬²ô·´½À´Ï´Ù. ¿Ö³ÄÇÏ¸é °øÅëµÇ´Â Àμö (2, 5) ¸¦ ±¸ÇϱⰡ ÄÄÇ»ÅÍ¿¡°Ô´Â ¿©°£ Èûµç ÀÛ¾÷ÀÌ ¾Æ´Ï±â ¶§¹®ÀÌÁÒ... ±×·¸´Ù¸é ¾î¶»°Ô ÇØ¾ß ÇÒ±î¿ä ?

A¿Í B¶ó´Â Á¤¼ö°¡ ÀÖ´Ù°í °¡Á¤ÇսôÙ. ÀÌ A¿Í B´Â ÃÖ´ë°ø¾à¼ö·Î½á G¸¦ °®´Â´Ù°í ÇÑ´Ù¸é A¿Í B´Â ´ÙÀ½°ú°°ÀÌ Ç¥ÇöÇÒ¼ö ÀÖ½À´Ï´Ù.  

A = a * G (A°¡ 280 À̶ó°í °¡Á¤Çϸé 280 = 28 * 10   ¿©±â¼­ 28Àº À§¿¡¼­ ±¸ÇÑ ´õÀÌ»ó ³ª´©¾î ¶³¾îÁöÁö ¾Ê´ÂÁ¤¼ö(°ø½Ä1 ) ÀÔ´Ï´Ù.) 

B = b * G (B°¡ 30 À̶ó°í °¡Á¤Çϸé 30 = 3 * 10   ¿©±â¼­ 3Àº À§¿¡¼­ ±¸ÇÑ ´õÀÌ»ó ³ª´©¾î ¶³¾îÁöÁö ¾Ê´ÂÁ¤¼ö ÀÔ´Ï´Ù.)

¿©±â¼­ Çѹø¸¸ ´õ »ý°¢ÇØ º¾½Ã´Ù. (¼öÇн𣠰°Áö¸¸ ÇÁ·Î±×·¥°ú ¼öÇÐÀº ¶³¾îÁú¼ö ¾ø´Â »çÀÌ ÀÔ´Ï´Ù.) ±×·¸´Ù¸é A - B (Áï ¿©±â¼­´Â 280 - 30 ) °ú B (¿©±â¼­´Â 30) ÀÇ ÃÖ´ë°ø¾à¼ö´Â ¾ó¸¶ Àϱî¿ä ?

 

ex) Áï 250 °ú 30ÀÇ ÃÖ´ë °ø¾à¼ö´Â ? 

À̰ÍÀ» ¼ÒÀμö ºÐÇØ·Î Ç®¾î º¸¸é


  2 | 250 30
  5 | 125 15
    ------------
       25  3

Àߺ¸½Ã¸é 250 °ú 30ÀÇ ÃÖ´ë °ø¾à¼ö ¿ª½Ã 2 * 5 = 10 À̶ó´Â °á·ÐÀÌ ³ª¿É´Ï´Ù..  ±×·¸´Ù¸é 250 - 30 (Áï 220 ) °ú 30ÀÇ ÃÖ´ë °ø¾à¼ö´Â ?? À̰Ϳª½Ã ¼ÒÀμö ºÐÇØ·Î Ç®¾î º¸¸é


  2 | 220 30
  5 | 110 15
    ----------
       22  3

¿©±â¼­µµ ÃÖ´ë°ø¾à¼ö´Â 10 À̵˴ϴÙ. .  ¿ì¿À¿À¿À~~ ±×·¸½À´Ï´Ù..¿ì¸®´Â ¿©±â¼­ ¹º°¡ÀÇ ±ÔÄ¢À» ãÀ»¼ö ÀÖÀ»°Í¸¸ °°½À´Ï´Ù..   Áï µÎ¼ýÀÚÀÇ ÃÖ´ë °ø¾à¼ö¸¦ ±¸ÇÏ´Â ¾Ë°í¸®Áò¿¡¼­ A ¿Í BÀÇ ÃÖ´ë°ø¾à¼ö¿Í µÑÁß¿¡ ´õ Å«¼ö A¿¡¼­ B¸¦ »«¼ýÀÚ (¿©±â½º´Â 250 ȤÀº 220 )°ú B (¿©±â¼­´Â 30) ÀÇ ÃÖ´ë °ø¾à¼ö´Â °°´Ù´Â °á·ÐÀÌ ³ª¿É´Ï´Ù..  ±×·¸´Ù¸é À̰ÍÀ» ±¸ÇöÇÏ´Â ÇÔ¼ö°¡ ÀÖ´Ù¸é..ÀÌ·¸°Ô Ç¥ÇöÇÒ¼ö ÀÖÀ»°Å °°½À´Ï´Ù.

function get_gcd(int u, int v ) ¶ó´ÂÇÔ¼ö°¡ ÀÖ´Ù°í »ý°¢ÇսôÙ. ÀÌ ÇÔ¼ö´Â µÎÁ¤¼ö¸¦ ÀÔ·ÂÇϸé ÃÖ´ë°ø¾à¼ö°¡ ³ª¿À´Â ÇÔ¼öÀÔ´Ï´Ù.


  function get_gcd(u, v) = function get_gcd(u-v, v) <-- (½Ä 1

( óÀ½ÇÔ¼ö¿¡´Ù°¡ 280, 30 À»³Ö´ø µÎ¹øÂ°ÇÔ¼ö ¿¡´Ù°¡ 250-30, 30 À»³Ö´øÁö °£¿¡ °°Àº ¿ì¸®´Â 10¶ó´Â 
  °á°ú¸¦ ¾òÀ»¼ö ÀÖ´Â ÇÔ¼ö¸¦ ¸¸µé¸é µÇ´Â °ÍÀÔ´Ï´Ù.)

  ±×¸®°í ÃÖ´ë°ø¾à¼ö´Â Á¤¼öÀÇ ¼ø¼­¿¡ »ó°ü ¾øÀ¸¹Ç·Î ´ÙÀ½½Äµµ ¼º¸³ÇÕ´Ï´Ù
  (Áï 280ÀÌ ¸ÕÀú µé¾î°¡´ø 30ÀÌ ¸ÕÀú µé¾î°¡´ø »ó°ü ¾ø½À´Ï´Ù..)

  ÃÖ´ë°ø¾à¼ö (u, v) = ÃÖ´ë°ø¾à¼ö (v, u) <-- (½Ä 2)

  ±×¸®°í ¿ì¸®¿¡°Ô´Â º°·Î ¹Ý°©Áö ¾ÊÀº ¼ýÀÚ 0ÀÌ µé¾î ¿À´Â°Íµµ »ý°¢ÇغÁ¾ß Çϴµ¥
  ¸¸¾à 0 ÀÌ¾Æ´Ñ u ¶ó´Â ¼ö¿Í 0ÀÇ ÃÖ´ë °ø¾à¼ö´Â ¸ðµç Á¤¼ö
  À̱⠶§¹®¿¡ (0 = u * 0 ) ¹«Á¶°Ç u °¡ ÃÖ´ë °ø¾à¼ö°¡ µË´Ï´Ù...

  ÃÖ´ë°ø¾à¼ö(u, 0) = u -- (½Ä 3)

 


  À̰ÍÀ» ¹ÙÅÁÀ¸·Î 280 °ú 30ÀÇ ÃÖ´ë°ø¾à¼ö´Â ´ÙÀ½°ú °°ÀÌ ±¸ÇÒ¼ö ÀÖ½À´Ï´Ù.

  ÃÖ´ë°ø¾à¼ö (280, 30 ) = ÃÖ´ë°ø¾à¼ö (250, 30)
                                   = ÃÖ´ë°ø¾à¼ö (220, 30)
                                   = ÃÖ´ë°ø¾à¼ö (190, 30)
                                   = ÃÖ´ë°ø¾à¼ö (160, 30)
                                   
                                   .
                                   .
                                   .
                                   = ÃÖ´ë°ø¾à¼ö (40, 30)
                                   = ÃÖ´ë°ø¾à¼ö (10, 30)
                                   = ÃÖ´ë°ø¾à¼ö (30, 10) <-- ½Ä 2¸¦ Àû¿ë
                                   = ÃÖ´ë°ø¾à¼ö (20, 10)
                                   = ÃÖ´ë°ø¾à¼ö (10, 10)
                                   = ÃÖ´ë°ø¾à¼ö (0, 10)
                                   = ÃÖ´ë°ø¾à¼ö (10, 0) <-- ½Ä 2¸¦ Àû¿ë
                                   = 10 <-- ½Ä 3À» Àû¿ë
                                      Áï, ¼ýÀÚ Çϳª°¡ 0ÀÌ µÇ¸é ³ª¸ÓÁö ¼ýÀÚ°¡ ÃÖ´ë°ø¾à¼ö ÀÌ´Ù!!!

ÇäÇä...¾î¶»°Ô ±¸Çß´ÂÁö À߸𸣰ÚÁö¸¸. ¾î·µç ¿ì¸®´Â ¿ì¸®°¡ ¿øÇÏ´ø 10À̶ó´Â ¼ýÀÚ¸¦ ã¾Ò½À´Ï´Ù.. ¸Å¿ì ±ä°úÁ¤ÀÌÁö¸¸ ÄÄÇ»ÅÍ´Â ÀÌ·±°ÍÀ» ´õ ÁÁ¾Æ ÇÏ°í ½ÇÁ¦·Î ±¸Çϴµ¥ 0.1 Ãʵµ ¾È°É¸³´Ï´Ù.. ÀÌ À¯Å¬¸®µåÀÇ ¾Ë°í¸®ÁòÀ» ¸»·Î Ç¥ÇöÇÏ¸é ´ÙÀ½°ú °°½À´Ï´Ù.

  1. ÀÓÀÇÀÇ µÎÁ¤¼ö u ¿Í v¸¦ ÀÔ·Â ¹Þ´Â´Ù
  2, v°¡ uº¸´Ù Å©¸é v¿Í u ÀÇ °ªÀ» ±³È¯ÇÑ´Ù (½Ä 2Àû¿ë)
  3. u ¿¡´Ù°¡ u-vÀÇ °ªÀ» ÀúÀåÇÑ´Ù. (½Ä 1Àû¿ë)
  4. u °¡ 0Àΰ¡ ? 0ÀÌ ¾Æ´Ï¸é 2·Î µ¹¾Æ °¡°í
      0 À̶ó¸é v°¡ ÃÖ´ë °ø¾à¼ö ÀÌ´Ù!!!!!! (½Ä 3Àû¿ë)

À̰ÍÀ» ¿©·¯ºÐÀÌ ÁÁ¾Æ ÇϽô asp ·Î ±¸ÇöÇϸé

< %

public function get_gcd ( u , v )     ' ÇÔ¼ö ¼±¾ðºÎ

    dim temp                 '(u ¿Í v¸¦ ¹Ù²Ù±â À§ÇÑ Àӽà º¯¼ö.)

    do until u = 0          ' u °¡ 0 ÀÌ µÇ¸é loop ¸¦ ¸ØÃá´Ù.

        if u < v then         ' ¸¸¾à¿¡ u °¡ vº¸´Ù ÀÛ¾ÆÁö¸é µÎ¼ýÀÚÀÇ À§Ä¡¸¦ ¹Ù²ã¾ß ÇÑ´Ù (½Ä 2)

            temp = u         ' Áö±Ý º¸½Ã´Â if ¹®¾ÈÀÇ temp = u , u = v , v = u
            u = v               ' ´Â ¾ÆÁÖ °£´ÜÈ÷ °¢ º¯¼öÀÇ °ª ±³È¯ÇÏ´Â ¹æ¹ýÀÌ´Ù.
            v = temp         '°£´ÜÇÑ ¹æ¹ýÀÌÁö¸¸ »ó´çÈ÷ À¯¿ëÇÏ°í ±²ÀåÈ÷ ÀÚÁÖ ¾²ÀÌ´Â ¾Ë°í¸®ÁòÀÌ´Ù

        end if

        u = u - v          Å«¼ö¿¡¼­ ÀÛÀº¼ö¸¦ »«´Ù (½Ä 1)

    loop

    get_gcd = v     'ÇϳªÀÇ ¼ýÀÚ°¡ 0ÀÌ µÇ¸é loop ¸¦ ºüÁ®³ª¿À°í 0º¸´Ù Å«¼ö°¡ ÃÖ´ë°ø¾à¼ö ÀÌ´Ù. (½Ä 3)

end function

% >

À̰ÍÀ» »ç¿ëÇÏ´Â ¹æ¹ýÀº

<%

dim u , v

u = 280
v = 30

if u = 0 or v = 0 then    '¸¸¾à u 280ÀÌ ¾Æ´Ñ 0 ȤÀº v°¡ 0À̶ó¸é ÇÔ¼ö¸¦ È£ÃâÇÒ Çʿ䰡 ¾ø´Ù.
if u > v then
    response.write "ÃÖ´ë°ø¾à¼ö´Â " & u
else
    response.write "ÃÖ´ë°ø¾à¼ö´Â " & v
end if
elseif u < 0 or v < 0 then

    response.write "0º¸´Ù Å«¼ö¸¦ ÀÔ·ÂÇØ ÁÖ¼¼¿ä"
else
response.write "ÃÖ´ë°ø¾à¼ö´Â " & get_gcd (u, v)           ' ¿©±â¼­ ÇÔ¼ö È£Ãâ

end if

%>

À̰ÍÀ̹ٷΠÀ¯Å¬¸®µå ¾Ë°í¸®ÁòÀ̶õ °ÍÀÔ´Ï´Ù. ÀÌÇØ°¡ µÇ¼Ì´ÂÁö ¸ð¸£°ÚÁö¸¸. ù°­ÀÇ Ä¡°í´Â ³Ê¹« ¼öÇÐÀûÀÎ ³»¿ëÀÌ ¸¹¾Æ¼­ ¾î·Á¿ü´ø°Å °°½À´Ï´Ù..  ÇÏÁö¸¸ ¿©·¯ºÐÀÌ À̰ÍÀ» ÀÌÇØ¸¦ Çß´ø ¾ÈÇß´ø ±×°ÍÀº º°·Î Áß¿äÇÏÁö ¾Ê½À´Ï´Ù. ´Ù¸¸ ¿©·¯ºÐÀº À̰ÍÀ» º¸°í "¾Æ ÄÄÇ»ÅͰ¡ ÀÏÇÏ´Â ¹æ¹ý°ú »ç¶÷ÀÌ ÀÏÇÏ´Â ¹æ¹ýÀº ¸¹ÀÌ ´Ù¸£±¸³ª",   "³ªµµ ÇÁ·Î±×·¡¸Ó·Î ¸Ô°í »ì±â À§Çؼ­´Â ¾Ë°í¸®ÁòÀ̶õ°É °øºÎ ÇØ¾ß °Ú±¸³ª..." ¶ó´Â »ý°¢À» °¡Á® ÁáÀ¸¸é ÇÏ´Â °Ô Á¦ ¹Ù¶÷ÀÔ´Ï´Ù. (¹Ýµå½Ã ÀÌ·±»ý°¢ÀÌ µé¾î¾ß Çϴµ¥ Èæ..) ¿ì¸®´Â ÇÁ·Î±×·¡¸Ó¶ó´Â Á÷¾÷À» °¡Áö°í ÀÖ´Â »ç¶÷À̱⿡ ´Ù¸¥ »ç¶÷ÀÌ ÆíÇÏ°Ô ¾µ¼ö Àִ ÇÁ·Î±×·¥À» ¸¸µå´Â âÁ¶ÀûÀÎ ÀÏÀ» ÇÏ´Â »ç¶÷µéÀÔ´Ï´Ù.  ÀÌÇÁ·Î±×·¥À» ©¶§´Â ¾î¶² ¾Ë°í¸®ÁòÀ¸·Î ±¸ÇöÇØ¾ß ÇÒÁö¸¦ ¿ì¸®´Â Ç×»ó »ý°¢ÇØ¾ß ÇÕ´Ï´Ù.. ^^;

¿À´Ã °­Àǰ¡ ³Ê¹« ¼öÇÐÀûÀ̾ú´ø °ü°è·Î ´ÙÀ½ °­ÀÇ´Â ¾Ë°í¸®ÁòÀÇ ¿µ¿øÇÑ ¼÷Á¦¶ó ÇÒ¼ö ÀÖ´Â Á¤·Ä ¾Ë°í¸®Áò°ú °Ë»ö ¾Ë°í¸®Áò¿¡ ´ëÇØ¼­ À̾߱âÇØº¼±î ÇÕ´Ï´Ù. ±×¸®°í Àç±ÍÇÔ¼ö ¿¡ ´ëÇÑ À̾߱â¿Í ½Ã°£ÀÌ µÇ¸é °Ô½ÃÆÇ list º¸±âÀÇ ÀüÇô ´Ù¸¥ ÆäÀÌ¡ ¹æ¹ý¿¡ ´ëÇØ¼­µµ °°ÀÌ °í¹ÎÇØ º¸°íÀÚ ÇÕ´Ï´Ù. ...

Ȥ½Ã¶óµµ Áú¹®ÀÖÀ¸½Å ºÐÀº ¸ÞÀÏ ÁÖ¼¼¿±...~~ caelin@dreamwiz.com

 

Back