Microsoft® Visual Basic® Scripting Edition
Function¹®
 ¾ð¾î ÂüÁ¶
¹öÀü Á¤º¸

°ü·Ã Ç׸ñ


¼³¸í
Function ÇÁ·Î½ÃÀúÀÇ º»¹®À» ±¸¼ºÇÏ´Â À̸§, Àμö ¹× Äڵ带 ¼±¾ðÇÕ´Ï´Ù.
±¸¹®
[Public | Private] Function À̸§ [(Àμö ¸ñ·Ï)]
    [¸í·É¹®]
    [À̸§ = ½Ä]
    [Exit Function]
    [¸í·É¹®]
    [À̸§ = ½Ä]
End Function

Function¹®Àº ¾Æ·¡ ¿ä¼Ò·Î ±¸¼ºµË´Ï´Ù.

±¸¼º ¿ä¼Ò ¼³¸í
Public ÇØ´ç Function ÇÁ·Î½ÃÀú¿¡¼­ ¸ðµç ½ºÅ©¸³Æ®ÀÇ ´Ù¸¥ ¸ðµç ÇÁ·Î½ÃÀú¸¦ ¾×¼¼½ºÇÒ ¼ö ÀÖÀ½À» ³ªÅ¸³À´Ï´Ù.
Private ÇØ´ç Function ÇÁ·Î½ÃÀú¿¡¼­ ¼±¾ðµÈ ½ºÅ©¸³Æ®ÀÇ ´Ù¸¥ ÇÁ·Î½ÃÀú¸¸À» ¾×¼¼½ºÇÒ ¼ö ÀÖÀ½À» ³ªÅ¸³À´Ï´Ù.
À̸§ Function ÇÁ·Î½ÃÀúÀÇ À̸§À¸·Î ÀÏ¹Ý º¯¼ö ¸í¸í ±ÔÄ¢À» µû¸¨´Ï´Ù.
Àμö ¸ñ·Ï Function ÇÁ·Î½ÃÀú¸¦ È£ÃâÇßÀ» ¶§ ±× ÇÁ·Î½ÃÀú¿¡ Àü´ÞµÇ´Â Àμö¸¦ ³ªÅ¸³»´Â º¯¼ö ¸ñ·ÏÀÔ´Ï´Ù. ¿©·¯ °³ÀÇ º¯¼ö´Â ½°Ç¥·Î ±¸ºÐÇÕ´Ï´Ù.
¸í·É¹® Function ÇÁ·Î½ÃÀúÀÇ º»¹® ¾È¿¡¼­ ½ÇÇàµÉ ÀÏ´ÜÀÇ ¸í·É¹®µéÀÔ´Ï´Ù.
½Ä Function ÇÁ·Î½ÃÀúÀÇ °á°ú °ªÀÔ´Ï´Ù.

Àμö ¸ñ·Ï ¿ä¼Ò´Â ¾Æ·¡ ±¸¹®°ú ¿ä¼Ò·Î ±¸¼ºµË´Ï´Ù.

[ByVal | ByRef] º¯¼ö À̸§[( )]

±¸¼º ¿ä¼Ò ¼³¸í
ByVal Àμö¸¦ °ª¿¡ ÀÇÇÑ È£Ãâ·Î Àü´ÞÇÔÀ» ³ªÅ¸³À´Ï´Ù.
ByRef Àμö¸¦ ÂüÁ¶¿¡ ÀÇÇÑ È£Ãâ·Î Àü´ÞÇÔÀ» ³ªÅ¸³À´Ï´Ù.
º¯¼ö À̸§ Àμö¸¦ ³ªÅ¸³»´Â º¯¼öÀÇ À̸§À¸·Î ÀÏ¹Ý º¯¼ö ¸í¸í ±ÔÄ¢À» µû¸¨´Ï´Ù.

Âü°í
Function ÇÁ·Î½ÃÀú¸¦ Public ¶Ç´Â PrivateÀ» »ç¿ëÇÏ¿© ¸í½ÃÀûÀ¸·Î ÁöÁ¤ÇÏÁö ¾ÊÀ¸¸é ±âº»ÀûÀ¸·Î ÀÌ ÇÁ·Î½ÃÀú´Â public(°ø¿ë)ÀÌ µË´Ï´Ù. Áï, ½ºÅ©¸³Æ®ÀÇ ´Ù¸¥ ¸ðµç ÇÁ·Î½ÃÀú¿¡ ³ªÅ¸³¯ ¼ö ÀÖ½À´Ï´Ù. Function ÇÁ·Î½ÃÀú¿¡ ÀÖ´Â Áö¿ª º¯¼öÀÇ °ªÀº ÇØ´ç ÇÁ·Î½ÃÀúÀÇ È£Ãâ °£¿¡ º¸Á¸µÇÁö ¾Ê½À´Ï´Ù.

