Assignment2.pdf

‫ﺗﻤﺮﻳﻦ ﺳﺮﯼ ‪ ٢‬ﮐﺎﻣﭙﺎﻳﻠﺮ‬
‫ﺗﺎرﻳﺦ ﺳﺮرﺳﻴﺪ‪ :‬ﺻﺒﺢ ‪ ١٢‬ﺁﺑﺎن‬
‫‪ -١‬ﮔﺮاﻣﺮ هﺎ و رﺷﺘﻪ اﻳﺠﺎد ﺷﺪﻩ ﻣﻘﺎﺑﻞ ﺁﻧﻬﺎ )ﺑﺎ رﻧﮓ ﻗﺮﻣﺰ( را در ﻧﻈﺮ ﺑﮕﻴﺮﻳﺪ؛ ﺑﺮاﯼ هﺮ ﻳﮏ )‪Leftmost (١‬‬
‫‪ (٢) Derivation‬درﺧﺖ ‪ (٣) Parse‬ﺗﻮﺿﻴﺢ ﺑﺮاﯼ ﻣﺒﻬﻢ ﺑﻮدن ﻳﺎ ﻧﺒﻮدن ﮔﺮاﻣﺮ و )‪ (۴‬ﺗﻮﺿﻴﺢ زﺑﺎن ﻣﺘﻨﺎﻇﺮ ﺑﺎ‬
‫ﮔﺮاﻣﺮ را ﺑﻴﺎورﻳﺪ‪:‬‬
‫‪• A) S → SS+ | SS* | a‬‬
‫*‪aa+a‬‬
‫‪• B) S → 0S1 | 01‬‬
‫‪000111‬‬
‫‪• C) S → +SS | *SS | a‬‬
‫‪+*aaa‬‬
‫‪• D) S → S(S)S | ε‬‬
‫))()((‬
‫‪• E) S → S+S | SS | (S) | S* | a‬‬
‫‪(a+a)*a‬‬
‫‪• F) S → aSbS | bSaS | ε‬‬
‫‪aabbab‬‬
‫‪ -٢‬ﺑﺮاﯼ زﺑﺎن هﺎﯼ زﻳﺮ ﮔﺮاﻣﺮ ﻣﻨﺎﺳﺒﯽ ﻃﺮاﺣﯽ ﮐﻨﻴﺪ‪:‬‬
‫اﻟﻒ( رﺷﺘﻪ اﯼ از ‪ 0‬و ‪ 1‬ﺑﻪ ﻃﻮرﯼ ﮐﻪ ﺑﻌﺪ از هﺮ ﻳﮏ ﺣﺪاﻗﻞ ﻳﮏ ﺻﻔﺮ ﺑﺎﺷﺪ‪.‬‬
‫ب( رﺷﺘﻪ اﯼ از ‪ 0‬و ‪ 1‬ﮐﻪ ﺁﻳﻴﻨﻪ اﯼ ﺑﺎﺷﺪ )ﻣﻌﮑﻮس رﺷﺘﻪ ﺑﺎ ﺧﻮدش ﺑﺮاﺑﺮ ﺑﺎﺷﺪ(‪.‬‬
‫پ( رﺷﺘﻪ اﯼ از ‪ 0‬و ‪ 1‬ﮐﻪ ﺗﻌﺪاد ﻳﮏ و ﺻﻔﺮ هﺎﻳﺶ ﺑﺮاﺑﺮ ﺑﺎﺷﺪ‪.‬‬
‫ت( رﺷﺘﻪ اﯼ از ‪ 0‬و ‪ 1‬ﮐﻪ ﺗﻌﺪاد ﻳﮏ و ﺻﻔﺮ هﺎﻳﺶ ﺑﺮاﺑﺮ ﻧﺒﺎﺷﺪ‪.‬‬
‫ث( رﺷﺘﻪ اﯼ از ‪ 0‬و ‪ 1‬ﮐﻪ زﻳﺮ رﺷﺘﻪ ‪ 100‬ﻧﺪاﺷﺘﻪ ﺑﺎﺷﺪ‪.‬‬
‫‪ -٣‬ﻣﺴﺎﻟﻪ ‪ 4.2.7‬در ﺻﻔﺤﻪ ‪ ٢٠٨‬ﮐﺘﺎب‬
‫‪ -۴‬ﮔﺮاﻣﺮ هﺎﯼ زﻳﺮ را در ﻧﻈﺮ ﺑﮕﻴﺮﻳﺪ؛ ﺑﺮاﯼ هﺮ ﻳﮏ )‪ (١‬از ﮔﺮاﻣﺮ ﻓﺎﮐﺘﻮر ﭼﭗ ﺑﮕﻴﺮﻳﺪ )‪ (٢‬ﺁﻳﺎ ﮔﺮاﻣﺮ ﺑﺮاﯼ‬
‫‪ Top-down parsing‬ﻣﻨﺎﺳﺐ ﺷﺪﻩ اﺳﺖ؟ )‪ (٣‬ﺑﺎزﮔﺸﺖ هﺎﯼ ﭼﭗ را ﺣﺬف ﮐﻨﻴﺪ )‪ (۴‬ﺁﻳﺎ ﮔﺮاﻣﺮ ﺑﺮاﯼ ‪Top-‬‬
‫‪ down parsing‬ﻣﻨﺎﺳﺐ ﺷﺪﻩ اﺳﺖ؟‬
‫اﻟﻒ( ﮔﺮاﻣﺮ ﺑﺨﺶ ‪ A‬ﺳﻮال ‪١‬‬
‫ب( ﮔﺮاﻣﺮ ﺑﺨﺶ ‪ B‬ﺳﻮال ‪١‬‬
‫پ( ﮔﺮاﻣﺮ ﺑﺨﺶ ‪ D‬ﺳﻮال ‪١‬‬
‫‪ -۵‬ﮔﺮاﻣﺮ هﺎﯼ زﻳﺮ را در ﻧﻈﺮ ﺑﮕﻴﺮﻳﺪ؛ ﺑﺮاﯼ هﺮ ﻳﮏ )‪ (١‬ﺟﺪول ‪ First‬و ‪ Follow‬را ﺗﺸﮑﻴﻞ دهﻴﺪ )‪ (٢‬ﻳﮏ‬
‫‪ Predictive Parser‬ﻃﺮاﺣﯽ ﮐﻨﻴﺪ و ﺟﺪول ‪ parsing‬ﺁن را ﺑﻴﺎورﻳﺪ‪:‬‬
‫اﻟﻒ( ﮔﺮاﻣﺮ ﺑﺨﺶ ‪ B‬ﺳﻮال ‪١‬‬
‫ب( ﮔﺮاﻣﺮ ﺑﺨﺶ ‪ C‬ﺳﻮال ‪١‬‬
‫پ( ﮔﺮاﻣﺮ ﺑﺨﺶ ‪ D‬ﺳﻮال ‪١‬‬
‫ت( ﮔﺮاﻣﺮ ﺑﺨﺶ ‪ E‬ﺳﻮال ‪١‬‬
‫‪ -۶‬ﻣﺴﺎﻟﻪ ‪ 4.4.6‬در ﺻﻔﺤﻪ ‪ ٢٣٢‬ﮐﺘﺎب‬
‫‪ -٧‬ﻣﺴﺎﻟﻪ ‪ 4.5.3‬در ﺻﻔﺤﻪ ‪ ٢۴١‬ﮐﺘﺎب‬
‫‪ -٨‬ﻣﺴﺎﻟﻪ ‪ 4.6.2‬در ﺻﻔﺤﻪ ‪ ٢۵٨‬ﮐﺘﺎب‬
‫‪ -٩‬ﻣﺴﺎﻟﻪ ‪ 4.6.6‬در ﺻﻔﺤﻪ ‪ ٢۵٨‬ﮐﺘﺎب‬
‫‪ -١٠‬ﻣﺴﺎﻟﻪ ‪ 4.7.1‬در ﺻﻔﺤﻪ ‪ ٢٧٧‬ﮐﺘﺎب‬
‫ﺗﻮﺿﻴﺤﺎت‪:‬‬
‫‪-١‬‬
‫‪-٢‬‬
‫‪-٣‬‬
‫‪-۴‬‬
‫ﺟﻮاب هﺎﯼ ﺧﻮد را در ﻳﮏ ﻓﺎﻳﻞ ﺑﺎ ﻗﺎﻟﺐ ‪ PDF‬ﻳﺎ ‪ MS Word 2003‬ﺑﻨﻮﻳﺴﻴﺪ‪ .‬ﻓﺎﻳﻞ ﺧﻮد را ﺑﻪ ﺻﻮرت‬
‫‪ hw2-????????.pdf‬و ﻳﺎ ‪ hw2-????????.doc‬ﻧﺎم ﮔﺬارﯼ ﮐﻨﻴﺪ )ﺑﻪ ﺟﺎﯼ ﻋﻼﻣﺖ هﺎﯼ ﺳﻮال ﺷﻤﺎرﻩ‬
‫داﻧﺸﺠﻮﻳﯽ ﺧﻮد را ﻗﺮار دهﻴﺪ( و ﺑﻪ ﺁدرس ‪ [email protected]‬اﯼ‪-‬ﻣﻴﻞ ﺑﺰﻧﻴﺪ‪.‬‬
‫‪ Subject‬را ﺑﺮاﺑﺮ ????????‪ HW2-‬ﻗﺮار دهﻴﺪ )ﺑﻪ ﺟﺎﯼ ﻋﻼﻣﺖ هﺎﯼ ﺳﻮال ﺷﻤﺎرﻩ داﻧﺸﺠﻮﻳﯽ ﺧﻮد را‬
‫ﻗﺮار دهﻴﺪ( و ﻧﺎم ﺧﻮد را در ﺑﺪﻧﻪ ﻣﻴﻞ ﺑﻨﻮﻳﺴﻴﺪ‪.‬‬
‫ﻟﻄﻔًﺎ ﺑﻪ ﺳﺮرﺳﻴﺪ ﺗﻤﺮﻳﻦ هﺎ ﺗﻮﺟﻪ ﮐﻨﻴﺪ‪ .‬ﺗﻤﺮﻳﻦ هﺎﻳﯽ ﮐﻪ از ﻇﻬﺮ روز ﺗﻌﻴﻴﻦ ﺷﺪﻩ دﻳﺮﺗﺮ ﺑﺮﺳﻨﺪ ﻧﻤﺮﻩ اﯼ‬
‫ﻧﺨﻮاهﻨﺪ ﮔﺮﻓﺖ‪.‬‬
‫اﮔﺮ در ﺳﻮال هﺎ اﺑﻬﺎﻣﯽ وﺟﻮد دارد در ﺑﺨﺶ ‪ Discussion‬ﺻﻔﺤﻪ درس ﻣﻄﺮح ﮐﻨﻴﺪ‪.‬‬
‫ﻣﯽ ﺗﻮاﻧﻴﺪ ﺗﻤﺮﻳﻨﺎت را روﯼ ﮐﺎﻏﺬ ﺑﻨﻮﻳﺴﻴﺪ و ﺑﻪ ﺁﻗﺎﯼ دﮐﺘﺮ اﺑﻮاﻟﺤﺴﻨﯽ در ﺻﺒﺢ روز ﺳﺮرﺳﻴﺪ ﺗﺤﻮﻳﻞ دهﻴﺪ‪.‬‬