آموزش متلب

ساختارها در متلب

ساختارها (Structure)، در متلب (MATLAB)

ساختار (Structure)، نوعی از ذخیره اطلاعات (Data Type) در نرم افزار متلب(MATLAB) می باشد که در آن، اطلاعات مرتبط را به صورت یک گروه درنظر می گیریم و هر گروه از اطلاعات را در یک فیلد (Field) قرار می دهیم.

هر فیلد (Field)، می تواند شامل هر نوع (Type) اطلاعات باشد.

دسترسی به اطلاعات یک فیلد (Field) با نام fieldName در یک ساختار(Structure) با نام structureName ، بر اساس عبارت زیر صورت میگیرد (یک علامت . در بین نام آنها قرار داده می شود) :

structureName.fieldName

تعریف یک ساختار (Structure)، بدون استفاده از هیچ دستور از قبل تعریف شده، در متلب (MATLAB) :

فرض کنید که می خواهیم یک ساختار (Structure) با نام S بسازیم که دارای2 فیلد (Field) با نام های a و b باشد، که فیلد a برابر عدد 1 و فیلد bبرابر یک رشته (String) با مقدار kelidestan.com باشد. بنابراین کد متلب(MATLAB) زیر را می نویسیم :

S.a = 1
S.b = ‘kelidestan.com’

نتیجه :

S =

    a: 1

S =

    a: 1
    b: ‘kelidestan.com’

اکنون برای نمایش مقدار فیلد b در خروجی، کد متلب (MATLAB) زیر را اجرامی کنیم :

S.b

نتیجه :

ans =

kelidestan.com

مثالی دیگر :

مثال

فرض کنید که می خواهیم یک ساختار (Structure) با نام S بسازیم که دارای3 فیلد (Field) با نام های a و b و c باشد، که فیلد a برابر عدد 1 و فیلدb برابر یک رشته (String) با مقدار kelidestan.com و فیلد c برابر یکآرایه سلولی (Cell Array) به صورت {10, 20, 30} باشد. بنابراین کد متلب(MATLAB) زیر را می نویسیم :

clear all
close all
clcS.a = 1
S.b = ‘kelidestan.com’
S.c = {10, 20, 30}

3 خط اول کدها، برای عدم تداخل برنامه فعلی با برنامه های قبلی اجرا شده در متلب (MATLAB) می باشد.

نتیجه :

S =

    a: 1

S =

    a: 1
    b: ‘kelidestan.com’

S =

    a: 1
    b: ‘kelidestan.com’
    c: {[10]  [20]  [30]}

اکنون برای نمایش مقدار فیلد c در خروجی، کد متلب (MATLAB) زیر را اجرامی کنیم :

S.c

نتیجه :

ans =

    [10]    [20]    [30]

با توجه به اینکه فیلد c یک آرایه سلولی (Cell Array) است (شامل 3 سلولبا مقدارهای 10 و 20 و 30 می باشد)، برای نمایش اولین سلول (Cell) آن درخروجی، کد متلب (MATLAB) زیر را اجرا می کنیم :

S.c{1}

نتیجه :

ans =

    10

نکته

اگر بخواهیم که در هر بار تعریف یک فیلد (Field) جدید برای ساختار(Structure)، نمایش ساختار (Structure) در خروجی را نداشته باشیم، باید علامت های ; را در پایان هر خط از کدهای تعریف فیلدها (Field)بنویسیم :

clear all
close all
clcS.a = 1;
S.b = ‘kelidestan.com’;
S.c = {10, 20, 30};

S.c

نتیجه :

ans =

    [10]    [20]    [30]

آرایه های ساختاری (Structure Array)، در متلب (MATLAB) :

در متلب (MATLAB)، ما می توانیم آرایه ای (Array) از ساختارها (Structure)را داشته باشیم که آن را یک آرایه ساختاری (Structure Array) می نامیم.

دیدگاهتان را بنویسید

نشانی ایمیل شما منتشر نخواهد شد. بخش‌های موردنیاز علامت‌گذاری شده‌اند *