Вы находитесь на странице: 1из 2

‫ﺑﻪ ﻧﺎم ﻳﻜﺘﺎي ﻫﺴﺘﻲ ﺑﺨﺶ‬

‫داﻧﺸﮕﺎه ﺗﻬﺮان‪ ،‬داﻧﺸﻜﺪهي ﻣﻬﻨﺪﺳﻲ ﺑﺮق و ﻛﺎﻣﭙﻴﻮﺗﺮ‬


‫ﺳﺎﺧﺘﻤﺎن دادهﻫﺎ و اﻟﮕﻮرﻳﺘﻢﻫﺎ‪ ،‬ﻧﻴﻤﺴﺎل اول‪ ،‬ﺳﺎل ﺗﺤﺼﻴﻠﻲ ‪89-90‬‬
‫ﻣﻬﻠﺖ ﺗﺤﻮﻳﻞ‪ :‬ﭘﻨﺞ ﺷﻨﺒﻪ‪89/11/14 ،‬‬ ‫ﺗﻤﺮﻳﻦ ﻛﺎﻣﭙﻴﻮﺗﺮي ﻧﻬﺎﻳﻲ‬

‫ﻳﻚ ﺟﺪول    در ﻧﻈﺮ ﺑﮕﻴﺮﻳﺪ ﻛﻪ ﺑﺮﺧﻲ از ﺧﺎﻧﻪﻫﺎي آن ﺑﺎ ﻳﻜﻲ از اﻋﺪاد ‪ 2 ،1 ،0‬ﻳﺎ ‪ 3‬ﭘﺮ ﺷﺪه اﺳﺖ )ﻣﺎﻧﻨﺪ ﺷﻜﻞ زﻳﺮ(‪ .‬ﻣﻲﺧﻮاﻫﻴﻢ ﺑﺎ‬

‫ﻋﺒﻮر از اﺿﻼع ﺧﺎﻧﻪﻫﺎ‪ ،‬ﻳﻚ دور ﺗﺸﻜﻴﻞ دﻫﻴﻢ ﺑﻪ ﻧﺤﻮي ﻛﻪ اوﻻً ﻫﻤﺒﻨﺪ ﺑﺎﺷﺪ و از ﻫﺮ ﻧﻘﻄﻪ دﻗﻴﻘﺎً ﻳﻜﺒﺎر ﻋﺒﻮر ﻛﻨﺪ و ﺛﺎﻧﻴﺎً ﺑﻪ ازاي ﻫﺮ ﻳﻚ از‬
‫ﺧﺎﻧﻪﻫﺎﻳﻲ ﻛﻪ در آﻧﻬﺎ ﻋﺪد ﻗﺮار دارد‪ ،‬دﻗﻴﻘﺎً ﺑﻪ اﻧﺪازه ﻫﻤﺎن ﻋﺪد از اﺿﻼع آن ﺧﺎﻧﻪ اﻧﺘﺨﺎب ﺷﺪه ﺑﺎﺷﻨﺪ‪ .‬در ﻣﻮرد ﺧﺎﻧﻪﻫﺎي ﺧﺎﻟﻲ ﻣﻬﻢ ﻧﻴﺴﺖ‬
‫ﻛﻪ ﭼﻨﺪ ﺗﺎ اﺿﻼﻋﺸﺎن اﻧﺘﺨﺎب ﻣﻲﺷﻮﻧﺪ‪ .‬ﺷﻜﻞ زﻳﺮ ﻳﻚ ﻧﻤﻮﻧﻪ از ﭼﻨﻴﻦ دوري را ﺑﺮاي ﺟﺪول ﺑﺎﻻ ﻧﺸﺎن ﻣﻲدﻫﺪ‪.‬‬

‫ورودي‪:‬‬
‫در ﺧﻂ اول ورودي ﻋﺪد  ﻗﺮار دارد ‪ .  10‬ﺑﻌﺪ از آن در  ﺳﻄﺮ ﺑﻌﺪي‪ ،‬ﻣﺎﺗﺮﻳﺲ    اﻋﺪاد ﻗﺮار ﻣﻲﮔﻴﺮد‪ .‬ﺑﻴﻦ دراﻳﻪ‪-‬‬
‫ﻫﺎي ﻫﺮ ﺳﻄﺮ ﻣﺎﺗﺮﻳﺲ ﻳﻚ ﻛﺎراﻛﺘﺮ ﻓﺎﺻﻠﻪ ﻗﺮار دارد و ﻫﺮ ﺳﻄﺮ ﻣﺎﺗﺮﻳﺲ ﻫﻢ در ﻳﻚ ﺧﻂ ورودي ﻧﻮﺷﺘﻪ ﻣﻲﺷﻮد‪ .‬ﺑﺮاي ﻧﻘﺎط ﺧﺎﻟﻲ در‬
‫ﺟﺪول‪ ،‬ﻋﺪد ‪ 9‬در ورودي داده ﻣﻲﺷﻮد )ﺑﺮاي اﻳﻨﻜﻪ ﺧﻮﻧﺪن ورودي راﺣﺖﺗﺮ ﺑﺎﺷﻪ! ‪ -1‬ﻛﻪ ﺟﺪول رو ﺧﺮاب ﻣﻴﻜﻨﻪ! ‪ 0‬ﻫﻢ ﻛﻪ ﺧﻮدش‬
‫ﻻزﻣﻪ! دﻳﮕﻪ ﻫﺮ ﭼﻲ ﻣﻴﺬاﺷﺘﻴﻢ ﻣﻴﺸﺪ ﻣﺜﻞ ‪) (!9‬ﺑﻪ ورودي ﻧﻤﻮﻧﻪ ﺗﻮﺟﻪ ﺷﻮد(‪.‬‬
‫ﺧﺮوﺟﻲ‪:‬‬
‫در اوﻟﻴﻦ ﺧﻂ از ﻓﺎﻳﻞ ﺧﺮوﺟﻲ‪ ،‬ﻋﺪد ‪ e‬را ﭼﺎپ ﻛﻨﻴﺪ ﻛﻪ ﻧﺸﺎن دﻫﻨﺪه ﻃﻮل دور اﺳﺖ‪ .‬در ‪ e‬ﺧﻂ ﺑﻌﺪي‪ ،‬ﻧﻘﺎط دور را ﺑﻪ اﻳﻦ ﺗﺮﺗﻴﺐ‬
‫ﺑﻨﻮﻳﺴﻴﺪ‪ :‬اﺑﺘﺪا ﻧﻘﻄﻪاي را ﻛﻪ اوﻻً ﭼﭗﺗﺮ‪ ،‬و ﺛﺎﻧﻴﺎً ﺑﺎﻻﺗﺮ از ﺳﺎﻳﺮ ﻧﻘﺎط اﺳﺖ‪ ،‬و ﺑﻌﺪ از آن ﺑﻪ ﺗﺮﺗﻴﺐ ﺳﺎﻋﺖﮔﺮد‪ ،‬ﺳﺎﻳﺮ ﻧﻘﺎط دور‪ ،‬ﺗﺎ آﺧﺮﻳﻦ‬
‫ﻧﻘﻄﻪ )ﻧﻘﻄﻪ ﭘﺎﻳﻴﻦ ﻧﻘﻄﻪ ﺷﺮوع(‪ .‬ﺑﺮاي ﻫﺮ ﻳﻚ از ﻧﻘﺎط زوج  

 را ﻛﻪ   
 ‪ 0 
,‬اﺳﺖ‪ ،‬در‬
‫ﻳﻚ ﺧﻂ ﺑﻨﻮﻳﺴﻴﺪ‪.‬‬
‫در ﺻﻮرﺗﻴﻜﻪ ﻣﺴﺎﻟﻪ ﭼﻨﺪ ﺟﻮاب دارد‪ ،‬ﭼﺎپ ﻛﺮدن ﻳﻚ ﺟﻮاب دﻟﺨﻮاه ﻛﺎﻓﻴﺴﺖ‪.‬‬

‫ورودي ﻧﻤﻮﻧﻪ‪:‬‬

‫ﺧﺮوﺟﻲ ﻧﻤﻮﻧﻪ‪:‬‬

‫ﺗﻮﺟﻪ‪:‬‬
‫اﻳﻦ ﺗﻤﺮﻳﻦ ﺳﻪ ﻧﻔﺮه ﻣﻲﺑﺎﺷﺪ‪.‬‬ ‫•‬
‫زﻣﺎن اﻧﺠﺎم ﺗﻤﺮﻳﻦ ﻗﺎﺑﻞ ﺗﻤﺪﻳﺪ ﻧﻴﺴﺖ‪.‬‬ ‫•‬
‫ﭼﻮن اﻳﻦ ﺗﻤﺮﻳﻦ ﻧﺴﺒﺖ ﺑﻪ ﺗﻤﺮﻳﻦﻫﺎي دﻳﮕﺮ ﻧﻤﺮه ﺑﻴﺸﺘﺮي داره‪ ،‬ﭘﺲ ﺳﻌﻲ ﻛﻨﻴﻦ ﻛﻪ وﻗﺖ ﻛﺎﻓﻲ ﺑﺮاي اﻧﺠﺎم ﻛﺎﻣﻞ اون ﺑﺬارﻳﻦ‪.‬‬ ‫•‬

Вам также может понравиться