واضح آرشیو وب فارسی:سایت ریسک: View Full Version : سوال در مورد دستور شرطي if mahdi7s01-12-2008, 06:53 PMسلام من برنامه اي نوشتم كه در اون از دستورات if بصورت تودرتو و متوالي استفاده شده ولي اگر شرط اول(دستور if اول) درست ارزيابي بشه اونو بدون هيچ مانعي اجرا مي كنه ولي اگه يكي از دو شرط ديگه درست باشه اصلا دستورات داخل اونها رو اجرا نمي كنه مثل اينكه اصلا اين دو شرط آخر وجود ندارن آيا كسي مي دونه دليل اين كار چيه؟ !!!! برای مشاهده محتوا ، لطفا ثبت نام کنید / وارد شوید !!!! sin2x=2sinxcosx01-12-2008, 10:56 PMبنده متوجه منظورتون نشدم . شما چه انتظاري از برنامه دارين ؟ يا اگه مي تونين اون برنامه رو بگين که چيه ، تا شايد بشه بهتر راهنمايي کرد . خب اگه شرط if اول درست باشه ميره داخلش و اگه تو اون هم يه دستور if ديگه باشه اون رو هم تست ميگه و اگه True باشه ميره دستورات اون رو اجرا ميکنه . بقيه اش هم بستگي به اين داره که بلوک ها رو کجا ببندين تا برنامه بتونه else هر کدوم رو تشخيص بده . bagher_mo6801-12-2008, 10:56 PMمن دقیقاً منظورتو نفهمیدم ... اما وقتی از دستور if و بعد از اون else if استفاده میکنی , در صورت درست بودن if اول دستور else بعد چک نمیشه ... اگه بخوای چک شه باید else رو برداری و دوباره از دستور if استفاده کنی اگه منظورت چیزه دیگه ای بود برنامتو بزار شاید فهمیدم مشکلت کجاست ! Shahab_H01-12-2008, 11:07 PMمن فکر کنم منظور دوستمون همونیه که تو پست قبلیه من جواب داده شده! برای این کار باید از if تنها استفاده شه نه else if mahdi7s02-12-2008, 03:56 PMمن از شما ممنونم و اين كارهايي كه گفتيد انجام دادم ولي مشكلم حل نشد سوالمو واضح تر مي گم مثلا در كد زير !!!! برای مشاهده محتوا ، لطفا ثبت نام کنید / وارد شوید !!!! اگه دستور if اولي درست ارزيابي بشه ميره داخلش و دستورهايي كه توش هست رو انجام ميده ولي مشكل اينجاست كه اگه دستور if اول نادرست و يكي از دو دستور if ديگه درست باشه به داخل اونا نمي ره و در نهايت هيچ كاري انجام نميشه و نمي فهمم مشكلش از كجاست/ مثل اين ميمونه كه اصلا اون دو تا دستور if ديگه با اطلاعاتشون در كد نوشته نشده باشن ممنون ميشم اگه راهنماييم كنيد. Shahab_H02-12-2008, 04:43 PMخب دوست عزیز مشخصه! اگر if اول درست باشه بقیه ی دستور ها چون قبل از if یک else هم دارن اجرا نمیشن! اگر شرط if اول غلط باشه میره سراغ دومی!اگر دست باشه بقیه دیگه اجرا نمیشن چون else دارن و در صورتی اجرا میشن که قبلی غلط باشه! و به همین ترتیب بهتره شما موضوع برنامتون رو بگین تا ما بهتر بتونیم راهنمایی کنیم! bagher_mo6802-12-2008, 06:56 PMخوب این همونی شد که گفته بودیم !! وقتی شما بعد از if و else if میزاری یعنی میگی اگه اون اولی نشد این ! یعنی اگه اولی درست باشه بقیش چک نمیشه میتونی برنامتو بزاری اگه درست نشد شاید بهتر بتونیم راهنمایی کنیم mahdi7s02-12-2008, 06:58 PMخب دوست عزیز مشخصه! اگر if اول درست باشه بقیه ی دستور ها چون قبل از if یک else هم دارن اجرا نمیشن! ! خوب اينو كه هر كسي مي دونه منظور من اين بود اگه در كدي كه تو پست قبل گذاشتم به دستورهاي if پشت سر شماره ي 1 و 2 و 3 بديم if هاي 2 و 3 هيچ ويقت اجرا نميشن و فقط if اول(1) اجرا ميشه (البته اگر درست باشه) :42::42: hoax3r02-12-2008, 07:27 PMسلام اگه کدی که خودت تست میکنی رو بزاری و کامپایلری که استفاده میکنی بگی بهتر میشه نظر داد بعضی کامپایلر ها یکسری بهینه سازی های بخصوص دارن که بعضی مواقع این مشکلات رو بوجود میاره Shahab_H02-12-2008, 08:34 PM!!!! برای مشاهده محتوا ، لطفا ثبت نام کنید / وارد شوید !!!!این 1 نمونه ی ساده از این ساختار! اینارو تو کامپایلرتون اجرا کنین اگه درست کار کرد که نشون میده کدهاتون درست نیست اگر کدها رو بذارین شاید بتونیم کمک کنید اگر درست اجرا نشد یعنی ایراد از کامپایلرتونه!که احتمالش خیلی کمه:11: اینم 1 نمونه از خروجی این برنامه http://i38.tinypic.com/2dsr2mg.jpg sin2x=2sinxcosx02-12-2008, 09:47 PMدوست عزيز اصلا مشلکتون مفهوم نيست . يعني چي if اول اجرا ميشه ؟ بعد if هاي 2 و 3 هيچ وقت جرا نميشه ؟ کدوم ها رو ميگين 1 , 2 , 3 ؟ مسئله خيلي ساده ايه . ولي شما با سوال هاي پيچيده دارين خيلي پيچيده اش مي کنين . mahdi7s02-12-2008, 11:03 PMاز همه ي دوستاني كه كمك كردن تا مشكلم حل بشه ممنونم:11: مشكلم حل شد:10: سایت ما را در گوگل محبوب کنید با کلیک روی دکمه ای که در سمت چپ این منو با عنوان +1 قرار داده شده شما به این سایت مهر تأیید میزنید و به دوستانتان در صفحه جستجوی گوگل دیدن این سایت را پیشنهاد میکنید که این امر خود باعث افزایش رتبه سایت در گوگل میشود
این صفحه را در گوگل محبوب کنید
[ارسال شده از: سایت ریسک]
[مشاهده در: www.ri3k.eu]
[تعداد بازديد از اين مطلب: 1183]