اجرای دستورات شرطی، با دستور if ، در متلب (MATLAB)
از دستور if در متلب، برای اجرای دستورات شرطی استفاده می شود. یعنی اینکه در ابتدا شرط یا شرط هایی توسط متلب چک می شود و اگر آن شرط یا شرط ها برآورده شده باشد، آنگاه متلب دستورات مشخص شده را اجرا خواهد کرد.
به مثال زیر توجه کنید :
نتیجه :
همان طور که مشاهده می کنید، از دو دستور if استفاده کرده ایم. هدف این است که مقدار B برابر قدرمطلق A باشد، بنابراین اگر A مساوی یا بزرگتر از صفر باشد، باید B را برابر A قرار دهیم و اگر A مساوی یا کوچکتر از صفر باشد، باید B را برابر A– قرار دهیم.
دقت کنید که در پایان دستور if ، حتما باید end نوشته شود تا نرم افزار متلب بداند که دستور if پایان یافته است.
دستور if به همراه else :
همان طور که گفتیم، زمانی که از دستور if در متلب استفاده می کنیم، متلب شرط یا شرط هایی را چک می کند و در صورت برآورده شدن آنها، دستورات را اجرا می کند. اما شاید بخواهیم به متلب اعلام کنیم که اگر شرط یا شرط ها برآورده نشدند، آنگاه چه دستوراتی را اجرا کند. در اینگونه موارد، دستور if را با else به کار می بریم.
به مثال زیر توجه کنید :
در مثال قبلی، از دو دستور if استفاده کردیم، اما این بار همان مثال را تنها با یک دستور if می نویسیم :
نتیجه :
هدف این بوده است که B برابر قدرمطلق A باشد، ابتدا متلب چک می کند که A مساوی یا بزرگتر از صفر هست یا نه، اگر باشد، آنگاه B را برابر A قرار می دهد و چون شرط برآورده شده است، دستورات نوشته شده برای else را نادیده می گیرد. اما اگر A مساوی یا بزرگتر از صفر نباشد، آنگاه متلب، تنها دستورات مربوط به else را اجرا می کند.
دستور if به همراه elseif :
گاهی نیاز داریم که چندین شرط به صورت پی در پی چک شوند، اگر اولین شرط صحیح بود، دستورات مربوط به آن اجرا شوند و دستورات مربوط به سایر شرط ها نادیده گرفته شوند، اما اگر شرط اول برآورده نشده بود، شرط دوم چک شود و در صورت برآورده شدن شرط دوم، دستورات مربوط به آن اجرا شود و دستورات مربوط به شرط های باقیمانده نادیده گرفته شود، در صورت برآورده نشدن شرط دوم، آنگاه شرط سوم چک شود و همین طور تا آخر. در اینگونه موارد باید از دستور if به همراه elseif استفاده کنیم.
به مثال زیر توجه کنید :
همان مثال قبل را این بار با استفاده از elseif می نویسیم. تنها تفاوت این است که حالت خاص A=0 را جداگانه بررسی کرده ایم :
نتیجه :
دقت شود که برای چک کردن شرط تساوی، حتما باید از دو علامت تساوی به صورت == استفاده شود، زیرا علامت = در متلب، برای نسبت دادن مقدار به متغیرها در نظر گرفته شده است و بنابراین برای چک کردن شرط تساوی، مجبوریم از علامت == استفاده کنیم.
احمد سلام دوستان یک سوال داشتم
آیا کسی هست کمک کنه
برنامه ای در متلب که 4 مقدار گرفته و مقایسه کند و اعداد را از بزرگ به کوچک مرتب کند
admin سلام.
از دستور sort در متلب (MATLAB) استفاده کنید :
کلید شماره 183
میر ابوالفضل میر ابراهیمی سلام و خسته نباشد
خواستم بدونم چطوری میشه به عدد شرط گذاشت
مثلا از 20 تا 100 عدد وارد کنیم اگه مثلا پایین 20 بود ارور بده بالای 100 هم بود ارور بده
admin سلام.
کد متلب (MATLAB) زیر را می نویسیم :
<?php
clear all
close all
clc
A = input('please enter your number : ')
if A>100
error('please choose another number for A');
elseif A<20
error('please choose another number for A');
end
سه خط اول کدها برای عدم تداخل برنامه فعلی با برنامه های قبلی اجرا شده در متلب (MATLAB) می باشد.
دستور input برای دریافت ورودی از کاربر است (کلید شماره 88).
دستور error برای نمایش یک پیام در خروجی، به همان شکل متداول برای نمایش خطاها در نرم افزار متلب (MATLAB) به کار می رود (کلید شماره 165).
پس از اجرای کدها، یک عدد را وارد کرده و کلید enter از کیبورد را بزنید. اگر عدد از 100 بزرگتر و یا از 20 کوچکتر باشد، یک پیام خطا در خروجی نمایش داده می شود.
sanaz.hz
Reza
حمید
Sepideh
محمد
mahdi
سارا
shadi
مینا
Zarrin
محمدحسین
محمد رضا طالاری