آموزش متلب-دانشگاه شاهد-٠۵.pdf
1.2 MB
آموزش جلسه پنجم نرمافزار متلب
آموزش جلسه پنجم مقدماتی نرمافزار متلب👆
#آموزش_متلب
کانال برنامهنویسی و کامپیوتر:
@programming_computer_top
#آموزش_متلب
کانال برنامهنویسی و کامپیوتر:
@programming_computer_top
اعضای محترم کانال از شنبه ۱۶ فروردین آموزشهای ویدیویی دوره مقدماتی نرمافزار متلب شروع خواهد شد.
هر هفته ۳ آموزش ویدیویی در روزهای زوج در کانال قرار داده خواهد شد.
با کانال متلب همراه باشید.
لطفا لینک کانال را هم به اشتراک بگذارید.
کانال برنامهنویسی و کامپیوتر:
@programming_computer_top
هر هفته ۳ آموزش ویدیویی در روزهای زوج در کانال قرار داده خواهد شد.
با کانال متلب همراه باشید.
لطفا لینک کانال را هم به اشتراک بگذارید.
کانال برنامهنویسی و کامپیوتر:
@programming_computer_top
نمونه مثالهای جلسه پنجم آموزش متلب👆
#آموزش_متلب
کانال برنامهنویسی و کامپیوتر:
@programming_computer_top
#آموزش_متلب
کانال برنامهنویسی و کامپیوتر:
@programming_computer_top
Media is too big
VIEW IN TELEGRAM
آموزش ویدیویی دوره مقدماتی نرمافزار متلب
جلسه اول: مقدمه و آشنایی با نرمافزار متلب
زمان: ۱۳:۱۲
قیمت: رایگان
مدرس: آقای مهندس شعبانی
#آموزش_ویدیویی_مقدماتی
کانال برنامهنویسی و کامپیوتر:
@programming_computer_top
جلسه اول: مقدمه و آشنایی با نرمافزار متلب
زمان: ۱۳:۱۲
قیمت: رایگان
مدرس: آقای مهندس شعبانی
#آموزش_ویدیویی_مقدماتی
کانال برنامهنویسی و کامپیوتر:
@programming_computer_top
Media is too big
VIEW IN TELEGRAM
آموزش ویدیویی دوره مقدماتی نرمافزار متلب
جلسه دوم: نامگذاری متغیرها، دستورات ابتدایی و استفاده از help متلب
زمان: ۲۱:۵۳
قیمت: رایگان
مدرس: آقای مهندس شعبانی
#آموزش_ویدیویی_مقدماتی
کانال برنامهنویسی و کامپیوتر:
@programming_computer_top
جلسه دوم: نامگذاری متغیرها، دستورات ابتدایی و استفاده از help متلب
زمان: ۲۱:۵۳
قیمت: رایگان
مدرس: آقای مهندس شعبانی
#آموزش_ویدیویی_مقدماتی
کانال برنامهنویسی و کامپیوتر:
@programming_computer_top
This media is not supported in your browser
VIEW IN TELEGRAM
آموزش ویدیویی دوره مقدماتی نرمافزار متلب
تیزر جلسه سوم: محاسبات ریاضیاتی، استفاده از توابع داخلی ریاضیاتی متلب، فرمتهای متلب، دستورات کلی مورد نیاز
زمان: ۲۶:۲۳
قیمت: ۲۰۰۰ تومان
مدرس: آقای مهندس شعبانی
جهت دانلود فایل کامل به لینک زیر مراجعه نمایید.
https://zarinp.al/298290
#آموزش_ویدیویی_مقدماتی
کانال برنامهنویسی و کامپیوتر:
@programming_computer_top
تیزر جلسه سوم: محاسبات ریاضیاتی، استفاده از توابع داخلی ریاضیاتی متلب، فرمتهای متلب، دستورات کلی مورد نیاز
زمان: ۲۶:۲۳
قیمت: ۲۰۰۰ تومان
مدرس: آقای مهندس شعبانی
جهت دانلود فایل کامل به لینک زیر مراجعه نمایید.
https://zarinp.al/298290
#آموزش_ویدیویی_مقدماتی
کانال برنامهنویسی و کامپیوتر:
@programming_computer_top
تمرین مربوط به تابع نویسی)
برنامهای برای محاسبه مساحت یک چند ضلعی منتظم بنویسید.
برنامه را به صورت تابعی بنویسید که ورودیهای آن شامل تعداد اضلاع و اندازه اضلاع باشد.(به این صورت که مثلا اگر ورودی اول عدد ۳ باشد، ورودی دوم هم یک عدد میباشد که اندازه ضلعها را نشان میدهد.) این نکته را رعایت کنید که اگر تعداد ضلعها از ۳ کمتر باشد در خروجی یک خطا نمایش دهد. سپس خروجی تابع، مساحت باشد.
کانال برنامهنویسی و کامپیوتر:
@programming_computer_top
برنامهای برای محاسبه مساحت یک چند ضلعی منتظم بنویسید.
برنامه را به صورت تابعی بنویسید که ورودیهای آن شامل تعداد اضلاع و اندازه اضلاع باشد.(به این صورت که مثلا اگر ورودی اول عدد ۳ باشد، ورودی دوم هم یک عدد میباشد که اندازه ضلعها را نشان میدهد.) این نکته را رعایت کنید که اگر تعداد ضلعها از ۳ کمتر باشد در خروجی یک خطا نمایش دهد. سپس خروجی تابع، مساحت باشد.
کانال برنامهنویسی و کامپیوتر:
@programming_computer_top
کد تمرین شماره ۲:
clear all
clc
%%
first_mon = input(' first_money = ');
mon = input(' monthes = ');
yea = (mon - mod(mon,12))/12;
pro_per(1) = 1;
pro_mon(1) = 0;
pro_tot(1) = first_mon;
for i = 2:mon
if mod(i,12) ~= 0
if first_mon < 50000000
pro_per(i) = i^(1/3) + ((i-mod(i,12))/12);
pro_mon(i) = pro_tot(i-1)*pro_per(i)/100;
pro_tot(i) = pro_tot(i-1) + pro_mon(i);
elseif first_mon > 50000000 & first_mon < 200000000
pro_per(i) = sqrt(i) + ((i-mod(i,12))/12);
pro_mon(i) = pro_tot(i-1)*pro_per(i)/100;
pro_tot(i) = pro_tot(i-1) + pro_mon(i);
elseif first_mon > 200000000
pro_per(i) = i + ((i-mod(i,12))/12);
pro_mon(i) = pro_tot(i-1)*pro_per(i)/100;
pro_tot(i) = pro_tot(i-1) + pro_mon(i);
end
elseif mod(i,12) == 0
if first_mon < 50000000
pro_per(i) = i^(1/3) + floor((i-1)/12);
pro_mon(i) = pro_tot(i-1)*pro_per(i)/100;
pro_tot(i) = pro_tot(i-1) + pro_mon(i);
elseif first_mon > 50000000 & first_mon < 200000000
pro_per(i) = sqrt(i) + floor((i-1)/12);
pro_mon(i) = pro_tot(i-1)*pro_per(i)/100;
pro_tot(i) = pro_tot(i-1) + pro_mon(i);
elseif first_mon > 200000000
pro_per(i) = i + floor((i-1)/12);
pro_mon(i) = pro_tot(i-1)*pro_per(i)/100;
pro_tot(i) = pro_tot(i-1) + pro_mon(i);
end
end
end
لطفا این کد را خط به خط برای خود تحلیل نمایید.
کانال برنامهنویسی و کامپیوتر:
@programming_computer_top
clear all
clc
%%
first_mon = input(' first_money = ');
mon = input(' monthes = ');
yea = (mon - mod(mon,12))/12;
pro_per(1) = 1;
pro_mon(1) = 0;
pro_tot(1) = first_mon;
for i = 2:mon
if mod(i,12) ~= 0
if first_mon < 50000000
pro_per(i) = i^(1/3) + ((i-mod(i,12))/12);
pro_mon(i) = pro_tot(i-1)*pro_per(i)/100;
pro_tot(i) = pro_tot(i-1) + pro_mon(i);
elseif first_mon > 50000000 & first_mon < 200000000
pro_per(i) = sqrt(i) + ((i-mod(i,12))/12);
pro_mon(i) = pro_tot(i-1)*pro_per(i)/100;
pro_tot(i) = pro_tot(i-1) + pro_mon(i);
elseif first_mon > 200000000
pro_per(i) = i + ((i-mod(i,12))/12);
pro_mon(i) = pro_tot(i-1)*pro_per(i)/100;
pro_tot(i) = pro_tot(i-1) + pro_mon(i);
end
elseif mod(i,12) == 0
if first_mon < 50000000
pro_per(i) = i^(1/3) + floor((i-1)/12);
pro_mon(i) = pro_tot(i-1)*pro_per(i)/100;
pro_tot(i) = pro_tot(i-1) + pro_mon(i);
elseif first_mon > 50000000 & first_mon < 200000000
pro_per(i) = sqrt(i) + floor((i-1)/12);
pro_mon(i) = pro_tot(i-1)*pro_per(i)/100;
pro_tot(i) = pro_tot(i-1) + pro_mon(i);
elseif first_mon > 200000000
pro_per(i) = i + floor((i-1)/12);
pro_mon(i) = pro_tot(i-1)*pro_per(i)/100;
pro_tot(i) = pro_tot(i-1) + pro_mon(i);
end
end
end
لطفا این کد را خط به خط برای خود تحلیل نمایید.
کانال برنامهنویسی و کامپیوتر:
@programming_computer_top
سلام
ممنون از کانال خوبتون
آیا میتونم دادههایی که در یک فایل اکسل دارم رو بدون نوشتن تکتک آنها مستقیم در متلب لود کنم؟
پاسخ:
با استفاده از دستور xlsread میتوان فایلهای اکسل را در متلب فراخوانی کرد. شکل استفاده از این دستور به صورت زیر میباشد.
xlsread('filename',sheet,object)
در این دستور به جای filename باید نام فایل اکسلی را که میخواهید بارگذاری کنید، وارد نمایید.
در صورتی که فایل اکسل شما فقط از یک صفحه و یک ماتریس داخل آن صفحه تشکیل شده باشد فقط کافی است به عنوان مثال از دستور زیر استفاده کنید
xlsread('data.xlsx);
در اینجا به عنوان مثال یک فایل اکسل با نام data را فراخوانی نمودیم. فقط پسوند فایلهای اکسل ممکن است به دو شیوه xlsx یا xls باشند.
در صورتی که فایل شما دارای چندین صفحه باشد، میتوانید با دستور زیر به عنوان مثال، هر صفحه را جداگانه در یک متغیر ذخیره نمایید.
a = xlsread('data.xlsx',1);
b = xlsread('data.xlsx',2);
در صورتی که داخل هر صفحه چندین ماتریس هم داشته باشین، با توجه به نامی که برای هر کدام گذاشتین میتوانید آنها را بارگذاری نمایید. برای مثال به صورت زیر
a = xlsread('data.xlsx',1,mat1);
b = xlsread('data.xlsx,1',mat2);
کانال برنامهنویسی و کامپیوتر:
@programming_computer_top
ممنون از کانال خوبتون
آیا میتونم دادههایی که در یک فایل اکسل دارم رو بدون نوشتن تکتک آنها مستقیم در متلب لود کنم؟
پاسخ:
با استفاده از دستور xlsread میتوان فایلهای اکسل را در متلب فراخوانی کرد. شکل استفاده از این دستور به صورت زیر میباشد.
xlsread('filename',sheet,object)
در این دستور به جای filename باید نام فایل اکسلی را که میخواهید بارگذاری کنید، وارد نمایید.
در صورتی که فایل اکسل شما فقط از یک صفحه و یک ماتریس داخل آن صفحه تشکیل شده باشد فقط کافی است به عنوان مثال از دستور زیر استفاده کنید
xlsread('data.xlsx);
در اینجا به عنوان مثال یک فایل اکسل با نام data را فراخوانی نمودیم. فقط پسوند فایلهای اکسل ممکن است به دو شیوه xlsx یا xls باشند.
در صورتی که فایل شما دارای چندین صفحه باشد، میتوانید با دستور زیر به عنوان مثال، هر صفحه را جداگانه در یک متغیر ذخیره نمایید.
a = xlsread('data.xlsx',1);
b = xlsread('data.xlsx',2);
در صورتی که داخل هر صفحه چندین ماتریس هم داشته باشین، با توجه به نامی که برای هر کدام گذاشتین میتوانید آنها را بارگذاری نمایید. برای مثال به صورت زیر
a = xlsread('data.xlsx',1,mat1);
b = xlsread('data.xlsx,1',mat2);
کانال برنامهنویسی و کامپیوتر:
@programming_computer_top
This media is not supported in your browser
VIEW IN TELEGRAM
آموزش ویدیویی دوره مقدماتی نرمافزار متلب
تیزر جلسه چهارم: آرایهها، آدرسدهی آرایهها، دسترسی به المانها در آرایهها
زمان: ۲۱:۴۹
قیمت: ۲۰۰۰ تومان
مدرس: آقای مهندس شعبانی
جهت دانلود فایل کامل به لینک زیر مراجعه نمایید.
https://zarinp.al/299045
#آموزش_ویدیویی_مقدماتی
کانال برنامهنویسی و کامپیوتر:
@programming_computer_top
تیزر جلسه چهارم: آرایهها، آدرسدهی آرایهها، دسترسی به المانها در آرایهها
زمان: ۲۱:۴۹
قیمت: ۲۰۰۰ تومان
مدرس: آقای مهندس شعبانی
جهت دانلود فایل کامل به لینک زیر مراجعه نمایید.
https://zarinp.al/299045
#آموزش_ویدیویی_مقدماتی
کانال برنامهنویسی و کامپیوتر:
@programming_computer_top
مثال) برنامهای بنویسید که یک عدد مختلط از کاربر دریافت نموده و محاسبات زیر را بر روی آن انجام دهد.
۱-اندازه عدد مختلط با استفاده از دستور متلب و با روش ریاضی
۲-حاصلضرب عدد حقیقی در عدد موهومی
۳-زاویه عدد مختلط برحسب درجه
پاسخ) کد این مثال به صورت زیر میباشد.
clear all
clc
% 'A' is a complex number
A = inout(' A = ');
B = abs(A);
C = sqrt((real(A)^2) + (imag(A)^2));
D = real(A)*imag(A);
E = angle(A)*180/pi;
توضیحات:
در این مثال از دستور clear all برای پاک کردن صفحه کاری(workspace) استفاده شده است. سپس از دستور clc برای پاک کردن پنجره اصلی(command window) استفاده شده است. اگر در یک خط از ممیز (%) استفاده شود، دیگر کامپایلر متلب آن خط را اجرا نخواهد کرد و آن خط به صورت توضیحات خواهد بود. در هنگام کدنویسی در متلب هم اگر دقت کرده باشید بعد از گذاشتن علامت ممیز، توضیحات جلوی آن خط به رنگ سبز درخواهد آمد.
سپس با دستور input ورودی را از کاربر دریافت نموده و در متغیر A ذخیره میکنیم. همانند کد زیر:
A = inout(' A = ');
با دستور abs در متلب میتوان اندازه یک عدد مختلط را محاسبه نمود. سپس آن را در متغیر B ذخیره میکنیم. همانند کد زیر:
B = abs(A);
برای به دست آوردن اندازه یک عدد مختلط به روش ریاضی قسمتهای حقیقی و موهومی عدد مختلط را به توان ۲ رسانده و با هم جمع میکنیم، سپس از آن رادیکال میگیریم. قسمت حقیقی یک عدد مختلط با دستور real و قسمت موهومی با دستور imag قابل محاسبه خواهد بود. همچنین از دستور sqrt برای رادیکال (جذر) گرفتن استفاده شده است. سپس آن را در متغیر C ذخیره میکنیم. همانند کد زیر:
C = sqrt((real(A)^2) + (imag(A)^2));
سپس حاصلضرب عدد حقیقی در عدد موهومی را بدست آورده و در متغیر D ذخیره میکنیم. همانند کد زیر:
D = real(A)*imag(A);
برای به دست آوردن زاویه یک عدد مختلط از دستور angle استفاده میشود. اما توجه داشته باشید که متلب این زاویه را به صورت رادیان برمیگرداند. برای تبدیل نمودن رادیان به درجه، زاویه را در ۱۸۰ ضرب و بر عدد پی تقسیم میکنیم. عدد پی در متلب به صورت pi نوشته میشود. سپس آن را در متغیر E ذخیره میکنیم. همانند کد زیر:
E = angle(A)*180/pi;
کانال برنامهنویسی و کامپیوتر:
@programming_computer_top
۱-اندازه عدد مختلط با استفاده از دستور متلب و با روش ریاضی
۲-حاصلضرب عدد حقیقی در عدد موهومی
۳-زاویه عدد مختلط برحسب درجه
پاسخ) کد این مثال به صورت زیر میباشد.
clear all
clc
% 'A' is a complex number
A = inout(' A = ');
B = abs(A);
C = sqrt((real(A)^2) + (imag(A)^2));
D = real(A)*imag(A);
E = angle(A)*180/pi;
توضیحات:
در این مثال از دستور clear all برای پاک کردن صفحه کاری(workspace) استفاده شده است. سپس از دستور clc برای پاک کردن پنجره اصلی(command window) استفاده شده است. اگر در یک خط از ممیز (%) استفاده شود، دیگر کامپایلر متلب آن خط را اجرا نخواهد کرد و آن خط به صورت توضیحات خواهد بود. در هنگام کدنویسی در متلب هم اگر دقت کرده باشید بعد از گذاشتن علامت ممیز، توضیحات جلوی آن خط به رنگ سبز درخواهد آمد.
سپس با دستور input ورودی را از کاربر دریافت نموده و در متغیر A ذخیره میکنیم. همانند کد زیر:
A = inout(' A = ');
با دستور abs در متلب میتوان اندازه یک عدد مختلط را محاسبه نمود. سپس آن را در متغیر B ذخیره میکنیم. همانند کد زیر:
B = abs(A);
برای به دست آوردن اندازه یک عدد مختلط به روش ریاضی قسمتهای حقیقی و موهومی عدد مختلط را به توان ۲ رسانده و با هم جمع میکنیم، سپس از آن رادیکال میگیریم. قسمت حقیقی یک عدد مختلط با دستور real و قسمت موهومی با دستور imag قابل محاسبه خواهد بود. همچنین از دستور sqrt برای رادیکال (جذر) گرفتن استفاده شده است. سپس آن را در متغیر C ذخیره میکنیم. همانند کد زیر:
C = sqrt((real(A)^2) + (imag(A)^2));
سپس حاصلضرب عدد حقیقی در عدد موهومی را بدست آورده و در متغیر D ذخیره میکنیم. همانند کد زیر:
D = real(A)*imag(A);
برای به دست آوردن زاویه یک عدد مختلط از دستور angle استفاده میشود. اما توجه داشته باشید که متلب این زاویه را به صورت رادیان برمیگرداند. برای تبدیل نمودن رادیان به درجه، زاویه را در ۱۸۰ ضرب و بر عدد پی تقسیم میکنیم. عدد پی در متلب به صورت pi نوشته میشود. سپس آن را در متغیر E ذخیره میکنیم. همانند کد زیر:
E = angle(A)*180/pi;
کانال برنامهنویسی و کامپیوتر:
@programming_computer_top
This media is not supported in your browser
VIEW IN TELEGRAM
آموزش ویدیویی دوره مقدماتی نرمافزار متلب
تیزر جلسه پنجم: عملیات با آرایهها، عملیات نظیر به نظیر و ماتریسهای خاص
زمان: ۲۲:۱۸
قیمت: ۲۰۰۰ تومان
مدرس: آقای مهندس شعبانی
جهت دانلود فایل کامل به لینک زیر مراجعه نمایید.
https://zarinp.al/299487
#آموزش_ویدیویی_مقدماتی
کانال برنامهنویسی و کامپیوتر:
@programming_computer_top
تیزر جلسه پنجم: عملیات با آرایهها، عملیات نظیر به نظیر و ماتریسهای خاص
زمان: ۲۲:۱۸
قیمت: ۲۰۰۰ تومان
مدرس: آقای مهندس شعبانی
جهت دانلود فایل کامل به لینک زیر مراجعه نمایید.
https://zarinp.al/299487
#آموزش_ویدیویی_مقدماتی
کانال برنامهنویسی و کامپیوتر:
@programming_computer_top
تمرین) برنامهای بنویسید که یک عدد از کاربر دریافت نموده و خروجی زیر را در command window نمایش دهد.
sin(x) + (1/ln(x^2)) + (x^(1/5)) +
((sinh(x^3))^2) + e^x
سپس هر کدام از عبارات جمع شده بالا را به سمت نزدیکترین عدد گرد نموده و با مقدار محاسبه شده در بالا مقایسه نمایید.
کد تمرین همراه با توضیحات پنجشنبه در کانال قرار میگیرد.
کانال برنامهنویسی و کامپیوتر:
@programming_computer_top
sin(x) + (1/ln(x^2)) + (x^(1/5)) +
((sinh(x^3))^2) + e^x
سپس هر کدام از عبارات جمع شده بالا را به سمت نزدیکترین عدد گرد نموده و با مقدار محاسبه شده در بالا مقایسه نمایید.
کد تمرین همراه با توضیحات پنجشنبه در کانال قرار میگیرد.
کانال برنامهنویسی و کامپیوتر:
@programming_computer_top
This media is not supported in your browser
VIEW IN TELEGRAM
آموزش ویدیویی دوره مقدماتی نرمافزار متلب
تیزر جلسه ششم: توابع داخلی متلب برای کار با آرایهها، توابع داخلی متلب مربوط به آمار
زمان: ۲۳:۵۴
قیمت: ۲۰۰۰ تومان
مدرس: آقای مهندس شعبانی
جهت دانلود فایل کامل به لینک زیر مراجعه نمایید.
https://zarinp.al/299949
#آموزش_ویدیویی_مقدماتی
کانال برنامهنویسی و کامپیوتر:
@programming_computer_top
تیزر جلسه ششم: توابع داخلی متلب برای کار با آرایهها، توابع داخلی متلب مربوط به آمار
زمان: ۲۳:۵۴
قیمت: ۲۰۰۰ تومان
مدرس: آقای مهندس شعبانی
جهت دانلود فایل کامل به لینک زیر مراجعه نمایید.
https://zarinp.al/299949
#آموزش_ویدیویی_مقدماتی
کانال برنامهنویسی و کامپیوتر:
@programming_computer_top
PROGRAMMING - COMPUTER
تمرین) برنامهای بنویسید که یک عدد از کاربر دریافت نموده و خروجی زیر را در command window نمایش دهد. sin(x) + (1/ln(x^2)) + (x^(1/5)) + ((sinh(x^3))^2) + e^x سپس هر کدام از عبارات جمع شده بالا را به سمت نزدیکترین عدد گرد نموده و با مقدار محاسبه…
پاسخ تمرین)
کد مربوط به این تمرین که روی آن ریپلای زده شده است به صورت زیر میباشد.
clear all
clc
%%
% 'x' is a input number
x = input(' x = ');
clc
y1 = sin(x) + (1/log(x^2)) +...
(x^(1/5)) + ((sinh(x^3))^2) + ... exp(x)
y2 = round(sin(x)) + round(...
(1/log(x^2))) + round((x^(1/5))) +... round(((sinh(x^3))^2)) + ... round(exp(x))
comparision = abs(y1 - y2)
توضیحات) دو خط اول برنامه، برای عدم تداخل با برنامههای قبلی اجرا شده میباشد. از این به بعد کاربرد این دو کد توضیح داده نمیشود. در مثالهای قبلی توضیح کامل آنها داده شده است.
کاربرد ممیز هم در مثالهای قبلی کاملا توضیح داده شده است و نیازی به توضیح دوباره نمیباشد.
y1 = sin(x) + (1/log(x^2)) +...
(x^(1/5)) + ((sinh(x^3))^2) + ... exp(x)
در کد بالا از sin برای محاسبه سینوس یک زاویه استفاده میشود. در متلب مقدار x را به صورت رادیان در نظر میگیرد. در جمله دوم از کد log برای محاسبه لگاریتم طبیعی یا ln استفاده میشود. در صورتی که بخواهید لگاریتم در مبنای 10 را محاسبه نمایید از کد log10 استفاده میکنید. سپس در جمله سوم فرجه پنجم عدد ورودی محاسبه شده است. برای محاسبه فرجهها، توان عدد داخل فرجه را بر عدد فرجه تقسیم و به صورت توان آن عدد مینویسیم.
در جمله چهارم سینوس هایپربولیک عدد با دستور sinh محاسبه میشود.
و در جمله آخر با دستور exp مقدار عدد نپر به توان عدد داخل دستور محاسبه میشود.
سپس در کدهای زیر با استفاده از دستور round برای هر 5 جمله، آنها را به سمت نزدیکترین عدد صحیح گرد میکنیم.
y2 = round(sin(x)) + round(...
(1/log(x^2))) + round((x^(1/5))) +... round(((sinh(x^3))^2)) + ... round(exp(x))
در نهایت برای مقایسه دو عدد y1 و y2 قدر مطلق اختلاف آنها را به دست میآوریم. در زیر ابتدا اختلاف آنها به دست آمده و سپس با دستور abs قدرمطلق آنها محاسبه میشود.
comparision = abs(y1 - y2)
توجه داشته باشید که دستور abs اندازه یک عدد مختلط را در حالت کلی برمیگرداند و چون اندازه یک عدد مختلط برابر با رادیکال از جمع توان دوم عدد حقیقی و توان دوم عدد موهومی میباشد و اندازه یک عدد مختلط همیشه مثبت میباشد و عدد حقیقی هم حالت خاصی از عدد مختلط با اندازه موهومی صفر میباشد، بنابراین دستور abs در اعداد حقیقی حکم قدرمطلق را دارد.
کانال برنامهنویسی و کامپیوتر:
@programming_computer_top
کد مربوط به این تمرین که روی آن ریپلای زده شده است به صورت زیر میباشد.
clear all
clc
%%
% 'x' is a input number
x = input(' x = ');
clc
y1 = sin(x) + (1/log(x^2)) +...
(x^(1/5)) + ((sinh(x^3))^2) + ... exp(x)
y2 = round(sin(x)) + round(...
(1/log(x^2))) + round((x^(1/5))) +... round(((sinh(x^3))^2)) + ... round(exp(x))
comparision = abs(y1 - y2)
توضیحات) دو خط اول برنامه، برای عدم تداخل با برنامههای قبلی اجرا شده میباشد. از این به بعد کاربرد این دو کد توضیح داده نمیشود. در مثالهای قبلی توضیح کامل آنها داده شده است.
کاربرد ممیز هم در مثالهای قبلی کاملا توضیح داده شده است و نیازی به توضیح دوباره نمیباشد.
y1 = sin(x) + (1/log(x^2)) +...
(x^(1/5)) + ((sinh(x^3))^2) + ... exp(x)
در کد بالا از sin برای محاسبه سینوس یک زاویه استفاده میشود. در متلب مقدار x را به صورت رادیان در نظر میگیرد. در جمله دوم از کد log برای محاسبه لگاریتم طبیعی یا ln استفاده میشود. در صورتی که بخواهید لگاریتم در مبنای 10 را محاسبه نمایید از کد log10 استفاده میکنید. سپس در جمله سوم فرجه پنجم عدد ورودی محاسبه شده است. برای محاسبه فرجهها، توان عدد داخل فرجه را بر عدد فرجه تقسیم و به صورت توان آن عدد مینویسیم.
در جمله چهارم سینوس هایپربولیک عدد با دستور sinh محاسبه میشود.
و در جمله آخر با دستور exp مقدار عدد نپر به توان عدد داخل دستور محاسبه میشود.
سپس در کدهای زیر با استفاده از دستور round برای هر 5 جمله، آنها را به سمت نزدیکترین عدد صحیح گرد میکنیم.
y2 = round(sin(x)) + round(...
(1/log(x^2))) + round((x^(1/5))) +... round(((sinh(x^3))^2)) + ... round(exp(x))
در نهایت برای مقایسه دو عدد y1 و y2 قدر مطلق اختلاف آنها را به دست میآوریم. در زیر ابتدا اختلاف آنها به دست آمده و سپس با دستور abs قدرمطلق آنها محاسبه میشود.
comparision = abs(y1 - y2)
توجه داشته باشید که دستور abs اندازه یک عدد مختلط را در حالت کلی برمیگرداند و چون اندازه یک عدد مختلط برابر با رادیکال از جمع توان دوم عدد حقیقی و توان دوم عدد موهومی میباشد و اندازه یک عدد مختلط همیشه مثبت میباشد و عدد حقیقی هم حالت خاصی از عدد مختلط با اندازه موهومی صفر میباشد، بنابراین دستور abs در اعداد حقیقی حکم قدرمطلق را دارد.
کانال برنامهنویسی و کامپیوتر:
@programming_computer_top
کار با متلب)
در اینجا میخواهیم به صورت سرگرمی با استفاده از دستورات خود متلب، یکی از دستورات دیگر متلب را بنویسیم. دستورات باید با هم در یک راستای موضوعی باشند.
در زیر میخواهیم با استفاده از دستورات متلب، کد دستور size را در متلب بنویسیم.
فرض میکنیم ما دستور length را میدانیم، اما دستور size را نمیدانیم، به صورت زیر عمل میکنیم.
فرض میکنیم یک ماتریس با نام A داریم.
sizes_of_A = [length(:,1),length(1;:)]
در این دستور، ما یک بردار دوتایی که تعداد سطرها و ستونهای A را برمیگرداند، تشکیل دادهایم. در درایه اول، با استفاده از دستور length، طول بردار ستون اول ماتریس A را بدست میآوریم. ستون اول دارای تعداد سطرهایی به اندازه ماتریس A و یک ستون میباشد. چون دستور length بیشترین مقدار سطر یا ستون را برمیگرداند، بنابراین تعداد سطرها را برمیگرداند و از اینرو تعداد سطرهای A مشخص میشود.
سپس برای درایه دوم نیز به همین ترتیب، با استفاده از دستور length, طول بردار سطر اول ماتریس A را مییابیم. در این بردار تعداد سطرها یک و تعداد ستونها برابر تعداد ستونهای A میباشد، بنابراین تعداد ستونهای A برابر تعداد ستونهای این بردار میشود.
به این ترتیب با استفاده از دستور length به دستور size رسیدیم.
کانال برنامهنویسی و کامپیوتر:
@programming_computer_top
در اینجا میخواهیم به صورت سرگرمی با استفاده از دستورات خود متلب، یکی از دستورات دیگر متلب را بنویسیم. دستورات باید با هم در یک راستای موضوعی باشند.
در زیر میخواهیم با استفاده از دستورات متلب، کد دستور size را در متلب بنویسیم.
فرض میکنیم ما دستور length را میدانیم، اما دستور size را نمیدانیم، به صورت زیر عمل میکنیم.
فرض میکنیم یک ماتریس با نام A داریم.
sizes_of_A = [length(:,1),length(1;:)]
در این دستور، ما یک بردار دوتایی که تعداد سطرها و ستونهای A را برمیگرداند، تشکیل دادهایم. در درایه اول، با استفاده از دستور length، طول بردار ستون اول ماتریس A را بدست میآوریم. ستون اول دارای تعداد سطرهایی به اندازه ماتریس A و یک ستون میباشد. چون دستور length بیشترین مقدار سطر یا ستون را برمیگرداند، بنابراین تعداد سطرها را برمیگرداند و از اینرو تعداد سطرهای A مشخص میشود.
سپس برای درایه دوم نیز به همین ترتیب، با استفاده از دستور length, طول بردار سطر اول ماتریس A را مییابیم. در این بردار تعداد سطرها یک و تعداد ستونها برابر تعداد ستونهای A میباشد، بنابراین تعداد ستونهای A برابر تعداد ستونهای این بردار میشود.
به این ترتیب با استفاده از دستور length به دستور size رسیدیم.
کانال برنامهنویسی و کامپیوتر:
@programming_computer_top
سوال ارسالی از اعضای کانال)
یک تابع پالس یک بعدی ایجاد کنید ، با استفاده از رابطه ی تبدیل فوریه ثابت کنید تبدیل فوریه ی یک تابع پالس یک بعدی، یک تابع sinc است.
دستور لازم برای ایجاد تابع پله heaviside هست. حال اگر میخواهید یک تابع پالس ایجاد کنید مثلا به صورت زیر
F = u(t) - u(t-2);
دوتا تابع پله را از هم کم میکنید.
مثلا برای ۱۰۰ ثانیه ما میخواهیم تبدیل فوریه تابع بالا را بدست آوریم، کد آن به صورت زیر میباشد.
clear all
clc
t = 0:0.01:100;
F = heaviside(t) - heaviside(t-2);
fft_F = fft(F);
abs_fft_F = abs(fft_F);
plot(abs_fft_F)
در این کد، ابتدا t را بین صفر تا ۱۰۰ ثانیه تعریف میکنیم. سپس با دستور heaviside تابع پله را ایجاد و با تفریق دوتا از این پلهها تابع پالس تشکیل میدهیم. سپس با دستور fft تبدیل فوریه میگیریم. در خط بعدی چون تبدیل فوریه به صورت مختلط است، اندازه آن را با دستور abs محاسبه میکنیم. درنهایت با دستور plot آن را رسم مینماییم.
کانال برنامهنویسی و کامپیوتر:
@programming_computer_top
یک تابع پالس یک بعدی ایجاد کنید ، با استفاده از رابطه ی تبدیل فوریه ثابت کنید تبدیل فوریه ی یک تابع پالس یک بعدی، یک تابع sinc است.
دستور لازم برای ایجاد تابع پله heaviside هست. حال اگر میخواهید یک تابع پالس ایجاد کنید مثلا به صورت زیر
F = u(t) - u(t-2);
دوتا تابع پله را از هم کم میکنید.
مثلا برای ۱۰۰ ثانیه ما میخواهیم تبدیل فوریه تابع بالا را بدست آوریم، کد آن به صورت زیر میباشد.
clear all
clc
t = 0:0.01:100;
F = heaviside(t) - heaviside(t-2);
fft_F = fft(F);
abs_fft_F = abs(fft_F);
plot(abs_fft_F)
در این کد، ابتدا t را بین صفر تا ۱۰۰ ثانیه تعریف میکنیم. سپس با دستور heaviside تابع پله را ایجاد و با تفریق دوتا از این پلهها تابع پالس تشکیل میدهیم. سپس با دستور fft تبدیل فوریه میگیریم. در خط بعدی چون تبدیل فوریه به صورت مختلط است، اندازه آن را با دستور abs محاسبه میکنیم. درنهایت با دستور plot آن را رسم مینماییم.
کانال برنامهنویسی و کامپیوتر:
@programming_computer_top
This media is not supported in your browser
VIEW IN TELEGRAM
آموزش ویدیویی دوره مقدماتی نرمافزار متلب
تیزر جلسه هفتم: تولید اعداد تصادفی، کار با چندجملهایها
زمان: ۲۵:۲۲
قیمت: ۲۰۰۰ تومان
مدرس: آقای مهندس شعبانی
جهت دانلود فایل کامل به لینک زیر مراجعه نمایید.
https://zarinp.al/300248
#آموزش_ویدیویی_مقدماتی
کانال برنامهنویسی و کامپیوتر:
@programming_computer_top
تیزر جلسه هفتم: تولید اعداد تصادفی، کار با چندجملهایها
زمان: ۲۵:۲۲
قیمت: ۲۰۰۰ تومان
مدرس: آقای مهندس شعبانی
جهت دانلود فایل کامل به لینک زیر مراجعه نمایید.
https://zarinp.al/300248
#آموزش_ویدیویی_مقدماتی
کانال برنامهنویسی و کامپیوتر:
@programming_computer_top