آموزش نرم افزار MATLAB قسمت چهارم
آموزش نرم افزار MATLAB قسمت چهارم
این مجموعه ی آموزشی توسط تیم وبسایت مرجع آموزش ویدیویی برنامه نویسی و برنامه نویسی تحت وب تهیه شده و تمامی حقوق محفوظ می باشد.
با سلام و خسته نباشید
با جلسه ۴ ام برنامه نویسی MATLABدر خدمت شما هستم.
جلسه قبل راجع به رسم نمودارها صحبت کردم .. در این جلسه قصد دارم ابتدا در مورد عملگر های رابطه ای و منطقی صحبت کنم .در ادامه هم با دستورات شرطی و تکرار آشنا می شویم.
عملگر های مقایسه ای بر اساس جدول زیر مقایسه ی بین دو ماتریس را انجام میدهند.نتیجه هر مقایسه به صورت ۰ یا ۱ منطقی است.این گونه عملیات در دستورات شرطی مثل ifکاربرد دارند.
مثال۱
» A=1:6,B=4+A
A =
۱ ۲ ۳ ۴ ۵ ۶
B =
۵ ۶ ۷ ۸ ۹ ۱۰
»
در این مثال ابتدا یک آرایه به نام A با ۶ عنصر ایجاد میکند .آرایه B از جمع عدد ۴ با آرایه A حاصل میشود .
آرایه دیگری به نام cنیز تعریف کردیم
c=A>3
خروجی این دستور به صورت زیر است
۰ ۰ ۰ ۱ ۱ ۱
در واقع به ازای عناصر بزرگتر از ۳ در ارایه A مقدار ۱ و بجای بقیه عناصر مقدار ۰ قرار گرفته است .
مثال ۲
» a= [1 , 2, 3 , 4 , 5];
b=[10 , 2 , 13 , 4 , 8];
c=(a == b)
c =
۰ ۱ ۰ ۱ ۰
»
در این مثال ،آرایه c از مقایسه اعضای آرایه یa و b به دست آمده است
علامت == دو متغیر را باهم مقایسه میکند در صورتی که برابر باشند مقدار ۱ (True) را برمیگرداند.
در غیر این صورت مقدار ۰(False)را برمیگرداند .
درحالی که علامت =برای تخصیص خروجی یک عملگر به یک متغیر استفاده میشود .
مثال۳
» a = [1 , 2 , 3 ; 4 , 2 , 2 ; 1 , 10 , 0];
x= a >=2
x =
۰ ۱ ۱
۱ ۱ ۱
۰ ۱ ۰
»
مثال۴
» a= 1 : 9;
b = a > 3
b =
۰ ۰ ۰ ۱ ۱ ۱ ۱ ۱ ۱
»
عملگر های منطقی در MATLAB
این عملگرها روشی برای ترکیب و یا قرینه کردن عبارات در اختیار ما قرار میدهند .
این عملگر ها عبارت اند از:
AND &
OR |
NOT ~
مثال ۱
» m=[1 2 4; -2 3 -1];
~(m>0)
ans=
۰ ۰ ۰
۱ ۰ ۱
» (m>0)|(m<=2)
ans =
۱ ۱ ۱
۱ ۱ ۱
» (m>0)&(m<=2)
ans =
۱ ۱ ۰
۰ ۰ ۰
»
به غیر از عملگر های رابطه ای و منطقی تعدادی تابع منطقی و رابطه ای نیز وجود دارد
که در اینجا به سه نوع از ان ها اشاره میکنیم :
Xor(x,y)
این تابع هنگامی که هرکدام از مقادیر xو y غیر ۰ باشد،مقدار ۱ و در صورتی که هردو ۰ باشند یا هر دو غیر ۰ باشند، مقدار ۰ را برمیگرداند .
all(x)
اگر تمامی عناصر موجود در بردار غیر صفر باشد ،مقدار ۱ و در غیر این صورت مقدار ۰ را برمیگرداند .
any(x)
درصورتی که حداقل یکی از عناصر یک بردار غیر ۰ باشد مقدار ۱ و در غیر این صورت مقدار ۰ را برمیگرداند.
مثال
» xor([0 0 1 1],[0 1 0 1])
ans =
۰ ۱ ۱ ۰
»
در ادامه قصد داریم با ساختارهای تکرار for و while و ساختارهای شرطی if-else و switch آشنا شویم
If
این دستور جزء توابع شرطی به حساب می آید.در صورت صادق بودن شرط ذکر شده ،دستور یا دستورات خاصی را اجرا میکند .
ساختار آن به صورت زیر است :
if condition1
statements1
elseif condition2
statements2
.
.
else
statementsN
end
در ابتدا شرط قرار گرفته در کنار if اعمال میشود..اگر این شرط برقرار باشد ،به خط بعدی رفته و دستور مربوطه را اجرا میکند .سپس دستورات بعد endاجرا میشود.
در غیر این صورت وارد else if میشود .و شرط ۲ مورد بررسی ثرار میگیرد.در صورتی که این شرط برقرار باشد دستور شماره ۲ اجرا میشود.و دستورات بعد end اجرا میشود.
درصورتی که هیچکدام از شرط های ۱ و ۲ اجرا نشود آنگاه دستور شماره N اجرا میشود و سپس به دستور بعد end میرود .
While
این حلقه یک یا چند دستور را آنقدر تکرار میکند تا شرط تعیین شده برقرار شود.و بعد از برقراری شرط ،حلقه پایان مییابد .
ساختار کلی آن به صورت زیر است
While condition
Statements
End
Switch
ساختار کلی آن به صورت زیر است
var = ...
switch var
case value of var
statements1
case {values of var}
statements2
otherwise
statements3
end
درصورتی که شرط بیان شده در مقابل عبارت caseبراورده شود،دستور عمل مربوط به ان نیز اجرا خواد شد
هربار یکی از caseها میتواند اجرا شود.و هنگامی که شرط یکی از caseها برقرار باشد.بقیه caseها اجرا نمیشود.
اگر هیچ کدام از شرط ها برقرار نباشد دستور۳ واقع در otherwise اجرا میشود.گداشتن دستور بعد از otherwise اختیاری است.درصورتی کهotherwise حذف شود و هیچ کدام از caseها نیز برقرار نباشد ،جمله بعد endاجرا خواهد شد .
مثال
یکی عدد تصادفی بین ۰ و ۹ تولید کنید.
سپس زوج و فرد بودن آن را مشخص کنید .
d = floor(10*rand);
disp(d);
switch d
case 0
disp('Zero');
case {1,3,5,7,9}
disp('Odd');
otherwise
disp('Even');
end
مثال
x = input(' x = ');
if x >= 0
y=x^2
end
مثال
» a = input('a =');
switch a
case 1
disp('One')
case 2
disp('Two')
case 3
disp('Three')
end
مثال
» k = 0;
for x = 0:0.2:1
k = k + 1
end
فکر میکنم برای این جلسه کافی باشه.
در جلسه بعد در رابطه با رشته ها و انواع توابع در MATLABصحبت خواهیم کرد .
منبع:www.ilikephp.ir