¿ì¸®´Â ¹«¾ùÀ» ´Ù·ê °ÍÀΰ¡? |
---|
¸î°³ÀÇ »õ·Î¿î ÁÖ¼®»ç¿ë¹ý µé¿©¾²±â¸¦ »ç¿ëÇÏ¿© °¡µ¶¼ºÀ» °³¼±Çϱâ À§ÇÏ¿© ÄÚµåÀÇ ÀüüÀûÀÎ ¸ð¾çÀ» Á¶°¨Çϴ¹ý ±×¸®°í ¿ì¸®ÀÇ ÇÁ·Î±×·¥À» ÀúÀåÇϱâ À§ÇÏ¿© ¸ðµâÀÇ »ç¿ë¹ýÀ» ¼Ò°³ÇÑ´Ù |
³ª´Â ÀÌ¹Ì '¿¬¼Ó¿¿¡ ´ëÇÏ¿© ´õ ÀÚ¼¼È÷'ÀÇ ¼½¼Ç¿¡¼ ÁÖ¼®¿¡ °üÇÏ¿© ¾ð±ÞÇÏ¿´´Ù. ±×·¸Áö¸¸ ¿ì¸®°¡ ÁÖ¼®À¸·Î ÇÒ ¼ö ÀÖ´Â ÀÏÀÌ ´õ ÀÖ´Ù. ³ª´Â ¿©±â¿¡ ±×°Í¿¡ °üÇÏ¿© ´õ ÀÚ¼¼È÷ ¼³¸íÇÒ °ÍÀÌ´Ù:
°¢ ÆÄÀÏÀÇ ½ÃÀۺκп¡ ÆÄÀÏ ¸Ó¸®ºÎ¸¦ ÀÛ¼ºÇÏ´Â °ÍÀº ÁÁÀº ½À°üÀÌ´Ù. À̰ÍÀº ÀÛ¼º³¯Â¥, ÀúÀÚ, ¹öÀü ±×¸®°í ³»¿ë¿¡ °üÇÑ ÀϹÝÀûÀÎ Á¤º¸, ¶§·Î´Â º¯°æÀÇ ±â·Ï°ú °°Àº »ó¼¼ÇÑ Á¤º¸¸¦ Á¦°øÇÏ¿©¾ß ÇÑ´Ù. ÀÌ ºÎºÐÀº ÁÖ¼®À¸·Î ³ªÅ¸³¯ °ÍÀÌ´Ù:
#############################
# Module: Spam.py
# Author: A.J.Gauld
# Date: 1999/09/03
# Version: Draft 0.4
#
# Description: This module provides a Spam object which can be
# combined with any other type of Food object to create
# interesting meal combinations.
#
###############################
# Log:
# 1999/09/01 AJG - File created
# 1999/09/02 AJG - Fixed bug in pricing strategy
# 1999/09/02 AJG - Did it right this time!
# 1999/09/03 AJG - Added broiling method(cf Change Req #1234)
################################
import sys, string, food
...
ÀÌ ±â¼úÀº ¶§¶§·Î ÄÚµåÀÇ À߸øµÈ ºÎºÐÀ» °Ý¸®ÇϰíÀÚ ÇÒ¶§ »ç¿ëµÈ´Ù. ¿¹¸¦ µé¾î, ÇÁ·Î±×·¥ÀÌ ¾î¶² µ¥ÀÌŸ¸¦ Àϰí, ±×°ÍÀ» ó¸®Çϰí, °á°ú¸¦ Ãâ·ÂÇÏ°í ±×¸®°í ±× °á°ú¸¦ ´Ù½Ã µ¥ÀÌŸ ÆÄÀÏ¿¡ ÀúÀåÇÑ´Ù°í °¡Á¤ÇØ º¸ÀÚ. ¸¸¾à ±× °á°ú°¡ ¿ì¸®°¡ ¿¹»óÇÑ °ÍÀÌ ¾Æ´Ï¶ó¸é, ÀÓ½ÃÀûÀ¸·Î (±× À߸øµÈ) µ¥ÀÌŸ°¡ ÆÄÀÏ¿¡ ´Ù½Ã ÀúÀåµÇÁö ¸øÇϵµ·Ï ¸·°í ±×·±½ÄÀ¸·Î ¸Á°¡Áö´Â °ÍÀ» ¸·´Â °ÍÀÌ À¯¿ëÇÒ °ÍÀÌ´Ù. ¿ì¸®´Â ´Ü¼øÈ÷ ±× ºÎÀûÀýÇÑ Äڵ带 »èÁ¦ÇÒ¼ö´Â ÀÖ°ÚÁö¸¸ °ÅÀÇ ±ÞÁø¿¡ °¡±î¿î Á¢±Ù¹ýÀº °£´ÜÈ÷ ±× ¶óÀÎÀ» ÁÖ¼®À¸·Î ´ÙÀ½°ú °°ÀÌ º¯°æÇÏ´Â °ÍÀÌ´Ù:
data = readData(datafile)
for item in data:
results.append(calculateResult(item))
printResults(results)
######################
# Comment out till bug in calculateResult fixed
# for item in results:
# dataFile.save(item)
######################
print 'Program terminated'
±× ¿À·ù°¡ ¼öÁ¤µÇ°í³ª¸é ¿ì¸®´Â °£´ÜÈ÷ ÁÖ¼®Ç¥½ÄÀ» Áö¿ö¼ ±× Äڵ带 ´Ù½Ã Çѹø »ì¸± ¼ö ÀÖ´Ù.
¸ðµç ¾ð¾îµéÀº ¿©·¯ºÐÀÌ ÇÔ¼ö ȤÀº ¸ðµâÀÌ ¹«½¼ÀÏÀ» ÇÏ´ÂÁö ¹®¼¿¡´Ù ÁÖ¼®À» ÀÛ¼ºÇÒ ¼ö ÀÖµµ·Ï ÇØÁØ´Ù. ±×·¯³ª ÆÄÀ̽ã°ú ½º¸ôÅå °°Àº °ÍµéÀº ÇÑ ´Ü°è ´õ ÀüÁøÇÏ¿© ÅëÇÕȯ°æÀÌ ÇÁ·Î±×·¡¹ÖÁß¿¡ ´ëÈÀûÀÎ µµ¿ò¸»À» Á¦°øÇϴµ¥¿¡ »ç¿ëÇÏ´Â °Í°ú °°Àº ¹æ½ÄÀ¸·Î ¿©·¯ºÐÀÌ ÇÔ¼ö¸¦ ¹®¼ÈÇÒ ¼ö ÀÖµµ·Ï ÇØÁØ´Ù. ÆÄÀ̽㿡¼ À̰ÍÀº ´ÙÀ½°¡ °°Àº """documentation""" ¹®ÀÚ¿ ½ºÅ¸ÀÏÀ» »ç¿ëÇÏ¿© ½ÇÇöµÈ´Ù:
class Spam: """A meat for combining with other foods It can be used with other foods to make interesting meals. It comes with lots of nutrients and can be cooked using many different techniques""" def __init__(self): ... print Spam.__doc__
ÁÖ ÀÇ: ¿ì¸®´Â Ưº°ÇÑ º¯¼ö __doc__ À» Ãâ·ÂÇÔÀ¸·Î½á ±× ¹®¼È ¹®ÀÚ¿ ¿¡ Á¢±ÙÇÒ ¼ö ÀÖ´Ù ¸ðµâ, ÇÔ¼ö ±×¸®°í Ŭ·¡½º/¸Þ½îµå´Â ¸ðµÎ ¹®¼È ¹®ÀÚ¿À» °¡Áú ¼ö ÀÖ´Ù. ¿¹¸¦ µé¾î ´ÙÀ½À» ½ÃÇèÇØ º¸¶ó:
import sys print sys.__doc__
À̰ÍÀº ÇÁ·Î±×·¡¹Ö¿¡¼ °¡Àå ¶ß°Å¿î ³íÀïÀÌ µÇ´Â ÁÖÁ¦ÁßÀÇ ÇϳªÀÌ´Ù. ¸ðµç ÇÁ·Î±×·¡¸Ó´Â ÀڽŸ¸ÀÇ ¹æ¹ýÀ» ÃÖ¼±À¸·Î »ý°¢ÇÏ¿© Äڵ带 µé¿©¾²±â ÇÏ´Â °Íó·³ º¸ÀδÙ. ¾à°£ÀÇ ¿¬±¸°¡ ÁøÇàµÈ ÈÄ¿¡ Àû¾îµµ ¾î¶² ¿ä¼ÒµéÀº °ÑÄ¡ÀåÀ» ¶Ù¾î³Ñ¾î ÁøÂ¥ Áß¿äÇÏ´Ù´Â °ÍÀ» º¸¿© ÁÖ¾ú´Ù.- Áï ±×°ÍµéÀº ½ÇÁ¦·Î ¿ì¸®°¡ Äڵ带 ´õ ÀÌÇØÇϵµ·Ï µµ¿ÍÁØ´Ù.
³íÀïÀÇ ÀÌÀ¯´Â ´Ü¼øÇÏ´Ù. ´ëºÎºÐÀÇ ÇÁ·Î±×·¡¹Ö ¾ð¾î¿¡¼ µé¿©¾²±â´Â ¼ø¼öÈ÷ °ÑÄ¡ÀåÀÌ´Ù; Àд »ç¶÷À» µµ¿ÍÁÖ´Â °ÍÀÌ´Ù. (ÆÄÀ̽㿡¼ ±×°ÍÀº ½ÇÁ¦·Î ÇÊ¿äÇϸç ÇÁ·Î±×·¥À» ÀûÀýÈ÷ ÀÛµ¿½Ã۱â À§Çؼ´Â ÇʼöÀûÀÌ´Ù!) ±×¸®ÇÏ¿© À̰ÍÀº:
FOR I = 1 TO 10 PRINT I NEXT I
Á¤È®È÷ ´ÙÀ½°ú °°´Ù:
FOR I = 1 TO 10 PRINT I NEXT I
Àû¾îµµ º£ÀÌÁ÷ ÀÎÅÍÇÁ¸®ÅÍ¿¡ °üÇØ¼´Â ±×·¸´Ù. ±×°ÍÀº µé¿©¾²±â·Î ´ÜÁö ¿ì¸®°¡ ´õ ½±°Ô Àб⠽±°Ô ÇØÁÙ »ÓÀÌ´Ù.
¿äÁ¡Àº µé¿©¾²±â´Â ÄÚµåÀÇ ³í¸®ÀûÀÎ ±¸Á¶¸¦ ¹Ý¿µÇØ¾ß ÇÏ¿© ±×·±½ÄÀ¸·Î ´«¿¡ º¸À̵µ·Ï ÇÁ·Î±×·¥ÀÇ È帧À» µû¶ó°¡¾ß¸¸ ÇÑ´Ù´Â °ÍÀÌ´Ù. ±×·¯±â À§Çؼ´Â ±× ºí·ÏÀÌ ´ÙÀ½°ú °°Àº ºí·Ï ÇüŶó¸é µµ¿òÀÌ µÈ´Ù:
XXXXXXXXXXXXXXXXXXXX XXXXXXXXXXXXXXXX XXXXXXXXXXXXXXXX XXXXXXXXXXXXXXXX
À̰ÍÀº ´ÙÀ½º¸´Ù´Â Àб⠽±´Ù:
XXXXXXXXXXXXXXXXXXXXX XXXXX XXXXXXXXXXXX XXXXXXXXXXXX XXXXXXXXXXXX XXXXX
¿Ö³ÄÇÏ¸é ±×°ÍÀÌ ¸íÄèÇÏ°Ô ¸ðµÎ ÇÑ ºí·Ï¿¡ Àֱ⠶§¹®ÀÌ´Ù. ¿¬±¸¿¡ ÀÇÇÏ¸é µé¿©¾²±â°¡ ³í¸®Àû ºí·Ï ±¸Á¶¸¦ ¹Ý¿µÇÒ ¶§ ÀÌÇØ¸¦ Çϴµ¥ ÀÖ¾î¼ ÀǹÌÀÖ´Â °³¼±ÀÌ ÀÖÀ½À» º¸¿©ÁØ´Ù. ¿ì¸®°¡ Áö±Ý±îÁö º¸¾Æ¿Â Àڱ׸¶ÇÑ ¿¹Á¦¿¡¼´Â Áß¿äÇÏ°Ô º¸ÀÌÁö ¾ÊÀ» ¼öµµ ÀÖÀ¸³ª ¿©·¯ºÐÀÌ ¼ö¹é ȤÀº ¼öõ ¶óÀÎÀÇ ÇÁ·Î±×·¥À» ÀÛ¼ºÇϱ⠽ÃÀÛÇÏ¸é ±×°ÍÀº ´õ¿í ´õ Áß¿äÇÏ°Ô µÉ °ÍÀÌ´Ù.
¿ì¸®°¡ Áö±Ý±îÁö »ç¿ëÇØ¿Â º¯¼ö À̸§Àº °ÅÀÇ Àǹ̰¡ ¾ø¾ú´Ù, ¿Ö³ÄÇϸé ÁÖ·Î ±×µéÀÌ ¾Æ¹« Àǹ̾øÀÌ ´Ü¼øÈ÷ Å×Å©´ÐÀ» ¿¹½ÃÇÏ´Â °ÍÀ̾ú±â ¶§¹®ÀÌ´Ù. ÀϹÝÀûÀ¸·Î ¿©·¯ºÐÀÇ º¯¼ö À̸§ÀÌ ¿©·¯ºÐÀÌ ³ªÅ¸³»±â¸¦ ¿øÇÏ´Â °ÍµéÀ» ¹Ý¿µÇÑ´Ù¸é ´õ¿í ´õ ÁÁ´Ù. ¿¹¸¦ µé¾î ¿ì¸®ÀÇ °ö¼ÀÇ¥ ¿¬½À¿¡¼ ¿ì¸®´Â 'multiplier'¸¦ º¯¼ö·Î »ç¿ëÇÏ¿© ¾î¶² Ç¥°¡ ÀμâµÇ¾î¾ß ÇÒÁö¸¦ Áö½ÃÇß¾ú´Ù. ±×°ÍÀº ´Ü¼øÈ÷ 'M' º¸´Ù´Â ´õ Àǹ̸¦ °¡Áø´Ù - ±×°ÍÀº ´õ ÀûÀº ŸÀÌÇÁ·Î ¶È °°ÀÌ Àß Àßµ¿Çϱâ´Â ÇÑ´Ù.
±×°ÍÀº ÀÌÇØ¿Í ³ë·Â»çÀÌÀÇ »óÈ£±³È¯°ü°èÀÌ´Ù. ÀϹÝÀûÀ¸·Î ÃÖ¼±ÀÇ ¼±ÅÃÀº ªÁö¸¸ ÀǹÌÀÖ´Â À̸§À» ¼±ÅÃÇÏ´Â °ÍÀÌ´Ù. ³Ê¹« ±ä À̸§Àº È¥¶õ½º·´°Ô µÇ¾î Àϰü¼ºÀÖ°Ô Á¤È®ÇÏ°Ô »ç¿ëÇÏ±â ¾î·Æ´Ù. (¿¹¸¦ µé¾î ³ª´Â multiplier´ë½Å¿¡ the_table_we_are_printingÀ» »ç¿ëÇÒ ¼öµµ ÀÖ¾úÁö¸¸ ³Ê¹« ±æ±âµµ ÇÏ°í ½ÇÁ¦·Î ´õ ¸í·áÇÏÁöµµ ¾Ê´Ù.
³ª´Â ³ªÁß¿¡ À̰ÍÀ» ´õ ÀÚ¼¼ÇÏ°Ô ¼³¸íÇÒ °ÍÀÌÁö¸¸ Áö±ÝÀ¸·Î¼´Â ³ª´Â ´Ü¼øÈ÷ ±× °³³äÀ» ±â¼úÇϰí Áß¿äÇѰÍÀº ¾î¶»°Ô ¿ì¸®°¡ ¸ðµâÀ» »ç¿ëÇÏ¿© ¿ì¸®ÀÇ ÀÛ¾÷À» ÀúÀåÇÒ ¼ö Àִ°¡¸¦ ±â¼úÇϱ⸦ ¿øÇÑ´Ù - Áö±ÝÀº ¿©·¯ºÐÀÌ ÆÄÀ̽ãÀ» Á¾·áÇÏÀÚ ¸¶ÀÚ ¿©·¯ºÐÀÇ ¸ðµç ÇÁ·Î±×·¥Àº »ç¶óÁø´Ù.
ÆÄÀ̽ãÀÇ ´ëÈÇü ÀÎÅÍÇÁ¸®ÅÍ ÇÁ·ÒÇÁÆ®(>>>)°¡ »ý°¢À» Áï½Ã ½ÃÇèÇØ º¸±â¿¡´Â À¯¿ëÇÏÁö¸¸, ¹Ý¸é¿¡ ¿©·¯ºÐÀÌ Á¾·áÇÏ´Â ¼ø°£¿¡ ¸ðµç °ÍµéÀ» ÀÒ¾î ¹ö¸°´Ù. ±æ°Ô ¿ì¸®´Â ÇÁ·Î±×·¥À» ÇÒ¼ö Àֱ⸦ ¿øÇÑ´Ù ±×¸®°í ±×°ÍÀ» ´Ù½Ã ¶Ç ´Ù½Ã ½ÇÇà½Ã۱⸦ ¿øÇÑ´Ù. ÀÌ·¸°Ô ÇÏ·Á¸é ÆÄÀ̽㿡¼ ¿ì¸®´Â È®Àå¸í .py ¸¦ °¡Áö´Â ÅØ½ºÆ® ÆÄÀÏÀ» ÀÛ¼ºÇÑ´Ù.
(À̰ÍÀº ´ÜÁö °ü·ÊÀÏ »ÓÀÌ´Ù, ¿©·¯ºÐÀº ÁÁ¾ÆÇÏ´Â ´Ù¸¥ °ÍÀ» »ç¿ëÇÒ ¼öµµ ÀÖ´Ù. ±×·¯³ª ³ªÀÇ °ßÇØ·Î´Â °ü·Ê¸¦ µû¸£´Â °ÍÀÌ ÁÁÀº »ý°¢ÀÌ´Ù.) ¿©·¯ºÐÀº ¸í·É¾î ÇÁ·ÒÇÁÆ®·ÎºÎÅÍ ´ÙÀ½°ú °°ÀÌ Å¸ÀÌÇÁÇÔÀ¸·Î½á ¿©·¯ºÐÀÇ ÇÁ·Î±×·¥À» ½ÇÇà½Ãų ¼ö ÀÖ´Ù:
$ python spam.py
spam.py ´Â ¿©·¯ºÐÀÇ ÆÄÀ̽ã ÇÁ·Î±×·¥ ÆÄÀÏÀÇ À̸§ÀÌ´Ù
À¯´Ð½º »ç¿ëÀÚ¸¦ À§ÇÑ ÁÖÀÇ »çÇ×: ÆÄÀ̽ãscriptÆÄÀÏÀÇ Ã¹ ¹øÂ° ¶óÀÎÀº ¹Ýµå½Ã ¿¬¼Ó¿ #! À» Æ÷ÇÔÇØ¾ßÇÏ¸ç ´ÙÀ½¿¡´Â ¿©·¯ºÐÀÇ ½Ã½ºÅÛ¿¡ ÀÖ´Â ÆÄÀ̽ãÀÇ Àüü °æ·Î°¡ µû¶ó¿Í¾ß ÇÑ´Ù.( ¿©·¯ºÐÀº ¿©·¯ºÐÀÇ ½© ÇÁ·ÒÇÁÆ®¿¡¼ $ which python À» ŸÀÌÇÁ ÇÔÀ¸·Î½á ±×°ÍÀ» ¾Ë ¼ö ÀÖ´Ù.)
³ªÀÇ ½Ã½ºÅÛ¿¡¼ ±× ¶óÀÎÀº ´ÙÀ½°ú °°ÀÌ º¸ÀδÙ:
#! /usr/local/bin/python
À̰ÍÀ¸·Î ¿©·¯ºÐÀº µ¿½Ã¿¡ ÆÄÀ̽ãÀ» È£ÃâÇÒ ÇÊ¿ä ¾øÀÌ ±× ÆÄÀÏÀ» ½ÇÇà ½Ãų ¼ö ÀÖ´Ù:
$ spam.py
ÀÌ ¶óÀÎÀº À©µµ¿ì/¸Æ ¾î´ÀÂÊ¿¡¼³ª ÇØ¸¦ ³¢Ä¡Áö ¾Ê´Â´Ù, ±×·¡¼ À©/¸Æ »ç¿ëÀÚµéÀº ±×µéÀÇ Äڵ尡 À¯´Ð½º¿¡¼µµ ½ÇÇàµÉÁöµµ ¸ð¸¥´Ù¸é,±×°ÍÀ» ¿ª½Ã »ðÀÔÇÒ ¼ö ÀÖ´Ù.
À©µµ¿ì »ç¿ëÀÚ¸¦ À§ÇÑ ÁÖÀÇ »çÇ×: À©µµ¿ì¿¡¼ ¿©·¯ºÐÀº ÀͽºÇ÷η¯ Ž»ö±â ¾È¿¡¼ .py ·Î ³¡³ª´Â ÆÄÀϵ鿡 ´ëÇÑ ¿¬°ü °ü°è¸¦ ¼³Á¤ÇÒ ¼ö ÀÖ´Ù. À̰ÍÀ¸·Î ¿©·¯ºÐÀº ÆÄÀÏÀÇ ¾ÆÀÌÄÜÀ» ´Ü¼øÈ÷ ´õºíŬ¸¯ÇÔÀ¸·Î½á ÆÄÀ̽ã ÇÁ·Î±×·¥À» ½ÇÇàÇÒ ¼ö ÀÖÀ» °ÍÀÌ´Ù. À̰ÍÀº ÆÄÀ̽㠼³Ä¡±â°¡ ÀÌ¹Ì ½ÇÇàÇØ ³õ¾ÒÀ» °ÍÀÌ´Ù. ¿©·¯ºÐÀº .py ÆÄÀÏÀ» ã¾Æ ±×°ÍÀ» ½ÇÇàÇØ º½À¸·Î½á Á¡°ËÇØ º¼ ¼ö ÀÖ´Ù. ¸¸¾à ÇÁ·Î±×·¥ÀÌ ½ÃÀ۵ȴٸé (ÆÄÀ̽㠿¡·¯¸ÞÁö½ÃÁö·Î ½ÃÀÛÇÒÁö¶óµµ) ±×°ÍÀº ¼³Á¤µÈ °ÍÀÌ´Ù.
ÆÄÀÏÀ» »ç¿ëÇÏ¿© ÇÁ·Î±×·¥À» ÀúÀåÇÏ´Â ¶Ç ´Ù¸¥ ÀÌÁ¡Àº ¿©·¯ºÐÀÌ ÀüüÁ¶°¢À» ´Ù½Ã ŸÀÌÇÁÇÒ ÇÊ¿ä ¾øÀÌ ½Ç¼ö¸¦ ÆíÁýÇϰųª, ȤÀº IDLE¿¡¼, Ä¿¼¸¦ À§·Î ¿Ã·Á ¿¡·¯¸Þ½ÃÁöµéÀ» Áö³ª¼ ±× Äڵ带 ´Ù½Ã ¼±ÅÃÇÒ ¼ö ÀÖ´Ù´Â °ÍÀÌ´Ù. IDLEÀº ÆíÁýÀ» À§ÇØ ÆÄÀÏÀ» Çϳª ¿°í 'Edit|Run module'¸Þ´º¸¦ ÅëÇØ ±×°ÍÀ» ½ÇÇà½ÃŰ´Â °ÍÀ» Áö¿øÇÑ´Ù.
ÀÌÁ¦ºÎÅÍ ³ª´Â ¿¹Á¦¿¡ >>> ÇÁ·ÒÇÁÆ®¸¦ º¸ÅëÀº º¸ÀÌÁÖÁö ¾ÊÀ» °ÍÀ̸ç, ³ª´Â ¿©·¯ºÐÀÌ ÇÁ·Î±×·¥À» °³º°ÀÇ ÆÄÀÏ·Î ÀÛ¼ºÇÏ°í ±×°ÍÀ» IDLEÀ̳ª ȤÀº (³»°¡ °³ÀÎÀûÀ¸·Î ÁÁ¾ÆÇÏ´Â) ¸í·É¾î ÇÁ·ÒÇÁÆ®¿¡¼ ½ÇÇà½Ã۰í ÀÖ´Ù°í °¡Á¤ÇÒ °ÍÀÌ´Ù.
±â¾ïÇØ¾ßÇÒ ¿äÁ¡ |
---|
|
Previous  Next  Contents
ÀÌ ÆäÀÌÁö¿¡ ´ëÇÏ¿© Áú¹® ȤÀº Á¦¾È»çÇ×ÀÌ ÀÖÀ¸¸é ´ÙÀ½ ÁÖ¼Ò·Î ³ª¿¡°Ô ÀüÀÚ¸ÞÀÏÀ» º¸³»¶ó:
agauld@crosswinds.net