Sample_Questions.pdf

‫ﺑﺮﻧﺎﻣﻪ ﻧﻮﻳﺴﻲ ﺑﻪ زﺑﺎن ﭘﺎﺳﻜﺎل ‪ -‬ﮔﺮوه ‪5‬‬
‫ﻧﻤﻮﻧﻪ ﺳﻮال ﺑﺮﻧﺎﻣﻪﻧﻮﻳﺴﻲ‬
‫™ ﻧﻤﻮﻧﻪ ﺳﻮاﻻت زﻳﺮ ﺑﻪ ﻋﻨﻮان ﺗﻤﺮﻳﻦ اﺿﺎﻓﻪ ﺑﺮاي اﻓﺮاد ﻋﻼﻗﻪﻣﻨﺪ! آﻣﺎده ﺷﺪه اﺳﺖ و ﻧﻴﺎزي ﺑﻪ ﺗﺤﻮﻳﻞ آنﻫﺎ ﻧﻴﺴﺖ‪.‬‬
‫ﺑﺮاي وﺿﻮح ﺑﻴﺸﺘﺮ در ﺑﻌﻀﻲ ﺳﻮاﻻت‪ ،‬ﻣﺜﺎل ﻫﻢ ذﻛﺮ ﺷﺪه اﺳﺖ‪.‬‬
‫‪.1‬‬
‫ﺑﺮﻧﺎﻣﻪاي ﺑﻨﻮﻳﺴﻴﺪ ﻛﻪ اﺑﺘﺪا از ورودي ﻋﺪد ﺻﺤﻴﺢ و ﻣﺜﺒﺖ ‪ N‬را ﺑﻪ ﻋﻨﻮان ﺗﻌﺪاد اﻋﺪاد درﻳﺎﻓﺖ ﻧﻤﺎﻳﺪ و ﺑﻪ دﻧﺒﺎل‬
‫آن ‪ N‬ﻋﺪد دﻳﮕﺮ را درﻳﺎﻓﺖ ﻧﻤﻮده و ﺑﺰرﮔﺘﺮﻳﻦ ﻋﺪد در ﺑﻴﻦ اﻋﺪاد ورودي ﺑﻪ ﻫﻤﺮاه ﺗﻌﺪاد ﺗﻜﺮار آن در ﺧﺮوﺟﻲ‬
‫ﻧﻤﺎﻳﺶ دﻫﺪ‪) .‬ﺗﻮﺟﻪ‪ :‬اﺳﺘﻔﺎده از آراﻳﻪ ﻣﻤﻨﻮع اﺳﺖ!(‬
‫‪Input:‬‬
‫‪10‬‬
‫‪3 -2 5 7 5 -10 7 5 4 5‬‬
‫‪Output:‬‬
‫‪The biggest number = 7‬‬
‫‪Number of iterations = 2‬‬
‫‪.2‬‬
‫ﺑﺮﻧﺎﻣﻪاي ﺑﻨﻮﻳﺴﻴﺪ ﻛﻪ ﻳﻚ رﺷﺘﻪ را از ورودي درﻳﺎﻓﺖ ﻛﻨﺪ و در ﺧﺮوﺟﻲ ﻣﺸﺨﺺ ﻧﻤﺎﻳﺪ ﻛﻪ آﻳﺎ رﺷﺘﻪي ورودي در‬
‫زﺑﺎن ﺗﻮرﺑﻮ ﭘﺎﺳﻜﺎل ﻳﻚ ﺷﻨﺎﺳﻪي اﺳﺖ ﻳﺎ ﻧﻪ؟‬
‫‪Input:‬‬
‫‪aAbBcCdDeEfF‬‬
‫‪Ouput:‬‬
‫‪valid identifier‬‬
‫‪.3‬‬
‫‪Input:‬‬
‫‪Num1*Num2‬‬
‫‪Input:‬‬
‫‪Input:‬‬
‫‪_Way4‬‬
‫‪Output:‬‬
‫‪invalid identifier‬‬
‫‪4way‬‬
‫‪Output:‬‬
‫‪valid identifier‬‬
‫‪Output:‬‬
‫‪invalid identifier‬‬
‫ﻳﻚ ﻋﺪد را ﻣﻘﻠﻮب‪-‬ﻣﻀﺮب ﻣﻲﻧﺎﻣﻴﻢ ﻫﺮﮔﺎه ﻣﻘﻠﻮب آن ﻣﻀﺮب ﺻﺤﻴﺤﻲ از ﺧﻮد ﻋﺪد ﺑﺎﺷﺪ‪ .‬ﺑﺮﻧﺎﻣﻪاي ﺑﻨﻮﻳﺴﻴﺪ ﻛﻪ‬
‫ﺗﻤﺎﻣﻲ اﻋﺪاد ﭼﻬﺎر رﻗﻤﻲ داراي اﻳﻦ ﺧﺼﻮﺻﻴﺖ را ﭘﻴﺪا ﻧﻤﻮده و در ﺧﺮوﺟﻲ ﻧﻤﺎﻳﺶ دﻫﺪ‪.‬‬
‫ﻣﺜﺎل‪ :‬ﻋﺪد ‪ 1089‬ﻣﻘﻠﻮب‪-‬ﻣﻀﺮب اﺳﺖ زﻳﺮا ﻣﻘﻠﻮب آن ﻳﻌﻨﻲ ﻋﺪد ‪ 9801‬ﻣﻀﺮب ‪ 1089‬اﺳﺖ‪.‬‬
‫‪1‬‬
‫ﺑﺮﻧﺎﻣﻪ ﻧﻮﻳﺴﻲ ﺑﻪ زﺑﺎن ﭘﺎﺳﻜﺎل ‪ -‬ﮔﺮوه ‪5‬‬
‫ﻧﻤﻮﻧﻪ ﺳﻮال ﺑﺮﻧﺎﻣﻪﻧﻮﻳﺴﻲ‬
‫‪.4‬‬
‫ﺑﺮﻧﺎﻣﻪاي ﺑﻨﻮﻳﺴﻴﺪ ﻛﻪ ﻳﻚ ﻋﺪد ﺣﺪاﻛﺜﺮ ‪ 9‬رﻗﻤﻲ را از ورودي درﻳﺎﻓﺖ ﻧﻤﺎﻳﺪ و در ﺧﺮوﺟﻲ رﺷﺘﻪي ﺣﺮﻓﻲ ﻣﻌﺎدل‬
‫ﻋﺪد را ﻧﻤﺎﻳﺶ دﻫﺪ!!‬
‫‪Input:‬‬
‫‪12345901‬‬
‫‪Output:‬‬
‫‪Twelve Million, Three Hundred Forty-Five Thousand, Nine Hundred One‬‬
‫‪.5‬‬
‫ﻓﺮﺿﻴﻪاي وﺟﻮد دارد ﻛﻪ ﻫﺮ ﻋﺪد زوج ﺑﺮاﺑﺮ اﺳﺖ ﺑﺎ ﺣﺎﺻﻞﺟﻤﻊ دو ﻋﺪد اول‪ .‬ﺑﺮاي ﻣﺜﺎل‪:‬‬
‫‪4=2+2‬‬
‫‪6=3+3 8=3+5 … 100=89+11‬‬
‫زﻳﺮﺑﺮﻧﺎﻣﻪاي ﺑﻨﻮﻳﺴﻴﺪ ﻛﻪ از ورودي ﻳﻚ ﻋﺪد زوج ‪ N‬را درﻳﺎﻓﺖ ﻧﻤﻮده و دو ﻋﺪد اول ‪ P‬و ‪ Q‬ﻛﻪ ‪ N=P+Q‬را‬
‫ﺑﺮﮔﺮداﻧﺪ‪.‬‬
‫‪Input:‬‬
‫‪1530‬‬
‫‪Output:‬‬
‫‪P = 509‬‬
‫‪Q = 1021‬‬
‫‪.6‬‬
‫ﺑﺮﻧﺎﻣﻪاي ﺑﻨﻮﻳﺴﻴﺪ ﻛﻪ ﻳﻚ ﺟﻤﻠﻪ را از ورودي درﻳﺎﻓﺖ ﻧﻤﺎﻳﺪ و ﺗﻌﺪاد ﻛﻠﻤﺎت ﺟﻤﻠﻪ و ﻣﻴﺎﻧﮕﻴﻦ ﺗﻌﺪاد ﺣﺮوف ﻛﻠﻤﺎت‬
‫را )ﺑﻪ ﺻﻮرت ﻋﺪد ﺻﺤﻴﺢ( در ﺧﺮوﺟﻲ ﻧﻤﺎﻳﺶ دﻫﺪ‪ .‬ﻛﻠﻤﺎت ﺑﺎ ’‪) ‘,‬ﻛﺎﻣﺎ( ﻳﺎ ’ ‘ )ﻓﺎﺻﻠﻪ ﺧﺎﻟﻲ( ﺑﻪ ﺗﻌﺪاد دﻟﺨﻮاه! از‬
‫ﻫﻢ ﺟﺪا ﺷﺪهاﻧﺪ‪.‬در اﻧﺘﻬﺎي ﺟﻤﻠﻪ ﻫﻢ ’!‘ )ﻋﻼﻣﺖ ﺗﻌﺠﺐ(‪) ‘?’,‬ﻋﻼﻣﺖ ﺳﻮال( ﻳﺎ ’‪) ‘.‬ﻧﻘﻄﻪ( ﻗﺮار ﻣﻲﮔﻴﺮد‪ .‬ﺗﻮﺟﻪ‬
‫داﺷﺘﻪ ﺑﺎﺷﻴﺪ ﻛﻪ اﻳﻦ ﻋﻼﺋﻢ ﺟﺰو ﻃﻮل ﻛﻠﻤﻪ ﻣﺤﺴﻮب ﻧﻤﻲﺷﻮﻧﺪ‪.‬‬
‫‪Input:‬‬
‫… !!‪test statement, for counting the words and mean of their length‬‬
‫‪This is a‬‬
‫‪Output:‬‬
‫‪Number of words = 14‬‬
‫‪Mean length of words = 4‬‬
‫‪2‬‬
‫ﺑﺮﻧﺎﻣﻪ ﻧﻮﻳﺴﻲ ﺑﻪ زﺑﺎن ﭘﺎﺳﻜﺎل ‪ -‬ﮔﺮوه ‪5‬‬
‫ﻧﻤﻮﻧﻪ ﺳﻮال ﺑﺮﻧﺎﻣﻪﻧﻮﻳﺴﻲ‬
‫‪.7‬‬
‫ﺑﺮﻧﺎﻣﻪاي ﺑﻨﻮﻳﺴﻴﺪ ﻛﻪ ﺗﻌﺪادي ﻋﺪد ﺻﺤﻴﺢ ﻣﺜﺒﺖ )ﺣﺪاﻛﺜﺮ ‪ 100‬ﻋﺪد( را از ورودي درﻳﺎﻓﺖ ﻧﻤﺎﻳﺪ )ﻋﺪد ‪ -1‬ﺑﻪ‬
‫ﻋﻨﻮان ﭘﺎﻳﺎن ورودي اﺳﺖ( و ﻣﻴﺎﻧﻪ )ﻋﺪد وﺳﻄﻲ!( اﻳﻦ اﻋﺪاد را در ﺧﺮوﺟﻲ ﻧﻤﺎﻳﺶ دﻫﺪ )ﺑﺮاي ﭘﻴﺪا ﻛﺮدن ﻣﻴﺎﻧﻪ‪,‬‬
‫ﺑﺎﻳﺪ اﻋﺪاد را ﻣﺮﺗﺐ ﻛﻨﻴﺪ(‪ .‬اﮔﺮ ﺗﻌﺪاد اﻋﺪاد وارد ﺷﺪه زوج اﺳﺖ‪ ,‬ﻣﻴﺎﻧﮕﻴﻦ دو ﻋﺪد وﺳﻄﻲ ﺑﻪ ﻋﻨﻮان ﻣﻴﺎﻧﻪ در ﻧﻈﺮ‬
‫ﮔﺮﻓﺘﻪ ﻣﻲﺷﻮد‪ .‬ﺗﻮﺟﻪ داﺷﺘﻪ ﺑﺎﺷﻴﺪ ﻛﻪ ﺗﻌﺪاد اﻋﺪاد از اﺑﺘﺪا ﻣﻌﻠﻮم ﻧﻴﺴﺖ و ﻋﺪد ‪ -1‬ﻧﺸﺎﻧﻪ ﺧﺎﺗﻤﻪ اﻋﺪاد ورودي‬
‫اﺳﺖ‪.‬‬
‫‪Input:‬‬
‫‪32 10 2 3 2 80 1000 937 4 534 10 23 -1‬‬
‫‪Output:‬‬
‫‪Median is 16.5 Æ (10+23)/2‬‬
‫‪.8‬‬
‫‪Input:‬‬
‫‪31 80 1000 937 4 534 10 -1‬‬
‫‪Output:‬‬
‫‪Median is 80‬‬
‫ﺑﺮﻧﺎﻣﻪاي ﺑﻨﻮﻳﺴﻴﺪ ﻛﻪ اﺑﺘﺪا ﻋﺪد ‪) N‬ﺣﺪاﻛﺜﺮ ‪ (50‬را درﻳﺎﻓﺖ ﻧﻤﻮده و ﺳﭙﺲ ‪ 2N‬ﻋﺪد ﺻﺤﻴﺢ را از ورودي ﮔﺮﻓﺘﻪ‬
‫و ﺗﻌﻴﻴﻦ ﻧﻤﺎﻳﺪ آﻳﺎ ﻣﻲﺗﻮان اﻋﺪاد وارد ﺷﺪه را ﺑﻪ دو ﮔﺮوه ‪-N‬ﺗﺎﻳﻲ ﺗﻘﺴﻴﻢ ﻛﺮد ﺑﻪ ﻧﺤﻮي ﻛﻪ ﻣﺠﻤﻮع اﻋﺪاد اﻳﻦ دو‬
‫ﮔﺮوه ﺑﺎ ﻫﻢ ﻣﺴﺎوي ﺑﺎﺷﺪ؟‬
‫‪Input:‬‬
‫‪Input:‬‬
‫‪4‬‬
‫‪3‬‬
‫‪80 1000 34 4 53 10 100 -1‬‬
‫‪14 6 6 550 325 -211‬‬
‫‪Output:‬‬
‫‪Impossible‬‬
‫‪Output:‬‬
‫‪Possible‬‬
‫)‪(14)+(6)+(325) = (6)+(550)+(-211‬‬
‫‪.9‬‬
‫زﻳﺮ ﺑﺮﻧﺎﻣﻪاي ﺑﻨﻮﻳﺴﻴﺪ ﻛﻪ دو آراﻳﻪ ‪ A‬و ‪ B‬از اﻋﺪاد ﺣﻘﻴﻘﻲ ﻛﻪ ﻋﻨﺎﺻﺮ آنﻫﺎ ﺑﻪ ﺗﺮﺗﻴﺐ ﺻﻌﻮدي ﻣﺮﺗﺐ ﺷﺪهاﻧﺪ )ﺑﺎ‬
‫ﻃﻮل ﺣﺪاﻛﺜﺮ ‪ (100‬را ﺑﻪ ﻫﻤﺮاه ﺗﻌﺪاد ﻋﻨﺎﺻﺮ ﻫﺮ آراﻳﻪ را ﺑﻪ ﻋﻨﻮان ورودي درﻳﺎﻓﺖ ﻧﻤﺎﻳﺪ )ﭘﺲ‪ ،‬روﻳﻪ داراي ﭼﻬﺎر‬
‫ورودي اﺳﺖ!( و آراﻳﻪي ‪ C‬را ﻛﻪ ﺣﺎﺻﻞ ادﻏﺎم اﻳﻦ دو آراﻳﻪ اﺳﺖ‪ ,‬ﺑﻪ ﮔﻮﻧﻪاي ﺗﺸﻜﻴﻞ دﻫﺪ ﻛﻪ ﻋﻨﺎﺻﺮ آراﻳﻪي ‪C‬‬
‫‪3‬‬
‫ﺑﺮﻧﺎﻣﻪ ﻧﻮﻳﺴﻲ ﺑﻪ زﺑﺎن ﭘﺎﺳﻜﺎل ‪ -‬ﮔﺮوه ‪5‬‬
‫ﻧﻤﻮﻧﻪ ﺳﻮال ﺑﺮﻧﺎﻣﻪﻧﻮﻳﺴﻲ‬
‫ﺣﺎﺻﻞ ﻧﻴﺰ ﺑﻪ ﺗﺮﺗﻴﺐ ﺻﻌﻮدي ﻗﺮار ﮔﺮﻓﺘﻪ ﺑﺎﺷﻨﺪ‪ .‬اﻳﻦ زﻳﺮﺑﺮﻧﺎﻣﻪ ﺑﺎﻳﺪ آراﻳﻪي ‪ C‬را ﺑﻪ ﻋﻨﻮان ﻧﺘﻴﺠﻪ ﺑﺮﮔﺮداﻧﺪ‪ .‬ﻟﺰوﻣﻲ‬
‫ﻧﺪارد ﻛﻪ ﻃﻮل دو آراﻳﻪ ‪ A‬و ‪ B‬ﺑﺎ ﻫﻢ ﻣﺴﺎوي ﺑﺎﺷﺪ‪.‬‬
‫‪Input:‬‬
‫‪Input Array A:‬‬
‫‪-80 -14.3 2.5 2.5 37.2‬‬
‫‪Input Array B:‬‬
‫‪0 25.9 40‬‬
‫‪Output:‬‬
‫‪-80 -14.3 0 2.5 2.5 25.9 37.2 40‬‬
‫‪ .10‬زﻳﺮﺑﺮﻧﺎﻣﻪاي ﺑﺮاي ﻣﺮﺗﺐ ﻧﻤﻮدن ﻳﻚ آراﻳﻪي ‪ N‬ﺗﺎﻳﻲ )ﻛﻪ ‪ N‬ﺣﺪاﻛﺜﺮ ‪ 100‬اﺳﺖ( ﺑﻪ روش ﻣﺮﺗﺐﺳﺎزي درﺟﻲ‬
‫)‪ (Insertion Sort‬ﺑﻨﻮﻳﺴﻴﺪ‪ .‬ﻣﺮﺗﺐﺳﺎزي درﺟﻲ ﺑﻪ اﻳﻦ ﺻﻮرت اﺳﺖ ﻛﻪ در آن ﻓﺮض ﻣﻲﻛﻨﻴﻢ ﻛﻪ آراﻳﻪ ﺗﺸﻜﻴﻞ‬
‫ﺷﺪه از ﻋﻨﺎﺻﺮ در ﻫﺮ ﻣﺮﺣﻠﻪ‪ ,‬ﻣﺮﺗﺐ اﺳﺖ و ﺣﺎﻻ ﻫﺮ ﻋﻨﺼﺮ ﺟﺪﻳﺪي را ﻛﻪ وارد ﻣﻲﺷﻮد‪ ,‬در ﻣﻜﺎن ﻣﻨﺎﺳﺒﺶ درج‬
‫ﻣﻲﻛﻨﻴﻢ ﺗﺎ آراﻳﻪ ﻣﺮﺗﺐ ﺷﺪه ﺑﺎﻗﻲ ﺑﻤﺎﻧﺪ‪ .‬ﺑﺮاي ﻣﺜﺎل ﻓﺮض ﻛﻨﻴﺪ ﻛﻪ ﻣﻲﺧﻮاﻫﻴﻢ ﻟﻴﺴﺖ ﺷﺎﻣﻞ اﻋﺪاد }‪,9 , -3 ,12‬‬
‫‪ {50 ,2‬را از ﻛﻮﭼﻚ ﺑﻪ ﺑﺰرگ ﻣﺮﺗﺐ ﻛﻨﻴﻢ‪ .‬در اﺑﺘﺪا ﻓﺮض ﻣﻲﻛﻨﻴﻢ ﻛﻪ آراﻳﻪ ﻣﺮﺗﺐ ﺷﺪه ﻳﻚ ﻋﻀﻮي و ﻓﻘﻂ‬
‫داراي ﻋﺪد }‪ {50‬اﺳﺖ‪ .‬ﺣﺎﻻ ﻣﻲﺧﻮاﻫﻴﻢ ﻋﺪد ‪ 2‬را وارد آراﻳﻪ ﻓﻌﻠﻲ ﻛﻨﻴﻢ‪ .‬ﭼﻮن ﻋﺪد ‪ 2‬از ‪ 50‬ﻛﻮﭼﻜﺘﺮ اﺳﺖ‪ ,‬ﻗﺒﻞ‬
‫از آن ﻗﺮار ﻣﻲﮔﻴﺮد و آراﻳﻪ ﻣﺮﺗﺐ ﺷﺪه ﺑﻪ ﺻﻮرت }‪ {2 ,50‬در ﻣﻲآﻳﺪ‪ .‬ﺑﺮاي وارد ﻛﺮدن ﻋﺪد ‪ ,9‬اﺑﺘﺪا آن را ﺑﺎ ‪2‬‬
‫ﻣﻘﺎﻳﺴﻪ ﻣﻲﻛﻨﻴﻢ‪ ,‬ﭼﻮن از ‪ 2‬ﺑﺰرﮔﺘﺮ اﺳﺖ‪ ,‬ﭘﺲ آن را ﺑﺎ ﻋﻨﺼﺮ ﺑﻌﺪي ﻳﻌﻨﻲ ‪ 50‬ﻣﻘﺎﻳﺴﻪ ﻣﻲﻛﻨﻴﻢ ﻛﻪ ﭼﻮن از آن‬
‫ﻛﻮﭼﻜﺘﺮ اﺳﺖ‪ ,‬ﭘﺲ ﺑﻴﻦ ‪ 2‬و ‪ 50‬ﻗﺮار ﻣﻲﮔﻴﺮد‪ .{2 ,9 ,50}:‬ﻋﺪد ‪ , -3‬در اﺑﺘﺪاي آراﻳﻪ ﻣﺮﺗﺐ ﺷﺪه وارد ﻣﻲﺷﻮد‪,‬‬
‫ﭼﻮن از ‪ 2‬ﻛﻪ اوﻟﻴﻦ ﻋﻨﺼﺮ آراﻳﻪ اﺳﺖ‪ ,‬ﻛﻮﭼﻜﺘﺮ اﺳﺖ و ﻋﺪد ‪ 12‬ﺑﻪ دﻟﻴﻞ اﻳﻨﻜﻪ از ‪ 50‬ﻛﻮﭼﻜﺘﺮ اﺳﺖ‪ ,‬ﻗﺒﻞ از آن و‬
‫ﺑﻴﻦ ‪ 9‬و ‪ 50‬در آراﻳﻪ ﻣﺮﺗﺐ ﺷﺪه وارد ﻣﻲﺷﻮد و در ﻧﻬﺎﻳﺖ آراﻳﻪ ﻧﻬﺎﻳﻲ ﺑﻪ ﺻﻮرت }‪ {-3 ,2 ,9 ,12 ,50‬در‬
‫ﻣﻲآﻳﺪ‪.‬‬
‫‪4‬‬
‫ﺑﺮﻧﺎﻣﻪ ﻧﻮﻳﺴﻲ ﺑﻪ زﺑﺎن ﭘﺎﺳﻜﺎل ‪ -‬ﮔﺮوه ‪5‬‬
‫ﻧﻤﻮﻧﻪ ﺳﻮال ﺑﺮﻧﺎﻣﻪﻧﻮﻳﺴﻲ‬
‫‪ .11‬زﻳﺮﺑﺮﻧﺎﻣﻪاي ﺑﺮاي ﻣﺮﺗﺐ ﻧﻤﻮدن ﻳﻚ آراﻳﻪي ‪ N‬ﺗﺎﻳﻲ )ﻛﻪ ‪ N‬ﺣﺪاﻛﺜﺮ ‪ 100‬اﺳﺖ( ﺑﻪ روش ﻣﺮﺗﺐﺳﺎزي ﺣﺒﺎﺑﻲ‬
‫)‪ (Bubble Sort‬ﺑﻨﻮﻳﺴﻴﺪ‪ .‬در ﻣﺮﺗﺐﺳﺎزي ﺣﺒﺎﺑﻲ‪ ,‬ﻫﻤﺎنﻃﻮري ﻛﻪ از اﺳﻤﺶ ﭘﻴﺪاﺳﺖ‪ ,‬ﻋﻨﺎﺻﺮﻛﻮﭼﻜﺘﺮ ﻣﺎﻧﻨﺪ‬
‫ﺣﺒﺎﺑﻲ ﻛﻪ ﺑﻪ دﻟﻴﻞ ﺳﺒﻜﻲ از ﻛﻒ ﺑﻪ ﺳﻤﺖ ﺳﻄﺢ آب ﺣﺮﻛﺖ ﻣﻲﻛﻨﺪ‪ ,‬ﺑﻪ ﺳﻤﺖ اﺑﺘﺪاي آراﻳﻪ ﺣﺮﻛﺖ ﻣﻲﻛﻨﻨﺪ‪ .‬ﺑﻪ‬
‫اﻳﻦ ﺻﻮرت ﻛﻪ ﻋﺪد اﻧﺘﻬﺎﻳﻲ آراﻳﻪ را در ﻧﻈﺮ ﻣﻲﮔﻴﺮﻳﻢ و آن را ﺑﺎ ﻋﺪد ﻗﺒﻠﻴﺶ در آراﻳﻪ ﻣﻘﺎﻳﺴﻪ ﻣﻲﻛﻨﻴﻢ‪ ,‬اﮔﺮ‬
‫ﻛﻮﭼﻜﺘﺮ از ﻋﺪد ﻗﺒﻠﻴﺶ اﺳﺖ‪ ,‬ﺟﺎي دو ﻋﺪد را ﺑﺎ ﻫﻢ ﻋﻮض ﻣﻲﻛﻨﻴﻢ ﺗﺎ ﻋﺪد ﻛﻮﭼﻜﺘﺮ ﺑﻪ ﺳﻤﺖ اﺑﺘﺪاي آراﻳﻪ‬
‫ﺣﺮﻛﺖ ﻛﻨﺪ و ﺑﻪ آن ﻧﺰدﻳﻚﺗﺮ ﺷﻮد و ﻫﻤﻴﻦ روﻧﺪ را ﺗﺎ رﺳﻴﺪن ﺑﻪ اﺑﺘﺪاي آراﻳﻪ اداﻣﻪ ﻣﻲدﻫﻴﻢ‪ .‬ﺑﻪ اﻳﻦ ﺗﺮﺗﻴﺐ‪,‬‬
‫وﻗﺘﻲ ﺑﻪ اﺑﺘﺪاي آراﻳﻪ ﻣﻲرﺳﻴﻢ‪ ,‬ﻛﻮﭼﻜﺘﺮﻳﻦ ﻋﺪد ﻣﻮﺟﻮد در آراﻳﻪ ﺑﻪ اﺑﺘﺪاي آن ﻣﻨﺘﻘﻞ ﺷﺪه اﺳﺖ‪ .‬ﺣﺎﻻ ﺑﺮاي‬
‫ﻋﺪدي ﻛﻪ در آراﻳﻪ ﺟﺪﻳﺪ در اﻧﺘﻬﺎي آن ﻗﺮار ﮔﺮﻓﺘﻪ اﺳﺖ‪ ,‬ﻛﺎر را ﺑﻪ ﺻﻮرت ﻣﺸﺎﺑﻪ اداﻣﻪ ﻣﻲدﻫﻴﻢ و ﺑﺎ رﺳﻴﺪن ﺑﻪ‬
‫ﻣﻜﺎن دوم در آراﻳﻪ‪ ,‬دوﻣﻴﻦ ﻛﻮﭼﻜﺘﺮﻳﻦ ﻋﺪد در ﻣﻜﺎن ﺧﻮدش ﻗﺮار ﻣﻲﮔﻴﺮد )در اﻳﻦ ﺣﺎﻟﺖ‪ ,‬ﻣﻲداﻧﻴﻢ ﻛﻪ ﻣﻄﻤﺌﻨﺎ‬
‫ﻋﺪد اول آراﻳﻪ از ﻋﺪد ﻫﻤﻪ ﻛﻮﭼﻜﺘﺮ اﺳﺖ و ﻧﻴﺎزي ﺑﻪ ﻣﻘﺎﻳﺴﻪ ﻣﻜﺎن دوم ﺑﺎ ﻣﻜﺎن اول ﻧﻴﺴﺖ( و ‪ . ...‬ﻣﺜﺎل زﻳﺮ روﻧﺪ‬
‫اﻳﻦ روش را ﻧﻤﺎﻳﺶ ﻣﻲدﻫﺪ‪ .‬در ﻫﺮ ﻣﺮﺣﻠﻪ اﻋﺪادي ﻛﻪ ﺑﺎ ﻫﻢ ﻣﻘﺎﻳﺴﻪ ﺷﺪهاﻧﺪ‪ ,‬ﺑﺎ رﻧﮓ ﻗﺮﻣﺰ و ﺑﻪ ﺻﻮرت ‪bold‬‬
‫ﻣﺸﺨﺺ ﺷﺪهاﻧﺪ‪.‬‬
‫‪-3 -3‬‬
‫‪-3 -3‬‬
‫‪-3‬‬
‫‪-3 -3‬‬
‫‪-3‬‬
‫‪-3‬‬
‫‪50 -3‬‬
‫‪50‬‬
‫‪-3‬‬
‫‪12‬‬
‫ﺟﺎﺑﺠﺎﻳﻲ‬
‫ﺟﺎﺑﺠﺎﻳﻲ‬
‫‪50‬‬
‫‪12‬‬
‫‪12‬‬
‫‪12‬‬
‫‪12‬‬
‫‪12‬‬
‫‪12‬‬
‫‪12‬‬
‫‪12‬‬
‫‪12‬‬
‫‪12‬‬
‫‪12‬‬
‫‪12‬‬
‫ﺟﺎﺑﺠﺎﻳﻲ‬
‫‪12‬‬
‫‪50‬‬
‫‪50‬‬
‫‪9‬‬
‫‪9‬‬
‫‪9‬‬
‫‪9‬‬
‫‪9‬‬
‫‪9‬‬
‫‪9‬‬
‫‪9‬‬
‫‪9‬‬
‫‪-3‬‬
‫ﺟﺎﺑﺠﺎﻳﻲ‬
‫‪9‬‬
‫‪9‬‬
‫‪9‬‬
‫‪50‬‬
‫‪50‬‬
‫‪50‬‬
‫‪2‬‬
‫‪2‬‬
‫‪2‬‬
‫‪2‬‬
‫‪2‬‬
‫‪-3‬‬
‫ﺟﺎﺑﺠﺎﻳﻲ‬
‫‪9‬‬
‫‪9‬‬
‫‪2‬‬
‫‪2‬‬
‫‪2‬‬
‫‪2‬‬
‫‪2‬‬
‫‪2‬‬
‫‪50‬‬
‫‪50‬‬
‫‪50‬‬
‫‪50‬‬
‫‪2 -3‬‬
‫ﺟﺎﺑﺠﺎﻳﻲ‬
‫‪2‬‬
‫‪2‬‬
‫ﺟﺎﺑﺠﺎﻳﻲ‬
‫‪50‬‬
‫‪50‬‬
‫‪5‬‬