ﻣﺒﺎﻧﯽ ﺑﺮﻧﺎﻣﻪﺳﺎزی )(۴۰-۱۵۳) (C/C++ )Introduction to Programming (C/C++ ﻣﺪرس :ﺷﺮوﻳﻦ داﻧﺶﭘﮋوه داﻧﺸﮑﺪهی ﻣﻬﻨﺪﺳﯽ ﮐﺎﻣﭙﻴﻮﺗﺮ ﻣﻮﻋﺪ ﻮﻳﻞ :ﺳﺎﻋﺖ ،۱۵:۳۰روز ﻳﮑﺸﻨﺒﻪ ۱۳۹۰/۹/۲۷ $%ﺮﻳﻦ ! ﺎره ٣ (ﻮه ارﺳﺎل ﻛﺪ ﻣﺮﺑﻮط ﺑﻪ ﻫﺮ ﺗﻤﺮﻳﻦ را در ﻳﻚ ﻓﺎﻳﻞ ﺑﻪ ﺻﻮرت HWxx.cppﻗﺮار دﻫﻴﺪ ﻛﻪ xxﺷﻤﺎره آن ﺗﻤﺮﻳﻦ ﻣﻲ ﺑﺎﺷﺪ .ﻣﺜﻼ ﻛﺪ ﺗﻤﺮﻳﻦ اول در ﻓﺎﻳﻠﻲ ﺑﻪ ﻧﺎم HW01.cppﻗﺮار ﻣﻲ ﮔﻴﺮد ،ﺳﭙﺲ ﺗﻤﺎﻣﻲ ﻛﺪﻫﺎي ﺧﻮد را ﻛﻨﺎر ﻫﻢ ﻗﺮار داده و آن ﻫﺎ را zipﻧﻤﺎﻳﻴﺪ و اﺳﻢ ﻓﺎﻳﻞ زﻳﭗ را ﺑﻪ ﺻﻮرت HW3_STDID.zipﻗﺮار دﻫﻴﺪ ،ﻛﻪ STDIDﺷﻤﺎره داﻧﺸﺠﻮﻳﻲ ﺷﻤﺎﺳﺖ ﻣﺜﻞ HW3_8912345.zipو آنرا در ﻣﻮﻋﺪ ﻣﻘﺮر ﺑﻪ آدرس اﻳﻤﻴﻞ [email protected]ارﺳﺎل ﻧﻤﺎﻳﻴﺪ. ﺗﻮﺟﻪ :1ﺑﻪ ﺗﻤﺮﻳﻨﺎﺗﻲ ﻛﻪ ﺑﻪ ﺻﻮرت ﻛﺎﻏﺬي ﺗﺤﻮﻳﻞ ﺷﻮﻧﺪ ،ﻳﺎ اﺳﻜﻦ ﺷﻮﻧﺪ ،ﻧﻤﺮهاي ﺗﻌﻠﻖ ﻧﺨﻮاﻫﺪ ﮔﺮﻓﺖ .ﺑﺮﻧﺎﻣﻪﻫﺎ ﺑﺎﻳﺪ در ﻓﺮﻣﺖ ﻓﺎﻳﻞ cppﻧﻮﺷﺘﻪ ﺷﺪه و ﺑﺎ ﻳﻚ ﻛﺎﻣﭙﺎﻳﻠﺮ C/C++ﺗﺴﺖ و اﺟﺮا ﺷﺪه ﺑﺎﺷﻨﺪ. ﺗﻮﺟﻪ :2از ارﺳﺎل ﻓﺎﻳﻞ اﺟﺮاﻳﻲ ) (.exeﺑﻪ ﻫﻤﺮاه ﺳﻮرس ،ﺧﻮدداري ﻛﻨﻴﺪ .ﺳﻴﺴﺘﻢ gmailو اﻛﺜﺮ ﺳﺮوﻳﺲﻫﺎي اﻳﻤﻴﻞ از درﻳﺎﻓﺖ ﻓﺎﻳﻞ اﺟﺮاﻳﻲ )ﺣﺘﻲ اﮔﺮ در داﺧﻞ ﻓﺎﻳﻞ .zipﺑﺎﺷﻨﺪ( ﺧﻮدداري ﻣﻲﻛﻨﺪ .ﺑﻨﺎﺑﺮاﻳﻦ ﻣﺴﺌﻮﻟﻴﺖ ﻧﺮﺳﻴﺪن ﭼﻨﻴﻦ اﻳﻤﻴﻞﻫﺎﻳﻲ ﺑﻌﻬﺪه داﻧﺸﺠﻮ اﺳﺖ. ﺗﻮﺟﻪ :3از ارﺳﺎل ﺗﻤﺮﻳﻦﻫﺎ ﺑﻪ ﮔﺮوه درس ﺧﻮدداري ﻛﻨﻴﺪ! و ﺣﺘﻤﺎ ﺑﻪ ﻫﻨﮕﺎم وارد ﻧﻤﻮدن آدرس اﻳﻤﻴﻞ ﮔﻴﺮﻧﺪه )ﺑﺨﺼﻮص در (gmail دﻗﺖ ﻛﻨﻴﺪ ،ﺗﺎ اﺷﺘﺒﺎﻫﺎ آدرس ﮔﺮوه ﺑﻪ ﺟﺎي آدرس اﻳﻤﻴﻞ ﺗﻤﺮﻳﻦﻫﺎ وارد ﻧﺸﺪه ﺑﺎﺷﺪ. روش ارزﻳﺎ*) ارزﻳﺎﺑﻲ ﻋﻨﻮان * در زﻣﺎن ﻣﻘﺮر %100 ﺗﺎ 1روز ﭘﺲ از زﻣﺎن ﻣﻘﺮر * ﺑﻴﺶ از ﻳﻚ روز و ﺗﺎ 3روز ﭘﺲ از زﻣﺎن ﻣﻘﺮر *%30 ﺑﻴﺶ از ﺳﻪ روز و ﺗﺎ ﻳﻚ ﻫﻔﺘﻪ ﭘﺲ از زﻣﺎن ﻣﻘﺮر * %60 %20 * ﺑﻴﺶ از ﻳﻚ ﻫﻔﺘﻪ ﭘﺲ از زﻣﺎن ﻣﻘﺮر ﺗﻘﻠﺐ ،ﻛﭙﻲ ﺑﺮداري و ﻣﻮاردي از اﻳﻦ ﻗﺒﻴﻞ %0 )ﻧﻤﺮه ﻛﺎﻣﻞ ﺗﻤﺮﻳﻦ( * -1 *درﺻﺪﻫﺎي ﻓﻮق ﻧﺴﺒﺖ ﺑﻪ ﻧﻤﺮه ﻛﺴﺐ ﺷﺪهي ﺗﻤﺮﻳﻦ ﺗﻮﺳﻂ داﻧﺶﺟﻮ ﻣﻲﺑﺎﺷﺪ. ﺗﻮﺟﻪ :اﻳﻦ ﺗﻤﺮﻳﻦ داراي 100ﻧﻤﺮه ﺑﻮده و ﺷﺎﻣﻞ 4ﺳﺆال اﺳﺖ. ﺗﻮﺟﻪ :از ﺑﻴﻦ ﺳﺆالﻫﺎي 6 ،5و ،7دوﺗﺎ را ﺑﻪ دﻟﺨﻮاه اﻧﺘﺨﺎب و ﺣﻞ ﻧﻤﺎﻳﻴﺪ .ﺣﻞ ﺗﻤﺎﻣﻲ ﺳﺆالﻫﺎ ﻧﻤﺮهي اﺿﺎﻓﻲ ﻧﺪارد. ﻫﻤﭽﻨﻴﻦ در اﺳﻢﮔﺬاري ﻓﺎﻳﻞﻫﺎي ﺑﺮﻧﺎﻣﻪ ،ﺷﻤﺎرهي درﺳﺖ ﺳﺆال را )ﻫﻤﺎﻧﻄﻮر ﻛﻪ در ﺑﺎﻻ ﺗﻮﺿﻴﺢ داده ﺷﺪ( وارد ﻛﻨﻴﺪ. )(١ ﻣﺒﺎﻧﯽ ﺑﺮﻧﺎﻣﻪﺳﺎزی )(۴۰-۱۵۳) (C/C++ )Introduction to Programming (C/C++ ﻣﺪرس :ﺷﺮوﻳﻦ داﻧﺶﭘﮋوه داﻧﺸﮑﺪهی ﻣﻬﻨﺪﺳﯽ ﮐﺎﻣﭙﻴﻮﺗﺮ ﻣﻮﻋﺪ ﻮﻳﻞ :ﺳﺎﻋﺖ ،۱۵:۳۰روز ﻳﮑﺸﻨﺒﻪ ۱۳۹۰/۹/۲۷ $%ﺮﻳﻦ ! ﺎره ٣ ﺗﺬﻛﺮ ﻣﻬﻢ :در ﺗﻤﺮﻳﻦﻫﺎي ﻗﺒﻠﻲ ﺗﻌﺪادي از داﻧﺸﺠﻮﻫﺎ ﻓﺮﻣﺖ درﺳﺖ ارﺳﺎل ﺑﺮﻧﺎﻣﻪﻫﺎ را رﻋﺎﻳﺖ ﻧﻜﺮده ﺑﻮدﻧﺪ ﻛﻪ ﺑـﻪ دﻻﻳﻠـﻲ ﻫﻤﭽـﻮن ﻧﺎآﺷﻨﺎﺑﻮدن آﻧﻬﺎ ﺑﺎ ﻣﺤﻴﻂﻫﺎي ﺑﺮﻧﺎﻣﻪﻧﻮﻳﺴﻲ از آن ﻣﻮارد ﭼﺸﻢﭘﻮﺷﻲ ﺷﺪه و ﺑﻪ ﺻﻮرت دﺳﺘﻲ ﺗﺼﺤﻴﺢ ﺷﺪﻧﺪ! اﻣﺎ ﺑﺎ ﺗﻮﺟـﻪ ﺑـﻪ ﺑـﺎﻻﺑﻮدن ﺗﻌﺪاد ﺑﺮﻧﺎﻣﻪﻫﺎ ﺑﺮاي ﺗﺼﺤﻴﺢ ،از اﻳﻦ ﭘﺲ در ﺻﻮرت ﻋﺪم رﻋﺎﻳﺖ ﻣﻮارد زﻳﺮ ،ﺣﺘﻲ در ﺻﻮرت درﺳﺖﺑﻮدن ﺑﺮﻧﺎﻣـﻪ ﺑـﻪ داﻧﺸـﺠﻮ ﻧﻤـﺮهاي ﺗﻌﻠﻖ ﻧﻤﻲﮔﻴﺮد: • اﺳﻢ ﻓﺎﻳﻞ zipﻫﻤﺎﻧﻄﻮر ﻛﻪ در ﺑﺎﻻ ﺗﻮﺿﻴﺢ داده ﺷﺪ ﺑﺎﻳﺪ ﺑﻪ ﻋﻨﻮان ﻣﺜﺎل ﺑﻪ ﻓﺮﻣﺖ HW3_86202228.zipﺗﻌﻴـﻴﻦ ﺷـﻮد .ﻫـﺮ ﻳﻚ از ﻣﻮارد زﻳﺮ اﺷﺘﺒﺎه اﺳﺖ: hw3_86202228.zip oﺣﺮوف ﻛﻮﭼﻚ ﺑﺮاي :HW oﺧﻂ ﺗﻴﺮه ﺑﻪ ﺟﺎي HW3-86202228.zip :underline HW3.zip o ... 86202228.zip o • اﺳﺎﻣﻲ ﻓﺎﻳﻞﻫﺎي ﺗﻤﺮﻳﻦ ﻧﻴﺰ ﺑﺎﻳﺪ ﺑﺎ ﻓﺮﻣﺖ درﺳﺖ وارد ﺷﻮﻧﺪ .ﺑﻪ ﻋﻨﻮان ﻣﺜﺎل . PROG03.cpp :ﻣﻮارد زﻳﺮ ﺗﺼﺤﻴﺢ ﻧﻤﻲﺷﻮﻧﺪ: prog03.cpp o PROG3.cpp o PROG03.c o PROG_03.cpp o .... HW_03.cpp o • ورودي و ﺧﺮوﺟﻲ ﺑﺮﻧﺎﻣﻪﻫﺎ ﺑﺎﻳﺪ دﻗﻴﻘﺎً ﻫﻤﺎﻧﻄﻮر ﻛﻪ در ﺻﻮرت ﺳﺆال ﺗﻮﺿﻴﺢ داده ﺷﺪ ﺑﺎﺷﻨﺪ .ﻫﻴﭻ ﺧﺮوﺟﻲ اﺿـﺎﻓﻪاي ﻧﺒﺎﻳـﺪ ﭼـﺎپ ﺷﻮد .ﺑﺮاي ﺟﺪاﻛﺮدن دو ﻋﺪد ﭘﺸﺖ ﺳﺮ ﻫﻢ در ﺧﺮوﺟﻲ ،از ﻳﻚ ﻓﺎﺻﻪ ) (spaceاﺳﺘﻔﺎده ﻛﻨﻴـﺪ .ﺑـﺮاي ﭼـﺎپ ﺧﺮوﺟـﻲ در ﺳـﻄﺮ ﺟﺪاﮔﺎﻧﻪ از ﻳﻚ endlﻳﺎ \nاﺳﺘﻔﺎده ﻛﻨﻴﺪ .ﭼﺎپ ﻣﻮاردي ﻣﺎﻧﻨﺪ » «Enter a number:ﻳﺎ ﭼﺎپ دو \nاﺷﺘﺒﺎه اﺳﺖ. • ﭘﺲ از ﭼﺎپ ﺧﺮوﺟﻲ ﻣﻮرد ﻧﻈﺮ ﺑﺮﻧﺎﻣﻪ ﺑﺎﻳﺪ ﺗﻤﺎم ﺷﻮد .ﻫﺮ ﻳﻚ از ﻣﻮارد زﻳﺮ ﻣﻮﺟﺐ ﻏﻠﻂﺷﺪن ﺑﺮﻧﺎﻣﻪ ﺧﻮاﻫﺪ ﺷﺪ: oاﺳﺘﻔﺎده از getchو system pauseو ﻳﺎ cinدر اﻧﺘﻬﺎي ﺑﺮﻧﺎﻣﻪ )در ﺻﻮرت اﺳﺘﻔﺎده ،ﻗﺒﻞ از ارﺳﺎل ﺑﺮﻧﺎﻣﻪ آﻧﻬﺎ را ﭘﺎك ﻛﻨﻴﺪ و ﻳﺎ ﻛﺎﻣﻨﺖ ﻛﻨﻴﺪ(. oدرﻳﺎﻓﺖ ورودي ﺑﻌﺪي ﺑﺮاي اﺟﺮاي ﻣﺠﺪد • ﻛﺪ ﺑﺎﻳﺪ ﻛﺎﻣﭙﺎﻳﻞ ﺷﻮد و ﺧﻄﺎي ﻧﺤﻮي ) (syntaxﻧﺪاﺷﺘﻪ ﺑﺎﺷﺪ. • از ﻛﺘﺎﺑﺨﺎﻧﻪﻫﺎي ﻏﻴﺮاﺳﺘﺎﻧﺪارد ﻣﺎﻧﻨﺪ conio.hاﺳﺘﻔﺎده ﻧﻜﻨﻴﺪ. )(٢ ﻣﺒﺎﻧﯽ ﺑﺮﻧﺎﻣﻪﺳﺎزی )(۴۰-۱۵۳) (C/C++ )Introduction to Programming (C/C++ ﻣﺪرس :ﺷﺮوﻳﻦ داﻧﺶﭘﮋوه داﻧﺸﮑﺪهی ﻣﻬﻨﺪﺳﯽ ﮐﺎﻣﭙﻴﻮﺗﺮ ﻣﻮﻋﺪ ﻮﻳﻞ :ﺳﺎﻋﺖ ،۱۵:۳۰روز ﻳﮑﺸﻨﺒﻪ ۱۳۹۰/۹/۲۷ $%ﺮﻳﻦ ! ﺎره ٣ $%ﺮﯾﻦ اوّل -ا(ﺮاف ﻣﻌﯿﺎر )$4 ۱۵ﺮه(: ﺑﺮﻧﺎﻣﻪاي ﺑﻨﻮﻳﺴﻴﺪ ﻛﻪ اﺑﺘﺪا ﻋﺪد ﺻﺤﻴﺢ Nرا از ورودي درﻳﺎﻓﺖ ﻛﺮده ) (1 ≤ N ≤ 1000و ﺳﭙﺲ ﺑﺎ درﻳﺎﻓﺖ Nﻋﺪد ﺣﻘﻴﻘﻲ از ﻛﺎرﺑﺮ، اﻧﺤﺮاف ﻣﻌﻴﺎر آﻧﻬﺎ را ﻣﺤﺎﺳﺒﻪ و ﺗﺎ 5رﻗﻢ اﻋﺸﺎر در ﺧﺮوﺟﻲ ﭼﺎپ ﻛﻨﺪ. ﺗﺬﻛﺮ :اﻧﺤﺮاف ﻣﻌﻴﺎر Nﻋﺪد (i = 1 .. N) xiاز راﺑﻄﻪي زﻳﺮ ﺑﻪ دﺳﺖ ﻣﻲآﻳﺪ: ࣌ ൌ ඩ ሺ࢞ െ ࣆሻ ࡺ ࡺ ୀ ﻛﻪ در آن ،µﻣﻴﺎﻧﮕﻴﻦ Nﻋﺪد اﺳﺖ: ࢞ ࣆ ൌ ࡺ ࡺ ୀ ﺑﺮاي ﻣﺤﺎﺳﺒﻪ ﺟﺬر ﻣﻲﺗﻮاﻧﻴﺪ از ﺗﻮاﺑﻊ ﻛﺘﺎﺑﺨﺎﻧﻪاي اﺳﺘﻔﺎده ﻧﻤﺎﻳﻴﺪ. ﻣﺜﺎل ﺧﺮوﺟﻲ ﻣﺜﺎل ورودي 1.81945 5 5.3 2 3 0 1 $%ﺮﯾﻦ دوم -ﻣﻌﮑﻮس دﻧﺒﺎﻟﻪ)$4 ۱۵ﺮه(: ﺑﺮﻧﺎﻣﻪاي ﺑﻨﻮﻳﺴﻴﺪ ﻛﻪ ﺗﻌﺪاد اﻋﺪاد ﻳﻚ دﻧﺒﺎﻟﻪ ) (nو ﺗﻤﺎم اﻋﺪاد آن را از ورودي ﺧﻮاﻧﺪه ،ﺑﻴﻦ ﻫﺮ دو ﻋﻨﺼﺮ دﻧﺒﺎﻟﻪ ﻣﻴﺎﻧﮕﻴﻦ آن دو ﻋﻨﺼﺮ را ﺑﻪ دﻧﺒﺎﻟﻪ اﺿﺎﻓﻪ ﻛﻨﺪ .ﺳﭙﺲ ﺗﺮﺗﻴﺐ اﻋﺪاد دﻧﺒﺎﻟﻪ را ﻣﻌﻜﻮس ﻛﺮده و در ﻧﻬﺎﻳﺖ ﺧﺮوﺟﻲ ﭼﺎپ ﻛﻨﺪ. ﻫﻤﻪي اﻋﺪاد ورودي ﺻﺤﻴﺢ ﻫﺴﺘﻨﺪ و 1 ݊ 10000 ﻣﺜﺎل ﺧﺮوﺟﻲ ﻣﺜﺎل ورودي 5 3 0 2 5 1 ﻣﺜﺎل ورودي 1 3 5 3.5 2 1 0 1.5 3 ﻣﺜﺎل ﺧﺮوﺟﻲ 4 2 2 2 2 )(٣ 2 2 2 2 2 2 2 ﻣﺒﺎﻧﯽ ﺑﺮﻧﺎﻣﻪﺳﺎزی )(۴۰-۱۵۳) (C/C++ )Introduction to Programming (C/C++ ﻣﺪرس :ﺷﺮوﻳﻦ داﻧﺶﭘﮋوه داﻧﺸﮑﺪهی ﻣﻬﻨﺪﺳﯽ ﮐﺎﻣﭙﻴﻮﺗﺮ ﻣﻮﻋﺪ ﻮﻳﻞ :ﺳﺎﻋﺖ ،۱۵:۳۰روز ﻳﮑﺸﻨﺒﻪ ۱۳۹۰/۹/۲۷ $%ﺮﻳﻦ ! ﺎره ٣ $%ﺮﯾﻦ ﺳﻮم -ﺿﺮب ﻣﺎﺗﺮﯾﺲﻫﺎ )$4 ۱۵ﺮه(: ﻣﺎﺗﺮﻳﺲ ݉ ൈ ݊ ،Aو ﻣﺎﺗﺮﻳﺲ ݊ ൈ ݇ ،Bاﺳﺖ( را از ورودي درﻳﺎﻓﺖ ﻛﻨﺪ .ﺳﭙﺲ ﺣﺎﺻﻞﺿﺮب اﻳﻦ دو ﻣﺎﺗﺮﻳﺲ )ﻛﻪ ݇ ݉ ൈ ﺑﺮﻧﺎﻣﻪاي ﺑﻨﻮﻳﺴﻴﺪ ﻛﻪ اﺑﺘﺪا 3ﻋﺪد ﺻﺤﻴﺢ ،n ،mو pرا از ورودي درﻳﺎﻓﺖ ﻛﺮده و ﺳﭙﺲ ﻣﻘﺎدﻳﺮ »ﺻﺤﻴﺢ« دو ﻣﺎﺗﺮﻳﺲ Aو ) Bﻛﻪ ﻣﻲﺷﻮد( را در ﺧﺮوﺟﻲ ﭼﺎپ ﻧﻤﺎﻳﺪ ﺑﻪ ﻃﻮري ﻛﻪ ﻫﺮ ﺳﻄﺮ ﻣﺎﺗﺮﻳﺲ در ﻳﻚ ﺧﻂ ﺟﺪاﮔﺎﻧﻪ ﭼﺎپ ﺷﻮد. ﻣﺜﺎل ﺧﺮوﺟﻲ ﻣﺜﺎل ورودي 4 2 6 2 3 3 4 1 3 6 3 2 23 51 8 32 2 1 0 2 1 0 5 $%ﺮﯾﻦ ﭼﻬﺎرم -ﻣﺎﺗﺮﯾﺲ ﭼﺮﺧﺎن )$4 ۱۵ﺮه(: ﺑﺮﻧﺎﻣﻪاي ﺑﻨﻮﻳﺴﻴﺪ ﻛﻪ اﺑﺘﺪا دو ﻋﺪد ݊ و ݉ را از ورودي ﺑﺨﻮاﻧﺪ ،ﺳﭙﺲ ﻳﻚ ﻣﺎﺗﺮﻳﺲ ݉ ݊ ൈﺑﻪ ﻧﺎم ܣ را در اداﻣﻪ ورودي ﺑﮕﻴﺮد .ﭘﺲ از ﺧﻮاﻧﺪن ورودي ،ﺑﺮﻧﺎﻣﻪ ﺷﻤﺎ ﺑﺎﻳﺪ ﻣﺎﺗﺮﻳﺲ ﺟﺪﻳﺪي ﺑﻪ ﻧﺎم ܤ ﻛﻪ اﻧﺪازهي݉ ݊ ൈرا از روي ﻣﺎﺗﺮﻳﺲ ܣ ﺑﺴﺎزد .ﻫﺮ ﺳﻄﺮ ﻣﺎﺗﺮﻳﺲ B ﺷﺎﻣﻞ ﻫﻤﺎن اﻋﺪاد ﻣﺎﺗﺮﻳﺲ Aﺑﺎ اﻳﻦ ﺗﻔﺎوت ﻛﻪ ﺑﻪ اﻧﺪازهي ﺷﻤﺎرهي ﺳﻄﺮ ﺟﺎﺑﺠﺎ ﺷﺪه اﺳﺖ .ﻳﻌﻨﻲ ﺳﻄﺮ ﺳﻮم ﻣﺎﺗﺮﻳﺲ ،ﺳﻪ ﻋﺪد ﺟﺎﺑﺠﺎ ﺳﻮم ﻗﺮار ﮔﺮﻓﺘﻪ .در اﻧﺘﻬﺎ ﺑﺮﻧﺎﻣﻪ ﺷﻤﺎ ﺑﺎﻳﺪ ﻣﺎﺗﺮﻳﺲ ܤ را در ﺧﺮوﺟﻲ ﺑﻨﻮﻳﺴﺪ .ﻓﺮض ﻛﻨﻴﺪ ﻣﺎﺗﺮﻳﺲ ورودي ﺣﺪاﻛﺜﺮ 100×100اﺳﺖ. ﺷﺪه اﺳﺖ .ﻳﻌﻨﻲ ﻋﺪد ﺳﺘﻮن اول اﻳﻦ ﺳﻄﺮ در ﻣﺎﺗﺮﻳﺲ Bدر ﺳﺘﻮن ﭼﻬﺎرم ﻗﺮار ﮔﺮﻓﺘﻪ و ﻋﺪد آﺧﺮ اﻳﻦ ﺳﻄﺮ در ﻣﺎﺗﺮﻳﺲ Bدر ﺳﺘﻮن ﻣﺜﺎل ﺧﺮوﺟﻲ ﻣﺜﺎل ورودي 4 6 2 0 3 4 5 2 1 0 3 1 0 9 0 1 6 2 4 5 0 3 2 1 0 9 $%ﺮﯾﻦ ﭘﻨﺠﻢ -ﻣﺜﻠﺚ ﺧﯿﺎم-ﭘﺎﺳﮑﺎل )$4 ۲۰ﺮه(: ﺑﺮﻧﺎﻣﻪ اي ﺑﻨﻮﻳﺴﻴﺪ ﻛﻪ اﺑﺘﺪا ﻋﺪد nرا از ورودي ﺑﺨﻮاﻧﺪ ) (1 ≤ n ≤ 10و ﺳﭙﺲ n+1ﺳﻄﺮ از ﻣﺜﻠﺚ ﺧﻴﺎم-ﭘﺎﺳﻜﺎل را در ﺧﺮوﺟﻲ ﭼﺎپ ﻛﻨﺪ. راﻫﻨﻤﺎﻳﻲ :ﺑﺮاي اﻳﻨﻜﺎر از ﻳﻚ آراﻳﻪ اﺳﺘﻔﺎده ﻛﻨﻴﺪ .ﺑﺎ ﻓﺮض ،n = 4ﻣﺮاﺣﻞ ﻛﺎر ﺑﻪ ﺻﻮرت زﻳﺮ اﺳﺖ: )(٤ ﻣﺒﺎﻧﯽ ﺑﺮﻧﺎﻣﻪﺳﺎزی )(۴۰-۱۵۳) (C/C++ )Introduction to Programming (C/C++ ﻣﺪرس :ﺷﺮوﻳﻦ داﻧﺶﭘﮋوه داﻧﺸﮑﺪهی ﻣﻬﻨﺪﺳﯽ ﮐﺎﻣﭙﻴﻮﺗﺮ ﻣﻮﻋﺪ ﻮﻳﻞ :ﺳﺎﻋﺖ ،۱۵:۳۰روز ﻳﮑﺸﻨﺒﻪ ۱۳۹۰/۹/۲۷ $%ﺮﻳﻦ ! ﺎره ٣ وﺿﻌﻴﺖ اﺑﺘﺪاﻳﻲ آراﻳﻪ: 1 وﺿﻌﻴﺖ آراﻳﻪ ﭘﺲ از ﻣﺮﺣﻠﻪي اول: 1 1 1 2 1 1 3 3 1 4 6 4 1 وﺿﻌﻴﺖ آراﻳﻪ ﭘﺲ از ﻣﺮﺣﻠﻪي دوم: وﺿﻌﻴﺖ آراﻳﻪ ﭘﺲ از ﻣﺮﺣﻠﻪي ﺳﻮم: وﺿﻌﻴﺖ آراﻳﻪ ﭘﺲ از ﻣﺮﺣﻠﻪي ﭼﻬﺎرم: 1 ﻣﺜﺎل ﺧﺮوﺟﻲ ﻣﺜﺎل ورودي 5 1 3 1 6 4 1 10 10 5 1 1 2 3 4 5 1 1 1 1 1 1 $%ﺮﯾﻦ ﺷﺸﻢ -ﺣﺬف ﮔﺎوﺳﯽ )$4 ۲۰ﺮه(: ﺑﺮﻧﺎﻣﻪاي ﺑﻨﻮﻳﺴﻴﺪ ﻛﻪ اﺑﺘﺪا ﻋﺪد nرا از ورودي ﺑﺨﻮاﻧﺪ و ﺳﭙﺲ ﺑﺎ درﻳﺎﻓﺖ ﺿﺮاﻳﺐ دﺳﺘﮕﺎه nﻣﻌﺎدﻟﻪي nﻣﺠﻬﻮﻟﻲ ،آن دﺳﺘﮕﺎه را ﺑﻪ روش »ﺣﺬف ﮔﺎوﺳﻲ« 1ﺣﻞ ﻧﻤﺎﻳﺪ و ﭘﺎﺳﺦ دﺳﺘﮕﺎه را ﺑﺎ دﻗﺖ ﺳﻪ رﻗﻢ اﻋﺸﺎر در ﺧﺮوﺟﻲ ﭼﺎپ ﻧﻤﺎﻳﺪ. ﺑﻪ ﻋﻨﻮان ﻣﺜﺎل در ﺻﻮرﺗﻲ ﻛﻪ دﺳﺘﮕﺎه ﺑﻪ ﺻﻮرت زﻳﺮ ﺑﺎﺷﺪ: آﻧﮕﺎه ﻣﺎﺗﺮﻳﺲ ﻣﻌﺎدل آن در روش ﺣﺬف ﮔﺎوﺳﻲ ﺑﻪ ﺻﻮرت زﻳﺮ اﺳﺖ: ﻛﻪ ﭘﺲ از ﺣﻞ ﺑﻪ ﺷﻜﻞ ﻧﻬﺎﻳﻲ زﻳﺮ در ﻣﻲآﻳﺪ: http://en.wikipedia.org/wiki/Gaussian_elimination )(٥ 1 ﻣﺒﺎﻧﯽ ﺑﺮﻧﺎﻣﻪﺳﺎزی )(۴۰-۱۵۳) (C/C++ )Introduction to Programming (C/C++ ﻣﺪرس :ﺷﺮوﻳﻦ داﻧﺶﭘﮋوه داﻧﺸﮑﺪهی ﻣﻬﻨﺪﺳﯽ ﮐﺎﻣﭙﻴﻮﺗﺮ ﻣﻮﻋﺪ ﻮﻳﻞ :ﺳﺎﻋﺖ ،۱۵:۳۰روز ﻳﮑﺸﻨﺒﻪ ۱۳۹۰/۹/۲۷ $%ﺮﻳﻦ ! ﺎره ٣ و در ﻧﻬﺎﻳﺖ ﻣﻘﺎدﻳﺮ ،y ،xو ، zﻳﻌﻨﻲ ،3 ،2و -1از روي ﻣﺎﺗﺮﻳﺲ آﺧﺮ ﻣﺤﺎﺳﺒﻪ و ﭼﺎپ ﻣﻲﺷﻮد. ﺗﺬﻛﺮ :ﻓﺮض ﻛﻨﻴﺪ دﺳﺘﮕﺎه داراي ﻳﻚ ﭘﺎﺳﺦ ﻣﻨﺤﺼﺮ ﺑﻪ ﻓﺮد اﺳﺖ و ﻫﻤﭽﻨﻴﻦ ﺿﺮاﻳﺐ ﻗﻄﺮ اﺻﻠﻲ ﺻﻔﺮ ﻧﻴﺴﺘﻨﺪ) .ﺑﻨﺎﺑﺮاﻳﻦ ﻧﻴﺎزي ﺑﻪ ﺟﺎﺑﺠﺎﻳﻲ ﺳﻄﺮﻫﺎ ﻧﺪارﻳﺪ(. ﻣﺜﺎل ﺧﺮوﺟﻲ ﻣﺜﺎل ورودي 2.000 3.000 -1.000 3 2 1 -1 8 -3 -1 -2 -11 -2 1 2 -3 $%ﺮﯾﻦ ﻫﻔﺘﻢ -ﺿﺮب دو ﻋﺪد ﺻﺤﯿﺢ ﺧﯿﻠﯽ ﺑﺰرگ )$4 ۲۰ﺮه(: ﺑﺮﻧﺎﻣﻪاي ﺑﻨﻮﻳﺴﻴﺪ ﻛﻪ دو ﻋﺪد ﺻﺤﻴﺢ و ﻣﺜﺒﺖ ﺧﻴﻠﻲ ﺑﺰرگ )ﺣﺪاﻛﺜﺮ 100رﻗﻤﻲ( را از ورودي ﺑﺨﻮاﻧﺪ و ﺣﺎﺻﻞﺿﺮب دو ﻋﺪد را در ﺧﺮوﺟﻲ ﭼﺎپ ﻛﻨﺪ! ﻫﺮ ﻋﺪد ورودي در ﻳﻚ ﺳﻄﺮ ﻧﻮﺷﺘﻪ ﺷﺪه و ﺑﻴﻦ ارﻗﺎم ﻓﺎﺻﻠﻪاي وﺟﻮد ﻧﺪارد .ﻋﺪد ﺧﺮوﺟﻲ را ﻧﻴﺰ ﺑﺪون ﻓﺎﺻﻠﻪ ﺑﻴﻦ ارﻗﺎم ﺑﻨﻮﻳﺴﻴﺪ. راﻫﻨﻤﺎﻳﻲ :ﻧﻮع ﻋﺪدي intﺣﺪاﻛﺜﺮ اﻋﺪاد 10رﻗﻤﻲ را ﻧﮕﻪ ﻣﻲدارﻧﺪ .ﺑﺮاي اﻳﻦ ﻣﺴﺌﻠﻪ ﺑﺎﻳﺪ ﺳﻌﻲ ﻛﻨﻴﺪ اﻋﺪاد ﺧﻴﻠﻲ ﺑﺰرگ را در آراﻳﻪ ﻧﮕﻪ داﺷﺘﻪ و ﺿﺮب ﻛﻨﻴﺪ. ﻣﺜﺎل ﺧﺮوﺟﻲ ﻣﺜﺎل ورودي 1234567890 9876543210 ﻣﺜﺎل ورودي 12193263111263526900 ﻣﺜﺎل ﺧﺮوﺟﻲ 984812647821649 782548261481274 770663425437601585370105300826 »ﻣﻮﻓﻖ ﺑﺎﺷﻴﺪ!« )(٦
© Copyright 2026 Paperzz