ثِ ًبم خذا سوشيي سشي دٍم ثشًبهِ ًَيسی دیطشفشِ هْلز اسسبل :يهضٌجِ 89/8/30سبػز 23:59 سَضیحبر لجل اص ضشٍع هَاسد صيش سا ثِ دلز ثخَاًیذ : دس خظ اٍل ّش يه اص ثشًبهِ ّب ضوبسُ داًطدَيی خَد سا ثِ غَسر صيش ثٌَيسیذ : // ID: your Student ID ثؼذ اص ًَضشي ّوِ ثشًبهِ ّب ،فبيل ّبي هشثَعِ سا دس يه دَضِ 1ثب ًبم assignment#2_stdIDلشاس دّیذ (وِ دس آى stdIDضوبسُ داًطدَيی ضوب هی ثبضذ ٍ ).سذس ايي دَضِ سا فطشدُ 2وٌیذ .فبيل فطشدُ ضذُ سا ثِ آدسس [email protected]اسسبل ًوبيیذ. ػٌَاى 3ايویل ثبيذ ثِ غَسر assignment#2_stdIDثبضذ ،وِ دس آى stdIDضوبسُ داًطدَيی ضوب هیثبضذ. اضشجبُ دس ًبم گزاسي فبيل ثشًبهِ ّب ٍ فبيل فطشدُ ضذُ ٍ يب ػٌَاى ايویل فشسشبدُ ضذُ ،هَخت ػذم سػحیح سوشيي ضوب هی ضَد. ًحَُ ٍسٍدي گشفشي ٍ خشٍخی دادى ثشًبهِ ّبي ضوب ثبيذ دلیمبً ثِ غَسر گفشِ ضذُ دس هسئلِ ثبضذ . ثِ ّش يه اص ثشًبهِ ّبي ضوب سؼذادي سسز دادُ خَاّذ ضذ .سَغیِ هی ضَد وِ حشوبً يه ثبس سسز ّبي ًوًَِ سا ثِ ثشًبهِّبيشبى ثذّیذ. .ثِ گزاضشي وبهٌز ثشاي لسوز ّبي هخشلف ثشًبهِ ّبيشبى ٍ ًبم گزاسي هٌبست هشغیشّب سا فشاهَش ًىٌیذ خغَظ سَاثغ ٍ هشغییش ّبي اغلی ثشًبهِ سبى .وبهٌز گزاسي خضٍ ًوشُ اي اص ّش سَال اسز . ثِ اصاي ّش سٍص سبخیش دس اسسبل ثشًبهِ ّب %20 ،اص ًوشُ ي ايي سوشيي وبسشِ خَاّذ ضذ . ثِ ثشًبهِّبي هطبثِ ثِ هیضاى ًوشُ سَالً ،وشُ هٌفی سؼلك خَاّذ گشفز . ثشاي سَاالر ً 2ٍ1یبصي ثِ فشسشبدى سبثغ ً mainیسز. ّ ش گًَِ سَال دس هَسد سوشيٌبر سا ثب ػٌَاى ] assignment#2_question[xوِ ] [xضوبسُ هسئلِ ي هَسد ًظش اسز ،ثِ آدسس [email protected]اسسبل وٌیذ. هَفك ثبضیذ. 1 Folder, Directory zip 3 Subject 2 نام فایل های برنامه: Student.h,Student.cpp,Course.h,Course.cpp دس ايي سوشيي لشاس اسز ثشًبهِ اي ثشاي اًدبم ػولیبر ًوشُ دّی يه دسس سا دیبدُ سبصي وٌیذ .ثشاي ايي هٌظَس دٍ والس Student ٍ Courseسا ثب هطخػبر صيش دیبدُ سبصي وٌیذ . والس Studentهطخػبر يه داًطدَ سا ًگِ هی داسد .فیلذّبي ايي والس ػجبسر اًذ اص : والس Courseاعالػبر هشثَط ثِ يه دسس دس يه سشم سا ًگِ هی داسد .ايي اعالػبر ضبهل هَاسد صيش اسز : .1ثشاي والس ّب Copy Constructor ٍ Destructor ، Constructorهٌبست ثٌَيسیذ .سَخِ وٌیذ وِ ًیبصي ثِ دیبدُ سبصي سبصًذُ ي دیص فشؼ ًیسز . .2ثشاي فیلذّبيی وِ الصم اسز ،سَاثغ دسششسی ( )getter & setterدیبدُ سبصي وٌیذ.دلز وٌیذ ثشاي ثشخی اص فیلذ ّب ًجبيذ سبثغ setterدیبدُ سبصي ضَد .ثشخی اص فیلذّب ّن اسبسب ًیبصي ثِ سَاثغ ً setter ٍ getterذاسًذ.سطخیع ايي هسئلِ (وِ ثِ ًَػی هیضاى دسن ضوب اص ضی گشايی سا ًطبى هی دّذ) ثخطی اص ًوشُ ي ايي سوشيي اسز . .3سبثؼی ثشاي اضبفِ وشدى يه حل سوشيي ثِ حل سوشيي ّبي دسس ثٌَيسیذ .سَخِ وٌیذ وِ يه داًطدَ ًجبيذ چٌذ ثبس ثِ ػٌَاى حل سوشيي اضبفِ ضَد .ثِ ػٌَاى خشٍخی اضبفِ ضذى ( )trueيب ًطذى()false حل سوشيي سا ثشگشداًیذ . ;)bool addTA(Student ta .4سبثؼی ثشاي اضبفِ وشدى يه داًطدَ ثِ داًطدَيبى دسس دیبدُ سبصي وٌیذ .سَخِ وٌیذ وِ يه داًطدَ ًجبيذ چٌذ ثبس اضبفِ ضَد .ثِ ػٌَاى خشٍخی اضبفِ ضذى ( )trueيب ًطذى( )falseداًطدَ سا ثشگشداًیذ.همذاس ًوشُ ي داًطدَ دس ٌّگبم اضبفِ ضذى ثشاثش 0اسز. ;)bool addStudent(Student student .5سَاثغ صيش سا دیبدُ سبصي وٌیذ : ;)Student getTAByStudentNumber(int studentNumber ;)Student getStudentByStudentNumber(int studentNumber ;)(double average ;)(double maximum ;)(double minimum ;)(int numberOfFailedStudents ;)(vector<Student> failedStudents نام فایل های برنامه: HugeInteger.h , HugeInteger.cpp والس HugeIntegerسا دیبدُ سبصي وٌیذ ثِ گًَِ اي وِ اص يه آسايِ ي 40سبيی ثشاي رخیشُ ي اػذاد integer 40سلوی اسشفبدُ وٌذ. سبثغ ّبي ػذدي modulus ٍ devide ٍ multiply ٍ subtract ،add ،output ،inputسا دیبدُ سبصي وٌیذ. ثشاي همبيسِ ي ّ objectبي هخشلف ايي والس سبثغ ّبي ،isNoEqualTo ،isEqualTo ٍ isGreaterThanOrEqualTo ،isLessThan ،isGreaterThan isLessThanOrEqualToسا دیبدُ سبصي وٌیذ .وِ return typeآى ّب اص ًَع boolاسز. ّوچٌیي سبثغ isZeroسا ثب خشٍخی boolدیبدُ سبصي وٌیذ. سَضیح دسثبسُ ي ايي سوشيي دس والس حل سوشيي دادُ ضذُ اسز .ثشاي ساٌّوبيی دسثبسُ ي ًحَُ ي دیبدُ سبصي ،اساليذ لشاس دادُ ضذُ دس گشٍُ سا ثجیٌیذ . نام فایل های برنامه: main.cpp, puzzle.cpp , puzzle.h دُ سبل دیص دس چٌیي هبّی ،وشيسشَفش هبًىشَى ،يه هطشبق دبصل اًگلیسی ،خبيضُ اي يه هیلیَى دًَذي ثشاي حل يه دبصل دیطٌْبد وشد.ايي خبيضُ يه سبل ثؼذ سَسظ دٍ سيبضی داى دس ووجشيح دسيبفز ضذ وِ دبصل سا ثِ ووه يه وبهذیَسش حل وشدُ ثَدًذ .دس خَالي 2007هبًىشَى دبصل ضوبسُ 2سا ثب خبيضُ اي هؼبدل 2 هیلیَى دًَذ سٍ ًوبيی وشدوِ ثِ ًظش غیش لبثل حل هی آيذ دس حبلی وِ حل وبهل ايي دبصل ثِ سخشی ثشاي ضوب هوىي اسز ،هی سَاًیذ ثشًبهِ اي ثٌَيسیذ وِ يه ًوًَِ سبدُ ايي دبصل سا حل نًذ . ٍسٍدي ثشًبهِ هدوَػِ اي اص لغؼبر هثال ثِ ضىل صيش اسز : ّذف آى اسز وِ ثجیٌیذ وِ آيب ايي لغؼبر دسٍى خؼجِ اي عَل ٍ ػشؼ دادُ ضذُ وِ ضشيجی غحیح اص عَل ٍ ػشؼ لغؼبر اسز لشاس هی گیشًذ يب خیش.چَى لغؼبر ّ ET ٍ TYش دٍ داساي يه ٍخِ غبف ّسشٌذ ٍاضح اسز وِ ايي ّب ثبيذ دس اثشذا ٍ اًشْبي خؼجِ ثبضٌذ . ثب ووی دلز هشَخِ هی ضَيذ وِ لغؼبر ER ٍ ETثِ خَثی ثِ ّن خفز هی ضًَذ . دس ًگبُ اٍل ثِ ًظش هی آيذ وِ خبيی ثشاي لغؼِ ً INیسز ٍ .لی ايي يه دبصل اسز ٍ هی سَاى لغؼبر آى سا ًین دٍس چشخبًذ . دس اص لشاس دادى ّوِ لغؼبر دس هسشغیل ثِ غَسر صيش هی ضَد : ثشاي سجذيل ايي سٍال ثِ يه هسئلِ ثشًبهِ ًَيسی،ضوب ثبيذ ، interface puzzle.hسا دیبدُ سبصي وٌیذ وِ والس PuzzlePiece,سا سؼشيف هی وٌذ. وِ اػضبي privateآى ّسشٌذ: ;int left ;int right ;int up ;int down ;string name اگش ضلؼی غبف ثبضذ ػذد آى 0اسز. ٍ داساي سَاثغ صيش هی ثبضذ . ;)bool attachesTo(PuzzlePiece & p ;)(bool hasFlatLeftSide ;)(bool hasFlatRightSide ;)(bool hasFlatUpSide ;)(bool hasFlatDownSide ;)PuzzlePiece flip(int angle سبثغ ، attachesToاگش لغؼِ فشاخَاًذُ ثب لغؼِ pخفز ضَد همذاس trueثشهیگشداًذ.فشؼ وٌیذ وِ لغؼبر دس خْز دّی خبسي خَد ّسشٌذ .ثِ ػٌَاى هثبل فشؼ وٌیذ لغؼبر ضبهل حشٍف ET , ٍ ERدس ضىل ثبال ،داساي ًبم ّبي ّ pER ٍ pETسشٌذ .فشاخَاًی ) pET.attachesTo(pERهمذاس trueسا ثشهی گشداًذ. سبثغ ّ hasFlatLeftSideوبى عَس وِ اص ًبم آى هؼلَم اسز اگش ثشَاًذ دس سوز چخ خؼجِ لشاس گیشد همذاس trueثشهیگشداًذ .هثال )( pET.hasFlatLeftSideهمذاس trueهی دّذ دس حبلی وِ )( pER.hasFlatLeftSideهمذاس . false ن angleدسخِ چشخبًذُ ضذُ اسز . سبثغ flipيه PuzzlePieceضجیِ اٍلیِ ثشهی گشداًذ ُ ( angleهی سَاًذ 270 ٍ90 ،180دسخِ ثبضذ ).فشاخَاًی آى ثشاي لغؼِ اي وِ سضشِ ي آى INاسز ثب صاٍيِ ي 180دسخِ ثِ غَسر صيش هی ثبضذ : سبثغ ;)string PuzzleIsSolvable(vector <PuzzlePiece> & puzzle سا دس mainدیبدُ سبصي وٌیذ وِ يه vectorاص لغؼبر سا هی گیشد ٍ آى سا دس خؼجِ ثِ عَل ٍ m ػشؼ nهی چیٌذ .دس غَسسی وِ لبدس ثِ ايي وبس ثبضذ سضشِ ي ايدبد ضذُ سا دس خشٍخی چبح هی وٌذ )سضشِ ثب حشوز اص سوز چخ ثبالي خؼجِ ضشٍع ثِ سوز ساسز هی آيذ ٍ سذس سىشاس آى ثشاي سغش ّبي ثؼذ ( ثِ ضىل صيش ثشاي يبفشي هسیس چبح خشٍخی ًگبُ وٌیذ ٍ ):دس غیش ايي غَسر ” “no solveسا ثش هی گشداًذ. خشٍخی : ًحَُ ي ٍسٍدي ٍ دس سغش اٍل ٍ دٍم همذاس عَل ٍ ػشؼ خؼجِ دادُ هی ضَد . سذس ثِ سشسیت ًبم سضشِ ي دسٍى آى ّب ,همبديش سوز چخ ؛ثبال ،ساسز ؛ دبيیي لغؼبر دادُ هی ضَد. ضشط خشٍج ٍاسد وشدى -1اسز. **وٌبس ّبي غبف حشوب داساي ػذد ّ 0سشٌذ. ثِ هثبل صيش سَخِ وٌیذ : Input: 2 2 OK 5 4 0 0 TH 0 0 1 2 BO 0 2 5 0 IS 1 0 0 4 -1 Output: THISBOOK وِ ضىل آى ثِ ايي غَسر هی ثبضذ . وٌیذ ثِ هَاسد صيش سَخِ : ثشاي سَاالر 2 ٍ1فمظ فبيل ّبي گفشِ ضذُ سا ثفشسشیذ .ثشاي سسز ثشًبهِ سبى ٍ mainاحذي ثشاي ّوِ ي ثشًبهِ ّب ًَضشِ هی ضَد . سػبيز ضی گشايی دس ّش 3سَال الضاهی ،فبيل ّب ثبيذ .h ٍ .cppثبضٌذ .لشاس دادى سغح دسششسی هٌبست ثِ اػضبي والس داساي ًوشُ اسز. ثشاي سَال 3ثِ دلیل آى وِ ًوًَِ ٍسٍدي ٍ خشٍخی سا دادُ اين mainسا ًَضشِ ٍ ّوشاُ سَال اسسبل وٌیذ. دس سَاالر 3 ٍ1گفشِ ضذُ اسز وِ اص map ٍ vectorاسشفبدُ ضَد .ايي دٍ فمظ خْز آسبى سش ضذى وبس ضوب ّسشٌذ ٍ سوشوض اغلی سَاالر ثش هفَْم ضی گشايی اسز . ثشاي سَضیح هشثَط ثِ دٍ STLيبد ضذُ ثِ هشاخغ صيش سخَع وٌیذ ٍ دس غَسر اضىبل حشوب ثذشسیذ . (دسهَسد vectorدس حل سوشيي ايي ّفشِ غحجز ضذ ّ map ٍ .ن دس خلسِ ثؼذ سَضیح دادُ هی ضَد) Vector: http://www.cplusplus.com/reference/stl/vector/ وشبة : ])[Page 372 (continued 7.11. Introduction to C++ Standard Library Class Template Map: http://www.cplusplus.com/reference/stl/map/ وشبة : ][Page 1147 Figure 23.22. Standard Library map class template.
© Copyright 2026 Paperzz