½ÇÇàÇÒ ¼ö ÀÖ´Â ÄÚµå´Â ¸ðµÎ ÇÁ·Î½ÃÀú ¾È¿¡ ÀÖ¾î¾ß ÇÕ´Ï´Ù. Function ÇÁ·Î½ÃÀú¸¦ ´Ù¸¥ FunctionÀ̳ª Sub ÇÁ·Î½ÃÀú ¾È¿¡ Á¤ÀÇÇÒ ¼ö ¾ø½À´Ï´Ù.

Exit Function¹®Àº ÇÁ·Î±×·¥ ½ÇÇàÀÌ Function ÇÁ·Î½ÃÀú¸¦ Áï½Ã ºüÁ® ³ª°¡µµ·Ï ÇÑ ´ÙÀ½£¬Function ÇÁ·Î½ÃÀú¸¦ È£ÃâÇÑ ¸í·É¹® ¹Ù·Î µÚ¿¡ ¿À´Â ¸í·É¹®À¸·Î ÇÁ·Î±×·¥À» °è¼Ó ½ÇÇà½Ãŵ´Ï´Ù. ¿©·¯ °³ÀÇ Exit Function¹®À» Function ÇÁ·Î½ÃÀú ¾ÈÀÇ ¾Æ¹« °÷¿¡ µÑ ¼ö ÀÖ½À´Ï´Ù.

Function ÇÁ·Î½ÃÀú´Â Sub ÇÁ·Î½ÃÀúó·³ Àμö¸¦ »ç¿ëÇÏ¿© ÀÏ·ÃÀÇ ¸í·É¹®À» ½ÇÇàÇÏ°í ±× ÀμöÀÇ °ªÀ» ¹Ù²Ù´Â º°µµÀÇ °³º° ÇÁ·Î½ÃÀúÀÔ´Ï´Ù. ±×·¯³ª ÇÔ¼ö¿¡¼­ ¹ÝȯÇÏ´Â °ªÀ» »ç¿ëÇÒ °æ¿ì Function ÇÁ·Î½ÃÀú´Â Sub ÇÁ·Î½ÃÀú¿Í´Â ´Þ¸® Sqr, Cos, Chr µîÀÇ ³»ºÎ ÇÔ¼ö¸¦ »ç¿ëÇÏ´Â ¹æ¹ý°ú °°Àº ¹æ¹ýÀ¸·Î ½ÄÀÇ ¿À¸¥ÂÊ¿¡ »ç¿ëÇÒ ¼ö ÀÖ½À´Ï´Ù.

°ýÈ£·Î ¹­Àº Àμö ¸ñ·Ï ¾ÕÀÇ ÇÔ¼ö À̸§À» ½Ä¿¡ »ç¿ëÇÏ¿© Function ÇÁ·Î½ÃÀú¸¦ È£ÃâÇÕ´Ï´Ù. Function ÇÁ·Î½ÃÀúÀÇ È£Ãâ ¹æ¹ý¿¡ °üÇÑ Æ¯Á¤ Á¤º¸´Â Call¹®À» ÂüÁ¶ÇϽʽÿÀ.

ÁÖÀÇ  Function ÇÁ·Î½ÃÀú´Â Àç±Í È£Ãâ, Áï ÀÚ½ÅÀ» È£ÃâÇÏ¿© ÁÖ¾îÁø ÀÛ¾÷À» ¼öÇàÇÒ ¼ö ÀÖ½À´Ï´Ù. ±×·¯³ª Àç±Í È£ÃâÀ» »ç¿ëÇÏ¸é ½ºÅà ¿À¹öÇ÷θ¦ ÀÏÀ¸Å³ ¼ö ÀÖ½À´Ï´Ù.

ÇÔ¼ö¿¡¼­ °ªÀ» ¹ÝȯÇÏ·Á¸é ±× °ªÀ» ÇÔ¼ö À̸§¿¡ ÁöÁ¤ÇØ¾ß Çϸç ÇØ´ç ÇÁ·Î½ÃÀú ¾ÈÀÇ ¾Æ¹« À§Ä¡¿¡ ¿©·¯ ¹ø µ¿ÀÏÇÏ°Ô ÁöÁ¤ÇÒ ¼öµµ ÀÖ½À´Ï´Ù. À̸§¿¡ °ªÀ» ÁöÁ¤ÇÏÁö ¾ÊÀ¸¸é, Function ÇÁ·Î½ÃÀú¿¡¼­´Â ±âº»°ª, Áï ¼ýÀÚ ÇÔ¼öÀÏ °æ¿ì´Â 0À», ¹®ÀÚ¿­ ÇÔ¼öÀÏ °æ¿ì¿¡´Â ±æÀÌ°¡ 0ÀÎ ¹®ÀÚ¿­("")À» ¹ÝȯÇÕ´Ï´Ù. °³Ã¼ ÂüÁ¶¸¦ ¹ÝȯÇÏ´Â ÇÔ¼ö´Â Function ÇÁ·Î½ÃÀú ¾È¿¡¼­ Set¹®À» »ç¿ëÇÏ¿© À̸§¿¡ °³Ã¼ ÂüÁ¶¸¦ ÁöÁ¤ÇÏÁö ¾ÊÀ¸¸é, NothingÀ» ¹ÝȯÇÕ´Ï´Ù.

