![]() |
جایگزین goto در متلب! - نسخهی قابل چاپ |
جایگزین goto در متلب! - αɾια - ۲۱ تیر ۱۳۹۷ ۰۷:۲۵ ب.ظ
سلام ،چجوری میشه گفت اگه شرط برقرار بود/نبود برو یه سری کارا رو از اول انجام بده(اونقدر تکرار کن) تا شرط برقرار بشه/نشه! goto که ظاهرا نداریم تو متلب، با break , continue و نوشتن ۱۰تا elseif پشت سرهم جواب نداد.. حتی تبدیل به تابع بازگشتیش کردم ولی بازم نشد ![]() هلپ ![]() کد: for i=1:up |
جایگزین goto در متلب! - Riemann - 21 تیر ۱۳۹۷ ۰۹:۰۲ ب.ظ
اگه اشتباه نکنم شما دارید یه ایندکس رندوم برای آرایه A تولید میکنید،یه راه حل اینه که یه مرحله پیشین بزارید و ایندکس عناصری که اون شرط براشون برقرار هست رو از قبل محاسبه کنید و تو کدتون استفاده کنید. |
جایگزین goto در متلب! - The BesT - 21 تیر ۱۳۹۷ ۱۱:۰۸ ب.ظ
سلام. اگر شرط اصلا انجام نشد چجوری میخواهید بگید تمام کن حلقه را ؟ که توی یه لوپ نیفته؟ من یکبار مشابه همین کار را میخواستم انجام بدهم ولی چون میدونستم ممکن هست به جواب نرسه ، یک متغیر گذاشتم که شرط را نهایتا تا ۱۰۰۰بار تکرار کند اگر اون کار انجام شد که خوبه اگر نشد دیگه احتمال اونکه رندوم من به جواب میرسید منفی میبود و برای همین حلقه بعد از ۱۰۰۰بار متوقف میکردم. این روش بدردتون میخوره؟ اگر بدرد نمیخوره تا روش دیگری را فکر کنیم شاید بدرد بخوره |
RE: جایگزین goto در متلب! - Behnam - ۲۲ تیر ۱۳۹۷ ۰۲:۴۷ ق.ظ
(۲۱ تیر ۱۳۹۷ ۰۷:۲۵ ب.ظ)Katerina Petrova نوشته شده توسط: سلام ،چجوری میشه گفت اگه شرط برقرار بود/نبود برو یه سری کارا رو از اول انجام بده(اونقدر تکرار کن) تا شرط برقرار بشه/نشه! اولا مهمان عزیز شما قادر به مشاهده پیوندهای انجمن مانشت نمیباشید. جهت مشاهده پیوندها ثبت نام کنید. رو بخونید ببینید چرا نباید از goto استفاده کنید و چرا از زبانهای ساختیافته حذف شده. بعدش هم این مشکلتون راهحلهای زیادی داره. سعی کنید زیاد اسکریپتنویسی کنید تا این جور مسائل ساده براتون مشکل نشه. منظورتون از "انقدر جِی رو تولید کن تا شرط برقرار بشه" واضح نیست چه شرطی. در حالت کلی یه راهش این هست: کد: else while(!condition){ کد: else while(!condition && i++ < max){ اگه شرطتون هم این هست که j رو طوری تولید کنه که (A(j از (B(i بزرگتر باشه، اون موقع میتونید اصلا ادغام کنید: کد: for i = 1 : up کد: for i = 1 : up |
RE: جایگزین goto در متلب! - αɾια - ۲۲ تیر ۱۳۹۷ ۱۰:۵۵ ق.ظ
(۲۱ تیر ۱۳۹۷ ۰۹:۰۲ ب.ظ)Riemann نوشته شده توسط: اگه اشتباه نکنم شما دارید یه ایندکس رندوم...اشتباه کردید ![]() ![]() (۲۱ تیر ۱۳۹۷ ۱۱:۰۸ ب.ظ)The BesT نوشته شده توسط: سلام.سلام ممنون،شرط انجام میشه ولی elseش رو نمیدونستم چجوری بنویسم و وقتی شرط برقرار نبود بدون هیچ عملی میرفت مرحله بعد. (۲۲ تیر ۱۳۹۷ ۰۲:۴۷ ق.ظ)Behnam نوشته شده توسط: اولابله خیلی ساده بود و کلی راه حل ولی چون نوشتنشو بلد نبود کلی if تودرتو نوشتم و گیج شدم. مرسی با کدی که نوشتین جواب داد. |
جایگزین goto در متلب! - Riemann - 22 تیر ۱۳۹۷ ۰۳:۵۱ ب.ظ
(۲۲ تیر ۱۳۹۷ ۱۰:۵۵ ق.ظ)Katerina Petrova نوشته شده توسط: اشتباه کردیدشرط میبندم که داری اشتباه میکنی ![]() تو مطلب هروقت به این مدل کارا رسیدی بدون داری یه جایی اشتب میزنی |