TLA90_2.pdf

 ! %& & '
.!" # .( )*+ &(
,) "-! .
+/
‫ ﺑﺮاي ﻫﺮ ﻳﻚ از ﮔﺮاﻣﺮﻫﺎي زﻳﺮ ﻧﻮع و زﺑﺎﻧﻲ را ﻛﻪ ﺗﻮﻟﻴﺪ ﻣﻲ ﻛﻨﺪ را ﺗﻌﻴﻴﻦ ﻛﻨﻴﺪ‬-1
1:
S→ε
S→Sd
S→cS
2:
S→cA
A→dS
S→ε
3:
S→ε
S→SS
S→c
4:
S→ε
S→ScS
S→c
5:
S→ε
S→cSd
6:
S→ε
S→SA
S→SB
SA→c
cA→cc
cB→cd
dB→dd
7:
S→cA
A→d
A→cA
‫‪A→Td‬‬
‫‪T→Td‬‬
‫‪T→d‬‬
‫‪ -2‬ﺑﺮاي زﺑﺎن ﻫﺎي زﻳﺮ ﻳﻚ ﮔﺮاﻣﺮ ﻣﻨﻈﻢ ﺑﺪﻫﻴﺪ‪.‬‬
‫اﻟﻒ( رﺷﺘﻪ ﻫﺎي دودوﻳﻲ ﻛﻪ ﺑﻪ ‪ 01‬ﺧﺘﻢ ﻣﻲ ﺷﻮﻧﺪ‪.‬‬
‫ب( رﺷﺘﻪ ﻫﺎﻳﻲ از اﻋﺪاد دﻫﺪﻫﻲ ﻛﻪ ﺑﺮ ‪ 5‬ﺑﺨﺶ ﭘﺬﻳﺮ ﺑﺎﺷﻨﺪ‪.‬‬
‫ج( ‪ ) Ruby identifiers.‬ﺷﻤﺎ ﻣﻲﺑﺎﻳﺴﺖ ﺧﻮد ﻣﻔﻬﻮم اﻳﻦ ﻣﺘﻐﻴﺮﻫﺎ را ﭘﻴﺪا ﻛﻨﻴﺪ‪( .‬‬
‫د( رﺷﺘﻪ ﻫﺎي دودوﻳﻲ ﻛﻪ ﺗﻌﺪاد ﺻﻔﺮﻫﺎ ﻳﺎ ﻳﻚ ﻫﺎ در آن ﻋﺪدي ﻓﺮد اﺳﺖ‪.‬‬
‫ه( رﺷﺘﻪ ﻫﺎي دودوﻳﻲ ﻛﻪ ﺷﺎﻣﻞ زﻳﺮ رﺷﺘﻪ ‪ 101‬ﺑﺎﺷﻨﺪ‪.‬‬
‫و( رﺷﺘﻪ ﻫﺎي دودوﻳﻲ ﻛﻪ ﺷﺎﻣﻞ زﻳﺮ رﺷﺘﻪ ‪ 101‬ﻧﺒﺎﺷﻨﺪ‪.‬‬
‫ز( ﺑﺮاي ﻣﺠﻤﻮﻋﻪ } ‪ L = { a3mb2n| m >= 0 ; n >= 0‬ﻳﻚ ﮔﺮاﻣﺮ ﻣﻨﻈﻢ ﺑﺪﻫﻴﺪ‪.‬‬
‫‪ -3‬ﺑﺮاي ﻫﺮ ﻳﻚ از زﺑﺎﻧﻬﺎي زﻳﺮ ﻳﻚ ﮔﺮاﻣﺮ از راﺳﺖ ﺧﻄﻲ و ﻳﻚ ﮔﺮاﻣﺮ از ﭼﭗ ﺧﻄﻲ ﺑﻨﻮﻳﺴﻴﺪ‪.‬‬
‫اﻟﻒ( ‪10‬‬
‫ب( ‪ab c‬‬
‫ج( ‪0
1 | 1 3‬‬
‫د( ‪0
1 | 1 3‬‬
‫ه( ‪00,1 1‬‬
‫و( ‪0,1 0,1 000,1‬‬
‫ز( ﻣﺠﻤﻮﻋﻪ رﺷﺘﻪ ﻫﺎﻳﻲ از‪ 0,1‬ﻛﻪ ﺗﻌﺪاد ‪ 0‬ﻫﺎﻳﺸﺎن زوج و ﺗﻌﺪاد ‪ 1‬ﻫﺎﻳﺸﺎن ﻓﺮد اﺳﺖ‪.‬‬
‫ح( ﻣﺠﻤﻮﻋﻪ رﺷﺘﻪ ﻫﺎﻳﻲ از ‪ 0,1‬ﻛﻪ در ﻣﺒﻨﺎي دو ﺑﺮ ‪ 3‬ﺑﺨﺶ ﭘﺬﻳﺮﻧﺪ‪.‬‬
‫‪ -4‬ﺑﺮاي ﻫﺮ ﻳﻚ از زﺑﺎﻧﻬﺎي زﻳﺮ ﻳﻚ ﮔﺮاﻣﺮ ﻣﺴﺘﻘﻞ از ﻣﺘﻦ ﺑﻨﻮﻳﺴﻴﺪ‪.‬‬
‫اﻟﻒ( ‪ | 0‬‬
‫ب( ‪ | 0‬‬
‫پ( ‪
| 0‬‬
‫ت( ‪a, b, c | 0‬‬
‫ث( ‪
|, 0‬‬
‫ج( ‪
|, 0‬‬
‫چ( ‪ | a, b, c‬‬
‫ح( ﻣﺠﻤﻮﻋﻪ ﭘﺮاﻧﺘﺰﺑﻨﺪﻳﻬﺎي ﻣﻌﺘﺒﺮ از "" ‪"",‬‬
‫خ( ﻣﺠﻤﻮﻋﻪ ﺗﻤﺎم رﺷﺘﻪ ﻫﺎ روي اﻟﻔﺒﺎي}‪ L = { a,b,.,+,*,(,),", #‬ﻛﻪ ﻧﺸﺎﻧﮕﺮ ﻳﻚ ﻋﺒﺎرت ﻣﻨﻈﻢ ﺑﺮ روي اﻟﻔﺒﺎي }‪ {a,b‬ﻫﺴﺘﻨﺪ‪.‬‬
‫د( ﻣﺠﻤﻮﻋﻪ ﺗﻤﺎم رﺷﺘﻪ ﻫﺎي ﺑﺮ روي اﻟﻔﺒﺎي }‪ {a,b‬ﻛﻪ ﺑﻪ ﺻﻮرت ‪ ww‬ﻧﻴﺴﺘﻨﺪ‪.‬‬
‫ذ( رﺷﺘﻪ ﻫﺎي دودوﻳﻲ ﻛﻪ ﺷﺎﻣﻞ ‪ 010‬ﻧﺒﺎﺷﻨﺪ‪.‬‬
‫ر( }*}‪{W = WR & |W| is even | W in { 0,1‬‬
‫ز( رﺷﺘﻪ ﻫﺎي دودوﻳﻲ ﻛﻪ ﻃﻮل آﻧﻬﺎ ﻓﺮد ﺑﺎﺷﺪ و ﺣﺮف وﺳﻂ آﻧﻬﺎ ‪ 0‬ﺑﺎﺷﺪ‪.‬‬
‫ژ( ‪Φ‬‬
‫س( } ‪{ a b c | i , j , k >= 0 and i=j or i=k‬‬
‫ش( رﺷﺘﻪ ﻫﺎي دودوﻳﻲ ﻛﻪ ﻃﻮل آﻧﻬﺎ زوج ﺑﺎﺷﺪ و دو ﺣﺮف وﺳﻂ آن ﻳﻜﺴﺎن ﻧﺒﺎﺷﺪ‪ .‬ﻣﺜﻞ‪1010 :‬‬
‫ص( رﺷﺘﻪ ﻫﺎي دودوﻳﻲ ﻛﻪ ﻃﻮل آﻧﻬﺎ ﻓﺮد ﺑﺎﺷﺪ و ﺣﺮف اول و وﺳﻂ و اﻧﺘﻬﺎﻳﻲ آن ﻳﻜﺴﺎن ﺑﺎﺷﺪ‪.‬‬
‫ض( رﺷﺘﻪ ﻫﺎي دودوﻳﻲ ﻛﻪ ﺑﻪ ﻓﺮم ‪ 0n1n‬ﻧﺒﺎﺷﻨﺪ‪.‬‬
‫ط(}‪L = { aibjck : k=i+j‬‬
‫ظ( }‪L = {aibjck: k != i+j‬‬
‫ع( ﺗﻤﺎم رﺷﺘﻪ ﻫﺎي دودوﻳﻲ ﻛﻪ ﺗﻌﺪاد ‪ 1‬ﻫﺎي آن از ﺗﻌﺪاد ‪ 0‬ﻫﺎي ﻣﺘﻮاﻟﻲ آن ﺑﻴﺸﺘﺮ ﺑﺎﺷﺪ‪.‬‬
‫غ( ﺗﻤﺎم رﺷﺘﻪ ﻫﺎي دودوﻳﻲ ﻛﻪ ﺗﻌﺪاد ‪ 1‬ﻫﺎي آﻧﻬﺎ دوﺑﺮاﺑﺮ ‪ 0‬ﻫﺎ ﺑﺎﺷﺪ‪.‬‬
‫‪i j k‬‬
‫‪ -5‬ﺑﺮاي ﻫﺮ ‪ bi ،$ %‬ﻫﺎ را رﺷﺘﻪ ﻫﺎﻳﻲ ﺗﻌﺮﻳﻒ ﻣﻲ ﻛﻨﻴﻢ ﻛﻪ ﺑﺮاﺑﺮ ﻧﻤﺎﻳﺶ دودوﻳﻲ ﻋﺪد ‪ i‬ﺑﺎﺷﺪ‪ .‬ﮔﺮاﻣﺮ ﻣﺴﺘﻘﻞ از ﻣﺘﻨﻲ ﺑﺪﻫﻴﺪ‬
‫ﻛﻪ زﺑﺎن زﻳﺮ را ﺑﭙﺬﻳﺮد‪:‬‬
‫} ‪{0,1,#}* - { b1 # b2 # … # bn | n >= 1‬‬
‫‪ -6‬ﮔﺮاﻣﺮ ﻣﺴﺘﻘﻞ از ﻣﺘﻨﻲ ﺑﺪﻫﻴﺪ ﻛﻪ زﺑﺎن زﻳﺮ را ﺑﭙﺬﻳﺮد‪:‬‬
‫‪{ W # WR # | W in ( 0 + 1 )*}*.‬‬
‫‪ -7‬ﺑﺮاي ﻫﺮ ﻳﻚ از زﺑﺎﻧﻬﺎي زﻳﺮ ﻳﻚ ﮔﺮاﻣﺮ ﺣﺴﺎس ﺑﻪ ﻣﺘﻦ ﺑﻨﻮﻳﺴﻴﺪ‪.‬‬
‫اﻟﻒ( ‪ | 0‬‬
‫ب( ‪ | 0,1‬‬
‫پ( ) ' ( ' &| ‪a, b, c‬‬
‫ ﻛﻪ & ﻳﻌﻨﻲ ﺗﻌﺪاد ﻫﺎي ﻣﻮﺟﻮد در ‬
‫ت( رﺷﺘﻪ ﻫﺎﻳﻲ در ﻣﺒﻨﺎي ‪ 3‬ﻛﻪ ﺗﻌﺪاد ‪ 0‬ﻫﺎ و ‪ 1‬ﻫﺎ و ‪ 2‬ﻫﺎي آﻧﻬﺎ ﺑﺮاﺑﺮ ﺑﺎﺷﻨﺪ‪.‬‬
‫ث( }‪L = { 0n1n0n1n‬‬
‫ج( } ‪L = { 0nx1n| |x| <= n‬‬
‫چ( } ‪L = { a k | k = n2 , n > 0‬‬
‫‪ -8‬ﺑﺮاي ﻫﺮ ﻳﻚ از زﺑﺎﻧﻬﺎي زﻳﺮ ﻳﻚ ﮔﺮاﻣﺮ ﻧﻮع ﺻﻔﺮ )ﺑﺪون ﻣﺤﺪودﻳﺖ( ﺑﻨﻮﻳﺴﻴﺪ‪.‬‬
‫اﻟﻒ( ‪ * | 0‬‬
‫ب( ' ‪0
10 10+ ,, 0 -‬‬
‫پ( * ‪0& 10( 10) 10. ,, , , * 0 / ' /‬‬
‫ت( * ' ‪0& 10( 10) 10. ,, , , * 0‬‬
‫ث( } ‪L = { ak | k = 2n , n >=0‬‬
‫ج( } ‪L = { a k | k = n2 , n > 0‬‬
‫چ( رﺷﺘﻪ ﻫﺎﻳﻲ ﺑﻪ ﻓﺮم ‪. ww‬‬
‫‪ -9‬ﮔﺮاﻣﺮ ‪ E E+E | E*E|(E)|id‬زﺑﺎن ﻋﺒﺎرات رﻳﺎﺿﻲ ﺑﺎ ﻋﻤﻠﮕﺮ ﻫﺎي ﺟﻤﻊ و ﺿﺮب را ﻧﻤﺎﻳﺶ ﻣﻲ دﻫﺪ‪:‬‬
‫اﻟﻒ ( ﻧﺸﺎن دﻫﻴﺪ اﻳﻦ ﮔﺮاﻣﺮ ﻣﺒﻬﻢ اﺳﺖ‪.‬‬
‫ب( ﮔﺮاﻣﺮ ﻧﺎ ﻣﺒﻬﻤﻲ ﻣﻌﺎدل آن اراﻳﻪ دﻫﻴﺪ‪.‬‬
‫‪ -10‬ﮔﺮاﻣﺮ ‪ G‬ﺑﻪ ﺻﻮرت زﻳﺮ ﺗﻌﺮﻳﻒ ﺷﺪه اﺳﺖ‪:‬‬
‫‪S aB | bA‬‬
‫‪A a | aS | bAA‬‬
‫‪B b| bS | aBB‬‬
‫ﺑﺮاي رﺷﺘﻪ ي ‪: aaabbabbba‬‬
‫اﻟﻒ( اﺷﺘﻘﺎق ﭼﭗ را ﺑﻨﻮﻳﺴﻴﺪ‪.‬‬
‫ب( اﺷﺘﻘﺎق راﺳﺖ را ﺑﻨﻮﻳﺴﻴﺪ‪.‬‬