زبان برنامه نویسی متلب نیز همانند سایر زبانهای برنامه نویسی دادهها و متغیرهای مختلفی را میتواند دریافت کند. تاکنون در متلب آنالیز مقالات آموزشی مختلفی را در خصوص متلب منتشر کردهایم و اکنون در این مقاله نیز تصمیم داریم تا به نوع دادهها و عمگرهای مختلف و یا همان اپراتورها بپردازیم. پس تا انتهای مقاله همراه ما باشید.
زبان برنامه نویسی متلب نیازی به انواع مختلف یک دستور و داده ندارد و میتواند متغیرهای مناسب را با نام انتخابی ایجاد نماید و فضایی را نیز در مموری برای آن اختصاص دهد. اگر یک متغیر از قبل وجود داشته باشد متلب متغیر قبلی را با متغیر جدید جایگزین میکند و یک فضای جدید را نیز به آن اختصاص میدهد. بیایید مثالی را در این خصوص حل کنیم:
Total = 42
دستور بالا یک ماتریس ۱ به ۱ است که Total نامیده میشود و داده ۴۲ را درون خود ذخیره کرده است.
انواع داده که در متلب در دسترس هستند
زبان برنامه نویسی متلب از ۱۵ نوع داده اساسی پشتیبانی میکند. تمام انواع داده اطلاعات مختلف را درون خود به حالت یک ماتریس یا آرایه ذخیره میکنند. سایز این ماتریس یا آرایه در حال کمترین میزان ۰ به ۰ است و شما میتوانید سایز آن را به اندازه مورد نیاز افزایش دهید. در جدول زیر میتوانید انواع دادههای متداول را در متلب مشاهده کنید.
مثال: یک فایل خطی (Script) با دستور زیر بسازید:
‘!str = ‘Hello World
n = 2345
(d = double(n
(un = uint32(789.50
rn = 5678.92347
(c = int32(rn
زمانی که کد بالا اجرا و کمپایل شود نتیجه زیر نمایش داده خواهد شد:
!str = Hello World
n = ۲۳۴۵
d = ۲۳۴۵
un = 790
rn = 5678.9
c = ۵۶۷۹
تبدیل نوع داده
متلب توابع مختلفی را برای تبدیل مقدار یک نوع داده به نوع دیگر ارایه میدهد و در جدول زیر میتوانید توابع تبدیل نوع دادهها را مشاهده کنید:
تعیین نوع دادهها
متلب توابع مختلفی را جهت شناسایی نوع دادهها ارایه میدهد که در جدول زیر میتوانید توابع مورد نیاز برای تشخیص و تعیین نوع دادهها را مشاهده کنید:
مثال: یک فایل خطی (Script) با استفاده از کد زیر بسازید:
x = 3
(isinteger(x
(isfloat(x
(isvector(x
(isscalar(x
(isnumeric(x
x = 23.54
(isinteger(x
(isfloat(x
(isvector(x
(isscalar(x
(isnumeric(x
[x = [1 2 3
(isinteger(x
(isfloat(x
(isvector(x
(isscalar(x
‘x = ‘Hello
(isinteger(x
(isfloat(x
(isvector(x
(isscalar(x
(isnumeric(x
زمانی که فایل بالا را اجرا کنید، نتیجه زیر نمایش داده خواهد شد:
x = 3
ans = 0
ans = 1
ans = 1
ans = 1
ans = 1
x = 1177/50
ans = 0
ans = 1
ans = 1
ans = 1
ans = 1
x =
۱ ۲ ۳
ans = 0
ans = 1
ans = 1
ans = 0
x = Hello
ans = 0
ans = 0
ans = 1
ans = 0
ans = 0
اپراتورها در برنامه نویسی متلب
اپراتور یک نماد است که به کمپایلر (اجرا کننده) دستور انجام خاص محاسبات ریاضی یا برخی دستکاریهای منطقی را میدهد. متلب به صورتی طراحی شده است که میتواند در درجه اول ماتریسها و آرایهها را مدیریت (اپراتوری) کند. بنابراین، اپراتورها در متلب میتوانند با دادههای عددی و غیر عددی کار کنند. متلب امکان استفاده از عملگرها (اپراتوری) زیر را به شما میدهد:
- عملگرهای محاسباتی
- عملگرهای رابطهای
- عملگرهای منطقی
- عملگرهای بیتی (Bitwise)
- عملگرهای مجموعهای
در ادامه میتوانید با این عملگرها آشنا شوید:
عملگرهای محاسباتی
متلب دو نوع از عملگرهای محاسباتی را در اختیار شما قرار میدهد:
- عملگرهای محاسباتی ماتریس
- عملگرهای محاسباتی آرایه
عملگرهای محاسباتی ماتریس و آرایه: به صورت یک جبر خطی تعریف میِشوند؛ عملگرهای آرایهای نیز به صورت عنصر به عنصر (element by element) اجرا میشوند که هم میتوانند به صورت آرایههای تک بعدی و هم آرایه چند بعدی مورد استفاده قرار بگیرند.
عملگرهای ماتریس و آرایه بر اساس نمادها با یکدیگر متفاوت هستند. زمانی که شما بخواهید عمل جمع یا تفریق را انجام دهید در هر دو عملگر ماتریس و آرایه یکسان است. در جدول زیر میتوانید اطلاعات کلی و مختصری را در خصوص عملگرها (اپراتورها) به دست آورید:
عملگرهای رابطهای
عملگرهای رابطهای نیز میتوانند در دادههای عددی و غیرعددی مورد استفاده قرار بگیرند. این نوع از عملگرها نیز در حین اجرای آرایهها به صورت عنصر به عنصر (element by element) عمل میکنند و به مقایسه دو آرایه و بازگردانی آن به سایز آرایه منطقی میپردازند. برای مثال اگر آرایه ۱ باشد رابطه درست خواهد بود و اگر آرایه ۰ باشد رابطه نادرست خواهد بود. در جدول زیر میتوانید عملگرهای رابطهای موجود در متلب را مشاهده کنید:
عملگرهای منطقی
متلب امکان استفاده از دو نوع عملگرهای منطقی و توابع را در اختیار کاربران قرار میدهد:
عنصر عاقلانه (Element-wise): این عملگرها آرایههای منطقی متناظر را اپراتوری میکنند.
اتصال کوتاه (Short-circuit): این عملگرها دادههای عددی و اصطلاحات منطقی را اپراتوری میکنند.
عنصر عاقلانه یا Element-wise یک عملگر منطقی است که به صورت عنصر به عنصر آرایههای منطقی را اپراتوری میکند و نمادهای آن نیز &، | و ~ هستند و عملگرهای منطقی این آرایهها نیز AND، OR و NOT هستند.
اتصال کوتاه یا Short-circuit امکان اتصال کوتاه را در عملگرهای منطقی میدهند و نمادهای مورد استفاده در آن نیز && و || هستند و در این نوع عملگرها نیز از AND و OR استفاده میشود.
عملگرهای بیتی
عملگرهای بیتی با بیتها و عملهای bit-by-bit کار میکنند و نمادهای مورد استفاده در آن نیز &، | و ^ هستند. در جدول زیر میتوانید اطلاعات بیشتری در خصوص آنها به دست آورید.
فرض کنید که A = 60; و B = 13; است و در این صورت فرمت دوتایی زیر برای آنها نمایش داده خواهد شد:
A = 0011 1100
B = 0000 1101
—————–
A&B = 0000 1100
A|B = 0011 1101
A^B = 0011 0001
A = ۱۱۰۰ ۰۰۱۱~
متلب توابع مختلفی را برای عملیات bit-wise یا همان عملگرهای بیتی ارایه میدهد که در این بین میتوان به bitwise and و bitwise or و یا bitwise not اشاره کرد. عمل تغییر (Shift operation) و… نیز از سایر توابع این عملگر هستند. در جدول زیر میتوانید توابع مختلف عملگرهای بیتی را مشاهده کنید:
عملگرهای مجموعهای
متلب توابع مختلفی را برای عملگرهای مجموعهای یا همان Set Operations ارایه کرده است که میتوان به union، intersection و … اشاره کرد. در جدول زیر میتوانید اطلاعات بیشتری در خصوص توابع عملگرهای مجموعهای به دست آورید: