1. Çü½Ä
Çü½Ä1) result= parser(str)
Çü½Ä2) result= parser(str, break_flag)
2. ±â´É: ÀÎÀÚ strÀÇ °ªÀ» Wel ÇÁ·Î±×·¥À¸·Î °¡Á¤ÇÏ¿© ±×°ÍÀ» ½ÇÇàÇÑ´Ù.
¿ø½Ã ÇÁ·Î±×·¥³»ÀÇ ¹®ÀÚ¿À̳ª ±â´É¼º ¹®ÀÚ¿À» ½ÇÇàÇÒ ¶§ »ç¿ëÇÑ´Ù.
3. ¼³¸í
(1) ÀÎÀÚ strÀº ¹®ÀÚ¿ÀÌ¸ç ¼öÄ¡ÀÌ¸é ¹®ÀÚ¿·Î º¯È¯µÈ´Ù.
(2) break_flagÀÌ ¹®ÀÚ¿ÀÌ°í ¼öÄ¡·Î º¯È¯µÉ ¼ö ¾øÀ» ¶§´Â ¿¡·¯ 󸮵ȴÙ.
(3) break_flag>0 (¾ç¼öÀÎ °æ¿ì) : ¿¡·¯ ¸Þ½ÃÁö Ãâ·ÂÈÄ ÁߴܵÊ
(4) break_flag==0 ( 0 ÀÎ °æ¿ì ) : ¿¡·¯ ¸Þ½ÃÁö Ãâ·ÂÈÄ °è¼Ó ¼öÇàÇÔ
(5) break_flag<0 (À½¼öÀÎ °æ¿ì) : ¿¡·¯ ¸Þ½ÃÁö Ãâ·Â¾øÀÌ °è¼Ó ¼öÇàÇÔ
(6) resultÀÇ °ªÀº ÀÎÀÚ strÀÇ ÇÁ·Î±×·¥¿¡¼ returnÇÑ °ªÀ̸ç return¹® ¾øÀÌ
Á¾·áµÇ¾ú´Ù¸é ÃÖÈÄ¿¡ ¿¬»êÇÑ °á°ú°ªÀÌ´Ù.
4. »ç¿ë¿¹
statement= "if(a>b) return(a); else return(b);";
a= 1;
b= 2;
result= parser(statement);
result2= parser("5+3*4");
print(result, " ", result2);
------------------------------ [ Ãâ·Â°á°ú ] ------------------------------
2 17
|