مشاهده نسخه کامل
: تفاوت بين اين دو حلقه
سلام
مي خواستم ببيم تفاوتي كه بين اين دوتا حلقه دقيقا چه جوري باعث نشان دادن نتايج مختلف مي شه
برای مشاهده محتوا ، لطفا وارد شوید یا ثبت نام کنیدممنون
سلام
مي خواستم ببيم تفاوتي كه بين اين دوتا حلقه دقيقا چه جوري باعث نشان دادن نتايج مختلف مي شه
برای مشاهده محتوا ، لطفا وارد شوید یا ثبت نام کنیدممنون
سلام
تو حلقه اول ابتدا به مقدار number دو شماره اضافه ميشه بعد با sum جمع ميشه
مثلا ميشه
int nu,ber=2;
number=4
sum=4
تو حلقه دوم اول جمع ميشه بعد به نامبر دو تا شماره اضافه ميشه
int number=2
sum=2
number=4
من هم همين فكر رو مي كردم پس بايد اين طور باشه
تو حلقه اول وقتي كه number به از 98 به 100 رفت بايد 100 با sum جمع بشه و بعد به شرط حلقه برگرده و چون درسته دو واحد ديگه به number بشه و برابر 102 بشه سپس اون مقدار با sum جمع بشه و حلقه تموم بشه
و تو حلقه دوم وقتي كه از 98 به صد رسيد بعد از طي شرط حلقه number با sum جمع بشه و و اين بار از جمع حلقه تموم بشه و 102 با sum جمع نمي شه
پس تو حلقه اول بايد يه 2 وجود داشته باشه چون 102 با sum جمع شده ولي وقتي برنامه رو اجرا مي كنم خروجيش اين مي شه(با يه سري تغييرات در برنامه براي نمايش متغيرها)
برای مشاهده محتوا ، لطفا وارد شوید یا ثبت نام کنید
brave_ie
18-07-2011, 21:44
خب الان مشکلش چیه؟
فقط وقتی از حلقه خارج میشی که با شرطت نخونه
بنابراین اول number 102 میشه بعد توحلقه صدق نمیکنه میاد بیرون ازش....
اگر درست متوجه سوالت شده باشم
نه درست متوجه نشدي :دي
شما پستهاي من رو يه بار ديگه بخون
اگه اون جوري كه گفتم باشه بايد تو حلقه اول مقدار sum برابر 2652 باشه در حالي كه اين طور نيست
نه درست متوجه نشدي :دي
شما پستهاي من رو يه بار ديگه بخون
اگه اون جوري كه گفتم باشه بايد تو حلقه اول مقدار sum برابر 2652 باشه در حالي كه اين طور نيست
خوب داداش
ببين درمورد اول وقتي شرط حلقه چك ميشه و درست هست
2 تا رقم ميزاره روي نامبر و بعد جمع ميكنه با sum
مثلا وقتي number=100 هست سام ما هم 2548 هست
خوب دو تا رقم ميده به نامبر ما اول . ميشه 102
2548+102=2650
بعد 102 ميگه كوچكتر مساوي 100 هست؟ ميگنه نه و مياد بيرون. :11:
اما حلقه دوم اول جمع ميكنه بعد رو ي نامبر اضافه ميكنه
---------- Post added at 11:35 PM ---------- Previous post was at 11:32 PM ----------
من هم همين فكر رو مي كردم پس بايد اين طور باشه
تو حلقه اول وقتي كه number به از 98 به 100 رفت بايد 100 با sum جمع بشه و بعد به شرط حلقه برگرده و چون درسته دو واحد ديگه به number بشه و برابر 102 بشه سپس اون مقدار با sum جمع بشه و حلقه تموم بشه
و تو حلقه دوم وقتي كه از 98 به صد رسيد بعد از طي شرط حلقه number با sum جمع بشه و و اين بار از جمع حلقه تموم بشه و 102 با sum جمع نمي شه
پس تو حلقه اول بايد يه 2 وجود داشته باشه چون 102 با sum جمع شده ولي وقتي برنامه رو اجرا مي كنم خروجيش اين مي شه(با يه سري تغييرات در برنامه براي نمايش متغيرها)
برای مشاهده محتوا ، لطفا وارد شوید یا ثبت نام کنید
وقتي نامبر از 98 به 100 ميره
جلوي راهش زده
number+=2
اول 2 تا ميزاره روي نامبر ميشه 102
بعد جمع ميكنه با سام.
Payman_62
18-07-2011, 22:38
سلام.
MR Cracker سر کار گذاشتی بچه هارو؟ به چه دلیل وقتی در آخرین گام حلقه number شده 102 حاصل sum باید توش 2 داشته باشه؟
شما شرط رو بکن number <= 98 میبینی که sum میشه 2548. وقتی شرط number <= 100 باشه چون number در نهایت مقدار 102 رو میگیره و با sum که 2548 بوده جمع میشه و حاصل 2560 میشه.
vBulletin , Copyright ©2000-2025, Jelsoft Enterprises Ltd.