اسکریپت ها در متلب ساده ترین نوع برنامه های تولیدی توسط متلب هستند. یک اسکریپت فایلی است که شامل چند خط پشت سر هم از دستورات و توابع متلب می شود. شما می توانید یک اسکریپت را با تایپ نام آن در خط فرمان برنامه اجرا کنید.
برای ایجاد یک اسکریپت، از دستور edit استفاده کنید.
edit mysphere
این دستور یک فایل خام با نام mysphere.m ایجاد خواهد کرد. چند کد برای ایجاد یک کره واحد، سپس دو برابر کردن شعاع و رسم نتیجه درج می کنیم:
[x,y,z] = sphere; r = 2; surf(x*r,y*r,z*r) axis equal
سپس کدی را که مساحت سطح و حجم کره را محاسبه کند، اضافه می کنیم:
A = 4*pi*r^2; V = (4/3)*pi*r^3;
هرگاه در حال کدنویسی بودید، بهتر است که کامنت هایی را که کد شما را توضیح می دهند به متن اضافه کنید. کامنت ها امکان فهم راحت کد شما برای بقیه و یا یادآوری روند کد به خود شما در صورت بازگشت به آن پس از مدتی را فراهم خواهند کرد. شما می توانید با استفاده از علامت درصد (%) به قرار دادن کامنت در هر قسمت و خطی از برنامه بپردازید.
% Create and plot a sphere with radius r. [x,y,z] = sphere; % Create a unit sphere. r = 2; surf(x*r,y*r,z*r) % Adjust each dimension and plot. axis equal % Use the same scale for each axis. % Find the surface area and volume. A = 4*pi*r^2; V = (4/3)*pi*r^3;
شما می توانید فایل اسکریپت نوشته شده را با استفاده از دکمه save در بخش file از تب editor و یا با استفاده از میانبر ctrl + s ذخیره کنید. از این پس در صورتی که در همین فولدر در حال کار باشید با نوشتن نام فایل، اسکریپت مورد نظراجرا خواهد شد:
mysphere
همچنین می توانید با استفاده از دکمه Run در بخش run از تب editor و یا با استفاده از میانبر F5، اسکریپت نوشته شده را اجرا نمایید.
بجای نوشتن کد و کامنت ها در یک متن ساده، شما می توانید از امکانات تعبیه شده جهت تنظیم استایل متن در Live Scripts برای تقویت کد خود استفاده کنید. لایو اسکریپت اجازه مشاهده و تعامل بین کد و خروجی را در کنار متن، معادلات و تصاویر به صورت تنظیم شده به شما می دهد.
برای مثال، جهت تبدیل اسکریپتی که جلسه قبل نوشتیم (mysphere) به اسکریپت زنده، کافیست با انتخاب Save As و تغییر فرمت فایل به صورت کد زنده متلب (*.mlx) این کار را انجام دهیم. سپس می توانید کامنت های کد خود را با متن های قالب دهی شده جایگذاری کنید. برای نمونه:
خطوط کامنت را به متن تبدیل کنید. هر کدام از خط هایی که با علامت درصد شروع می شوند را انتخاب و سپس دکمه Text را از بخش Text تب Live Editor انتخاب کنید. حال علامت درصد را حذف نمایید. بهتر است کامنت هایی که در آخر کدهای نوشته شده قرار داده بودیم، حذف کنیم. برای مشخص کردن عنوان توابعی که در متن توضیحات می آوریم بهتر است با تبدیل فونت نام آن ها به monospace با کلید ، ظاهر این عبارات را تغییر دهیم. همچنین برای درج فرمول به متن می توان از گزینه Equation در تب Insert استفاده کرد.
برای تولید یک اسکریپت زنده جدید با استفاده از کد edit کافیست از پسوند .mlx به جای نام فایل استفاده کنید:
edit newfile.mlx
در هر اسکریپت شما می توانید قسمت هایی را پیدا کنید که یا در یک حلقه تکرار شده اند و یا اجرای آن مشروط به شرایطی بوده است. حلقه ها از کلیدواژه ی for ویا while استفاده می کنند؛ همچنین دستورات شرطی از if و switch استفاده می کنند.
روش استفاده از حلقه for به صورت زیر می باشد:
for index = values statements end
که در اینجا index متغیر شمارشگر، values بازه اعدادی که توسط شمارشگر شمرده خواهند شد و statements دستوراتی است که در هر بار تکرار اجرا می شود.
حلقه ها برای ایجاد دنباله ها مفید هستند. برای مثال، اسکریپتی با نام fibseq ایجاد می کنیم که از یک حلقه for برای محاسبه 100 عدد از سری فیبوناچی استفاده می کند. در این سری دو عدد اول 1 هستند و اعداد بعدی جمع دو رقم قبلی می باشند Fn = Fn-1 + Fn-2.
N = 100; f(1) = 1; f(2) = 1; for n = 3:N f(n) = f(n-1) + f(n-2); end f(1:10)
زمانی که اسکریپت نوشته شده را اجرا می کنید؛ دستور for از یک شمارشگر با نام n استفاده کرده، از عدد 3 شروع به شمارش می کند و حلقه پشت سر هم مقادیر (f(n را محاسبه می کند. مقدار شمارشگر n هر مرتبه یک واحد افزایش یافته تا این که به عدد 100 برسد. آخرین دستور اسکریپت، (f(1:10، مقادیر 10 المان اول f را نمایش خواهد داد.
ans = 1 1 2 3 5 8 13 21 34 55
روش استفاده از دستور if به صورت زیر می باشد:
if expression statements elseif expression statements else statements end
که در اینجا expression شرط هر قسمت بوده و statements دستوراتی است که در صورت صادق بودن شرط اجرا می شود. دستور elseif می تواند برای چندین شرط تکرار شود.
دستورات شرطی تنها زمانی اجرا می شوند که شرط قرار داده شده برای آن ها صحیح باشد. برای مثال، مقدار یک متغیر را که به صورت تصادفی از اعداد کوچکتر از 100 انتخاب شده است در نظر بگیرید. می خواهیم این مقدار را با توجه به کوچکی و بزرگی در بین سه دسته 'low'، 'medium' و 'high' جای دهیم.
num = randi(100) if num < 34 sz = 'low' elseif num < 67 sz = 'medium' else sz = 'high' end
دستور sz = 'high' زمانی اجرا می شود که مقدار num، بزرگتر یا مسای 67 باشد.
متلب به دنبال اسکریپت ها و مابقی فایل ها در فولدر در حال کار خود می گردد. برای اجرای یک اسکریپت، فایل آن باید در فولدر کنونی پنجره Currnet Folder و یا یکی از فولدرهای search path وجود داشته باشد
به صورت پیش فرض فولدر MATLAB که در هنگام نصب برنامه ایجاد شده است در قسمت search path وجود دارد. اگر می خواهید برنامه هایتان را در مسیر دیگری ذخیره و اجرا کنید، آن را به این بخش اضافه کنید. برای این کار، پوشه مورد نظر را در Current Folder انتخاب کرده، راست کلیک کنید و کلید Add to Path را فشار دهید.
منبع: سایت MathWorks
در این قسمت، به پرسشهای تخصصی شما دربارهی محتوای مقاله پاسخ داده نمیشود. سوالات خود را اینجا بپرسید.