انواع داده در زبان متلب – آموزش متلب

  • یکشنبه 28 دی 1399
  • بازدید ۶۵۴ نفر

انواع داده در زبان متلب   آموزش متلب

انواع داده در زبان متلب

در زبان MATLAB نیازی به اعلان نوع داده و یا مشخص کردن ابعاد نیست. هر گاه متلب با یک متغیر جدید رو به رو می شود، متغیر را ایجاد کرده و حافظه مناسب را اختصاص می دهد. اگر متغیر از قبل وجود داشته باشد، محتوای قبلی را با محتوای جدید جایگزین می کند. و اگر لازم بود فضای جدید اختصاص می دهد. برای مثال:

دستور بالا یک ماتریس ۱ در ۱ به نام Total ایجاد کرده و مقدار ۴۲ را در آن ذخیره می کند.

انواع داده موجود در زبان متلب

در متلب ۱۵ نوع داده اصلی وجود دارد. مقدار هر نوع داده به صورت ماتریس یا آرایه ذخیره می شود. حداقل اندازه این ماتریس یا آرایه می تواند ۰ در ۰ یا هر اندازه بزرگتری باشد. در جدول زیر می توانید انواع داده پر استفاده در زبان متلب را مشاهده کنید.

ردیفتوضیحات
۱

int8

عدد صحیح علامت دار ۸ بیتی

۲

uint8

عدد صحیح بدون علامت ۸ بیتی

۳

int16

عدد صحیح علامت دار ۱۶ بیتی

۴

uint16

عدد صحیح بدون علامت ۱۶ بیتی

۵

int32

عدد صحیح علامت دار ۳۲ بیتی

۶

uint32

عدد صحیح بدون علامت ۳۲ بیتی

۷

int64

عدد صحیح علامت دار ۶۴ بیتی

۸

uint64

عدد صحیح بدون علامت ۶۴ بیتی

۹

single

داده های عددی با دقت واحد

۱۰

double

داده های عددی با دقت دو برابر

۱۱

logical

مقادیر منطقی (صفر و یک) نشان دهنده true و false

۱۲

char

کاراکتر (رشته ها به صورت یک وکتوری از کاراکتر ذخیره می شوند)

۱۳

cell array

آرایه ای از سلول های اندیس دار است که هر سلول قادر است یک آرایه با ابعاد و نوع متفاوت داده را ذخیره کنند

۱۴

structure

آرایه ای از ساختار ها، هر ساختار در این آرایه، دارای فیلدهای نام گذاری شده است که می‌تواند آرایه با ابعاد و نوع مختلف داده را ذخیره کند

۱۵

function handle

اشاره‌گر به یک تابع

۱۶

user classes

ساخت اشیا از کلاس های تعریف شده توسط کاربر

۱۷

java classes

ساخت اشیا از کلاس های جاوا

مثال:

یک فایل اسکرپیتی با کد زیر درست کنید:

خروجی کد فوق بعد از کامپایل و اجرا شدن:

تبدیل نوع داده

در متلب توابع مختلفی به منظور تبدیل یک نوع داده به نوع داده دیگر وجود دارد. در جدول زیر می توانید توابع مربوط به تبدیل نوع را مشاهده کنید.

تابعتوضیحات
charرشته را به آرایه ای کاراکتر تبدیل می کند
int2strعدد صحیح را به رشته بتدیل می کند
mat2strماتریس را به رشته تبدیل می کند
num2strعدد را به رشته تبدیل می کند
str2doubleرشته را به عدد اعشاری با دقت double تبدیل می کند
str2numرشته را به عدد تبدیل می کند
native2unicodeبایت های عددی را به کاراکترهای Unicode تبدیل می کند
unicode2nativeکاراکترهای Unicode را به بایت های عددی تبدیل می کند
base2decاعداد مبنای N را به اعداد ده دهی (decimal) تبدیل می کند
bin2decمقدار باینری را به عدد ده دهی (decimal) تبدیل می کند
dec2baseاعداد ده دهی را به مبنای N تبدیل می کند
dec2binاعداد ده دهی را به مبنای دو تبدیل می کند
dec2hexاعداد ده دهی را به هگزادسیمال تبدیل می کند
hex2decاعداد هگزادسیمال را به ده دهی تبدیل می کند
hex2numاعداد هگزادسیمال را به اعداد اعشاری با دقت double تبدیل می کند
num2hexاعداد اعشاری با دقت single و double را به رشته هگزادسیمال IEEE تبدیل می‌کند
cell2matآرایه سلولی را به آرایه عددی تبدیل می کند
cell2structآرایه سلولی را به آرایه ای از ساختارها تبدیل می کند
cellstrیک رشته را به آرایه سلولی تبدیل می کند
mat2cellآرایه را به آرایه سلولی با اندازه سلول های متفاوت تبدیل می کند
num2cellآرایه را به آرایه سلولی با اندازه سلول های ثابت تبدیل می کند
struct2cellآرایه از ساختارها را به آرایه سلولی تبدیل می کند

تعیین انواع داده ها

متلب توابع مختلفی را به منظور تعیین نوع داده یک متغیر ارائه می دهد. در جدول زیر می توانید این توابع را مشاهده می کند.

تابعتوضیحات
isبرای تشخیص وضعیت استفاده می شود
isaتعیین می کند که آیا مقدار ورودی نوع داده خاصی دارد یا خیر
iscellتعیین می کند که مقدار ورودی یک آرایه سلولی است یا خیر
iscellstrتعیین می کند که آیا مقدار ورودی یک آرایه سلولی از رشته است یا خیر
ischarتعیین می کند که آیا مقدار ورودی یک آرایه از کاراکتر است یا خیر
isfieldتعیین می کند که آیا مقدار ورودی یک آرایه از ساختار است یا خیر
isfloatتعیین می کند که آیا مقدار ورودی یک آرایه از نوع float است یا خیر
ishghandleاگر مقدار ورودی یک هندل مربوط به شیء Handle Graphics باشد، مقدار True برمیگرداند.
isintegerتعیین می کند که آیا مقدار ورودی یک آرایه عدد صحیح است یا خیر
isjavaتعیین می کند که آیا مقدار ورودی یک شیء جاوا است یا خیر
islogicalتعیین می کند که آیا مقدار ورودی یک آرایه منطقی است یا خیر
isnumericتعیین می کند که آیا مقدار ورودی یک ارایه عددی است یا خیر
isobjectتعیین می کند که آیا مقدار ورودی یک شیء MATLAB است یا خیر
isrealتعیین می کند که آیا مقدار ورودی یک آرایه از اعداد حقیقی است یا خیر
isscalarتعیین می کند که آیا مقدار ورودی یک مقدار اسکالر است یا خیر
isstrتعیین می کند که آیا مقدار ورودی یک آرایه کاراکتری است یا خیر
isstructتعیین می کند که آیا مقدار ورودی یک آرایه از ساختار است یا خیر
isvectorتعیین می کند که آیا مقدار ورودی یک vector است یا خیر
classبرای تشخیص کلاس یک شیء استفاده می شود
validateattributesاعتبار آرایه را بررسی می کند
whosمتغیرهای موجود در Workspace را به همراه اندازه و نوع داده نمایش می دهد

مثال:

یک فایل اسکرپیتی با کد زیر ایجاد کنید:

زمانی که کد فوق کامپایل و اجرا شود، خروجی زیر را تولید می کند:

ثبت نظر
ریفریش کنید!
نظرات کاربران (۰ مورد)

هیچ نظری ثبت نشده است