مقايسه منطقي در متلب
در MATLAB علامتهاي زير براي مقايسه مقادير عددي و حرفي بكار مي روند.
كوچكتر از >
كوچكتر از يا مساوي با =>
بزرگتر از <
بزرگتر از يا مساوي با =<
مساوي با ==
مخالف با =~
چنين مقايسه اي را مي توان بين دو اسكالر، دو آرايه يا اسكالر و اعضاي آرايه انجام داد. مثالهايي براي نحوه عمل اين عملگرها در زير آورده مي شوند. توجه كنيد كه حاصل همه عمليات منطقي مي تواند ٠ به معني نادرست يا ١ به معني درست باشد.
» 3<5
ans =
1
» [1 2]>=[0 3]
ans =
1 0
» a=[1 2 3
2 3 4];
» b=[-1 2 1
0 2 4];
» a~=b
ans =
1 0 1
1 1 0
بردار زير را در نظر بگيريد:
» x=[1 2 -1 0 -5 4 -1.5 3 2.5 -.5];
عبارت زير مولفه هاي مثبت اين بردار را نمايش مي دهد:
» x(x>0)
ans =
1.0000 2.0000 4.0000 3.0000 2.5000
و اين عبارت تعداد مولفه هايي را كه بين صفر و ٣ هستند تعيين مي كند:
» length(x((x>=0)&(x<=3)))
ans =
5
عملگرهاي منطقي
روابط منطقي را مي توان با استفاده از عملگرهاي منطقي با هم تركيب كرد. اين عملگرها عبارتند از:
و (تركيب عطفي) &
يا (تركيب فصلي) |
يا (مانع جمع) xor
نقيض ~
مثالهايي از طرز عمل اين عملگرها در زير آورده شده اند:
» m=[1 2 4; -2 3 -1];
» ~(m>0)
ans =
0 0 0
1 0 1
» (m>0)|(m<=2)
ans =
1 1 1
1 1 1
» (m>0)&(m<=2)
ans =
1 1 0
0 0 0
» xor([0 0 1 1],[0 1 0 1])
ans =
0 1 1 0
توجه كنيد كه xor يك تابع است و دو بردار ورودي به آن بايد هم اندازه باشند.
توابع منطقي find و all ،any
تابع any معين مي كند كه آيا مولفه غير صفر در يك بردار وجود دارد يا خير.
» v=[-2 1 3 5];
» any(v<1)
ans =
1» any(v>6)
ans =
0
تابع all معين مي كند كه آيا همه مقايسه ها درست هستند يا خير.
» all(v<1)
ans =
0
» all(v<6)
ans =
1
توابع فوق را مي توانيد براي ماتريسها نيز بكار ببريد. در اين صورت خروجي اين توابع عبارت است از حاصل مقايسه هاي گفته شده براي هر ستون ماتريس.
تابع find مكان مولفه هاي غير صفر را در يك آرايه نشان مي دهد.
» find(v>3)
ans =
4
مقاله متلب,مطلب,متلب,مقاله برق,مقاله قدرت,مقاله مطلب,مقاله سیمولینک,دانلود متلب,دانلود مقاله متلب,مقالهmatlab ,آموزش متلب,مطلب,متلب,آموزش برق,آموزش قدرت,آموزش مطلب,آموزش سیمولینک,دانلود متلب,دانلود آموزش متلب,آموزشmatlab ,پروژه متلب,مطلب,متلب,پروژه برق,پروژه قدرت,پروژه مطلب,پروژه سیمولینک,دانلود متلب,دانلود پروژه متلب,پروژهmatlab ,