در تعریف عملگر ها در متلب باید بگوییم که یک عملگر ، یک سمبل است که به کمپایلر می گوید که یک عملیات ریاضی یا منطقی خاصی را انجام دهد. در اینجا باید این نکته را ذکر نماییم که متلب طوری طراحی شده است که در اصل و به صورت پایه ای بر روی ماتریس ها و آرایه ها کار کند اما عملگر ها در متلب ، هم بر روی داده های اسکالر و هم غیر اسکالر کار می کنند. متلب عملگر های پایه ای زیر را در محاسبات مورد استفاده قرار میدهد :
عملگر های ریاضی
عملگر های تناسبی
عملگر های منطقی
عملگر های بیتی
در زیر به تشریح علگر های ذکر شده می پردازیم :
عملگر های ریاضی :
متلب از دو نوع عملگر ریاضی بهره می برد ک
عملگر های ریاضی ماتریسی
عملگر های ریاضی آرایه ای
عملگر های آرایه ای به صورت عنصر به عنصر عمل می کنند و یک علامت نقطه یا dot “.” در کنار عملگر قرار می گیرد برای بررسی تفاوت این دو نوع عملگر به مثال های زیر توجه نمایید :
>> A = [1 2 3 ; 4 5 6; 7 8 9] A = 1 2 3 4 5 6 7 8 9 >> B = [2 2 2] B = 2 2 2 >> A*B Error using * Inner matrix dimensions must agree. >> A.*B ans = 2 4 6 8 10 12 14 16 18
در کد های بالا ، هنگامی که از ضرب ماتریسی استفاده می کنیم دچار خطا می شویم زیرا ابعاد ماتریس ها با هم برابر نیست اما با استفاده از ضرب نظیر به نظیر ، این خطا از بین رفته است . به مثال های زیر نیز توجه نمایید :
>> C = [2 2 2;2 2 2;2 2 2] C = 2 2 2 2 2 2 2 2 2 >> A*C ans = 12 12 12 30 30 30 48 48 48 >> C*A ans = 24 30 36 24 30 36 24 30 36 >> C.*A ans = 2 4 6 8 10 12 14 16 18 >> 2*A ans = 2 4 6 8 10 12 14 16 18 >> 2.*A ans = 2 4 6 8 10 12 14 16 18
در عملگر های دیگری از قبیل تقسیم و توان نیز همین قواعد حاکم است و این دو نوع از عملگر ( آرایه ای و ماتریسی ) در آن ها نیز وجود دارد.
عملگرهای تناسبی :
عملگر هایی از قبیل کوچکتر ، بزرگتر ، کوچکتر مساوی ، برزرگتر مساوی ، برابری ، غیر برابری نیز در ماتریس ها کاربرد دارد . البته در این عملگر ها در متلب با حالت اسکالر تفاوت هایی وجود دارد که قابل توجه است .
برای مثال در بخش قبل ما ماتریس های A و C را ایجاد کردیم و در اینجا می خواهیم با عملگر کوچکتر مساوی آن ها را با مقایسه نماییم . این کد را وارد می کنیم :
A<=C
با اجرای این دستور یک ماتریس منطقی 3 در 3 تشکیل می شود و در عناصری که ماتریس A بزرگتر یا مساوی عنصر نظیر در ماتریس C باشد ، عدد 1 درج می شود و اگر غیر از این باشد عدد صفر درج می گردد . برای روشن شدن این موضوع به مثال های زیر توجه نمایید :
>> A<C ans = 3×3 logical array 1 0 0 0 0 0 0 0 0 >> C<A ans = 3×3 logical array 0 0 1 1 1 1 1 1 1 >> A<=C ans = 3×3 logical array 1 1 0 0 0 0 0 0 0
مثال های متعدد بالا کاملا گویای نحوه عملمرد این نوع از عملگر ها است . عملگر های زیر نیز در این دسته قرار میگیرند :
>> A~=C ans = 3×3 logical array 1 0 1 1 1 1 1 1 1 >> A==C ans = 3×3 logical array 0 1 0 0 0 0 0 0 0
قسمت اول ، برابری و قسمت دوم تضاد عناصر را بررسی می کند . که می تواند در برنامه متلب کاربرد گسترده و وسیعی را داشته باشد .
در این قسمت از آموزش با دو نوع از عملگر ها در متلب آشنا شدیم و با انواع دیگر در آموزش بعدی آشنا خواهیم شد .