¾Æ·¡ ¿ë·Ê´Â °á°ú °ªÀ» BinarySearch¶ó´Â ÇÔ¼ö¿¡ ÁöÁ¤ÇÏ´Â ¹æ¹ýÀ» º¸¿©ÁÝ´Ï´Ù. ÀÌ °æ¿ì ±× À̸§¿¡ False·Î ÁöÁ¤ÇÏ¿© °ªÀÌ ¾øÀ½À» ³ªÅ¸³À´Ï´Ù.

Function BinarySearch(. . .)
    . . .
    ' °ªÀÌ ¾ø½À´Ï´Ù. False °ªÀ» ¹ÝȯÇÕ´Ï´Ù.
    If lower > upper Then
        BinarySearch = False  
        Exit Function 
    End If
    . . .
End Function
Function ÇÁ·Î½ÃÀú¿¡ »ç¿ëµÇ´Â º¯¼ö¿¡´Â µÎ °¡Áö À¯Çü, Áï ÇÁ·Î½ÃÀú ¾È¿¡¼­ ¸í½ÃÀûÀ¸·Î ¼±¾ðµÈ º¯¼ö¿Í ¼±¾ðµÇÁö ¾ÊÀº º¯¼ö°¡ ÀÖ½À´Ï´Ù. ÇÁ·Î½ÃÀú ¾È¿¡¼­ Dim ¶Ç´Â ÀÌ¿Í µ¿µîÇÑ ¸í·É¹®À» »ç¿ëÇÏ¿© ¸í½ÃÀûÀ¸·Î ¼±¾ðµÈ º¯¼ö´Â ¾ðÁ¦³ª ÇØ´ç ÇÁ·Î½ÃÀúÀÇ Áö¿ª º¯¼ö°¡ µË´Ï´Ù. ¶Ç ÇÁ·Î½ÃÀú¿¡¼­ »ç¿ëµÇÁö¸¸ ¸í½ÃÀûÀ¸·Î ¼±¾ðµÇÁö ¾ÊÀº º¯¼öµµ ÇØ´ç ÇÁ·Î½ÃÀú ¹ÛÀÇ »óÀ§ ¼öÁØ¿¡¼­ ¸í½ÃÀûÀ¸·Î ¼±¾ðµÇÁö ¾ÊÀ¸¸é Áö¿ª º¯¼ö°¡ µË´Ï´Ù.

ÁÖÀÇ  ÇÁ·Î½ÃÀú´Â ±× ÀÚ½ÅÀÇ ³»ºÎ¿¡¼­ ¸í½ÃÀûÀ¸·Î ¼±¾ðÇÏÁö ¾ÊÀº º¯¼ö¸¦ »ç¿ëÇÒ ¼ö ÀÖÁö¸¸, ½ºÅ©¸³Æ® ¼öÁØ¿¡¼­ Á¤ÀÇÇÑ º¯¼ö À̸§°ú ±× À̸§ÀÌ °°À» °æ¿ì À̸§ Ãæµ¹ ¿À·ù°¡ ¹ß»ýÇÒ ¼öµµ ÀÖ½À´Ï´Ù. ´Ù¸¥ ÇÁ·Î½ÃÀú, »ó¼ö ¶Ç´Â º¯¼ö¿Í °°Àº À̸§À» °¡Áø ¼±¾ðµÇÁö ¾ÊÀº º¯¼ö¸¦ ÇÁ·Î½ÃÀú¿¡¼­ ÂüÁ¶ÇÒ °æ¿ì ÀÌ ÇÁ·Î½ÃÀú¿¡¼­ ½ºÅ©¸³Æ® ¼öÁØÀÇ À̸§À» ÂüÁ¶ÇÏ°í ÀÖ´Â °ÍÀ¸·Î °£Áֵ˴ϴÙ. µû¶ó¼­ º¯¼ö¸¦ ¸í½ÃÀûÀ¸·Î ¼±¾ðÇÏ¿© ÀÌ·± Á¾·ùÀÇ Ãæµ¹À» ÇÇÇØ¾ß ÇÕ´Ï´Ù. Option Explicit¹®À» »ç¿ëÇÏ¸é º¯¼ö¸¦ ¸í½ÃÀûÀ¸·Î ¼±¾ðÇÒ ¼ö ÀÖ½À´Ï´Ù.


ÁÖÀÇ  VBScript¿¡¼­´Â »ê¼ú½ÄÀ» ´Ù½Ã ¹èÄ¡ÇÏ¿© ³»ºÎ È¿À²¼ºÀ» ³ôÀÏ ¼ö ÀÖ½À´Ï´Ù. ÇÔ¼ö¿¡¼­ µ¿ÀÏÇÑ ½ÄÀÇ º¯¼ö °ªÀ» ¹Ù²Ü °æ¿ì Function ÇÁ·Î½ÃÀú¸¦ ±× »ê¼ú½Ä¿¡ »ç¿ëÇÏÁö ¸¶½Ê½Ã¿À.