matlabkhooneh

پروژه پردازش تصویر با متلب MATLAB ( کد Mat0080 )

1 - برنامه ای بنویسید که یک تصویر را دریافت کند و بدون با استفاده از دستور histogram  متلب ، هیستوگرام یک تصویر را ترسیم کند.

 

2 - برنامه ای بنویسید که یک تصویر را دریافت کند و بدون استفاده از دستورات آماده متلب لبه های آن را مشخص کند. ( هدف پیاده سازی کد یافتن لبه است )

3 - برنامه ای بنویسید که تعداد مهره های گردن در تصاویر x-ray را شمارش کند. ( زبان برنامه نویسی متلب یا پایتون )

4 - برنامه ای بنویسید که عکس طاق بستان ( کرمانشاه ) را نمایش دهد و با کلیک درون طاق عکس شما در آن قرار بگیرد.

5 -  تصویر tif.Chessboardرا در محیط متلب بارگذاری نمایید. ابتدا با استفاده از دستور rgb2gray ،تصویر را از حالت رنگی(سه لایه) به تصویر سطح خاکستری (یک لایه) تبدیل کنید، سپس آن را بصورت double تبدیل کنید و در متغیر img1 ذخیره نمایید.

6 - با استفاده از از روش اتسو Atsu، آستانه ی تصویر را بدست آورید و آن را در متغیر T ذخیره کنید. سپس تصویر را با استفاده از مقدار T ،آستانه گذاری کنید و نتیجه را نشان دهید. (توجه کنید که روش اتسو از هیستوگرام تصویر استفاده می کند). آیا تمام خانه های سفید و سیاه به درستی از هم جدا شده اند؟ اگر اینطور نیست، چه راه حلی دارید؟ نتایج بهبود یافته خود را نمایش دهید.

7 - تصویر jpg.tr را در محیط متلب بارگذاری نمایید. ابتدا با استفاده از دستور rgb2gray ،تصویر را از حالت رنگی(سه لایه) به تصویر سطح خاکستری (یک لایه) تبدیل کنید، سپس آن را با دستور imbinarize به یک تصویر باینری تبدیل کرده و در متغیر img2 ذخیره نمایید. با استفاده از عملگرهای مورفولوژی، دایره ها را از تصویر استخراج نمایید و نتیجه را نمایش دهید.

8 - تصویر jpg.bottles را در محیط متلب بارگذاری نمایید. ابتدا با استفاده از دستور rgb2gray ،تصویر را از حالت رنگی(سه لایه) به تصویر سطح خاکستری (یک لایه) تبدیل کنید، سپس آن را بصورت double تبدیل کنید و در متغیر img3 ذخیره نمایید. با استفاده از روش های آستانه گذاری و مورفولوژی که تاکنون یادگرفته اید، بطری که مقدار کمتری محلول دارد را شناسایی کرده و مساحت مقدار محلول نشان داده شده ی آن را بدست آورید. (برای بدست آوردن مساحت و دیگر ویژگی ها، از دستور regionprops استفاده می شود.) راهنمایی: خروجی آستانه گذاری و سپس مورفولوژی شما باید بصورت شکل زیر باشد:

 9 - الگوریتم آستانه گذاری اتسو Atsu را پیاده سازی کنید و مانند سوال 1 ،تصویر صفحه شطرنجی را با استفاده از الگوریتم خود آستانه گذاری نمایید و با خروجی دستور اتسو Atsu متلب مقایسه نمایید.

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

11 - تصویر T1.bmp را

الف - با نویز Salt & Pepper  با چگالی نویز 0/04

ب - با نویز گوسین با میانگین صفر و واریانس 0/06

ج - نویز Speckle با واریانس 0/06 ترکیب نموده و نتایج فیلترهای زیر به صورت محلی با ماسک هایی به ابعاد 5*5 و 7*7 را بررسی نمایید.

* Alpha Trimmed Mean Filter (d=mask size - 2)

* Median Filter

* Max and Min Filters

12 - به تصویر tire.tif یک فیلتر پایین گذر گوسین دو بعدی با ابعاد 32*32 و انحراف معیار 5 در حوزه فرکانس در دو حالت زیر اعمال نموده و نتایج را مقایسه نمایید.

* without zero padding

* with zero padding

13 - تصویر cameraman.tif را در نظر بگیرید و فیلتر ایده آل ، باتروزث و گوسین بالاگذر با درجه 2 و D0=10,20,40,80 را اعمال نموده و نتایج را هم در حوزه مکان و هم فرکانس شرح دهید.

14 - برنامه ای بنویسید که یک ماتریس به عنوان ورودی دریافت کند و کد گری هر عنصر را جایگزین آن کند.

اعداد زیر ماتریس ستون اول عدد دهدهی است سه ستون بعدی نمایش باینری عدد و سه ستونی بعدی نمایش کد گری و در پایان ستون آخر نمایش دهدهی کد گری است.

15 -  برنامه ای بنویسید که یک تصویر سطوح خاکستری دریافت کند و سطرهای زوج را قرمز و مضرب های 5 را سبز و مضرب 7 را سفید کند (ترتیب را همین ترتیب مشخص شده قرار دهید)

16 - برنامه ای بنویسید که یک تصویر سطوح خاکستری دریافت کند و آرم کانال 3 تلوزیون را با ضریب 0.2 با مقادیر بالای تصویر سمت چپ جمع کند.

17 - برنامه ای بنویسید که یک تصویر سطوح خاکستری را نمایش دهد و تصویر را به صورت رندم به تصویر سفید تبدیل کند، در هر مرحله یک پیکسل را به صورت تصادفی سفید کند.

18 - تصویر arm.tif آرم وسط پرچم ایران را نشان می دهد. برنامه ایی بنویسید که پرچم ایران را در ابعاد 500 * 360 را تولید کند.

19 - فیلتر میانگین در ابعاد 3x3 , 5x5 , 9x9 ,15x15 ,35x35  را برروی تصویر زیر اعمال کنید و خروجی را در یک تصویر نمایش دهید.

20 -

 

| جهت سفارش پروژه و تکلیف پردازش تصویر OpenCV و متلب MATLAB لطفا در شبکه های تلگرام و واتساپ موضوع و سوال مورد نظر را به شماره  989364847193+ ارسال نمایید، تا پس از بررسی هزینه خدمت شما اعلام گردد.

تکالیف متلب MATLAB - بررسی و محاسبه وارون پذیر بودن ماتریس در متلب ( کد Mat0079 )

1 - در این پروژه قصد داریم وارون پذیری هر ماتریس را بدون استفاده ار توابع متلب ( محاسبه به صورت ریاضی ) را بررسی کرده و در صورت وجود مقدار آن را محاسبه کنیم. تابعی بنویسید که یک ماتریس با ابعاد دلخواه دریافت کند و مشخص کند که آیا وارون پذیر است یا خیر و وارون آن را نمایش دهد.

2 - برنامه ای بنویسید که به ازای هر عدد صحیح مثبت که از ورودی دریافت می کند ، خروجی مطابق شکل روبرو ایجاد کند. مثلا برای n=5  خروجی مقابل چاپ گردد.

3 - برنامه ای بنویسید که به ازای هر عدد صحیح مثبت که از ورودی دریافت می کند ، خروجی مطابق شکل روبرو ایجاد کند. مثلا برای n=12 خروجی مقابل چاپ گردد.

 

4 - برنامه ای بنویسید که به ازای دریافت یک زاویه ( بر حسب درجه ) از ورودی ، سینوس آن زاویه را به وسیله رابط مقابل محاسبه کند. ( در رابطه مقابل زاویه بر حسب رادیان است ). عملیات محاسبه بایستی تا زمانی ادامه پیدا کند که اختلاف بین رابطه مقابل با مقدار تابع تعریف شده در متلب sin(x) کوچکتر از 0.0001 گردد. برنامه بایستی در نهایت مقدار سینوس بدست آمده از رابطه مقابل ، سینوس محاسبه شده با تابع sin(x) و مقدار n در رابطه روبرو را نمایش دهد. ( یعنی در چندمین جمله ، اختلاف کمتر از 0.0001 شده است )

\[sin(x)=\sum_{n=0}^{\infty }\frac{(-1)^n}{(2n+1)!}x^{2n+1}\]

5 - برنامه ای بنویسید که مقدار عدد pi را از رابطه روبرو به ازای مقادیر

\[\pi=4\sum_{n=1}^{\infty}(-1)^{(n-1)}(\frac{1}{2n-1})\]

الف ) n=20

ب ) n=50

محاسبه نماید. در هر حالت ، اختلاف عدد pi بدست آمده از رابطه مقابل را با تابع تعریف شده pi در متلب نمایش دهد.

6 - سری مقابل با عددهای 0 و 1 شروع می شود و باقی اعداد سری هر کدام از جمع دو عدد قبل خود به دست می آید. برنامه ای بنویسید که یک عدد صحیح را به عنوان n امین عضو سری از ورودی دریافت کرده و سپس سری مقابل را تا عضو مربوطه نمایش دهد.

7 - دستگاه زیر را به کمک ضرب ماتریسی در MATLAB حل کنید

\[\left\{\begin{matrix} 2x-y+3z=15\\ 5x-6y-z=10\\7x+8y-9z=11\end{matrix}\right.\]

ماتریس ضرایب فوق را در نظر بگیرید و جذر ماتریس A و جذر درایه های ماتریس A را چاپ کنید.

8 - برنامه ای بنویسید که تبدیل یک عدد اعشاری کوچکتر از یک ( عدد اعشاری ) را به مبنای r  ( برای مبنای 2 امتحان کنید)

9 - برنامه ای بنویسید که شماره ی روز تولد یک نفر در سال را  گرفته و روز و ماه تولد را تعیین کند.

10 - برنامه ای بنویسید که دو عدد صحیح و مثبت m و  n را دریافت کرده و ب م م و ک م م آن ها را محاسبه و چاپ کند.

11 - تابعی به نام sumdg بنویسید که عدد طبیعیn را دریافت و تعداد ارقام و نیز مجموع آن ها را محاسبه و چاپ کند.

12 - تابعی به نام c2ten بنویسید که عددی در مبنای 2 را گرفته و معادل آن در مبنای 10 را بنویسد.

13 - تابعی به نام ctwo10 بنویسید که عددی را در مبنای 10 گرفته و معادل آن را در مبنای 2 بنویسد.

14 - برنامه ای بنویسید که 100 عدد را دریافت کند و آن هایی که مضرب 3 هستند به صورت نزولی ( از بزرگ به کوچک ) چاپ کند.

15 - ماتریسی 6 * 4 با درایه های تصادفی ایجاد نمایید و سپس سطرهای زوج این ماتریس را حذف نمایید؟

16 - برداری با 6 درایه از 1 تا 10 با فواصل مساوی تشکیل دهید؟

17 - ماتریسی 5 * 5 ایجاد نمایید که مجموع سطرها، ستون ها و قطر آن با هم برابر باشد؟ بزرگترین و کوچکترین درایه این ماتریس را به دست آورید؟ هم چنین درایه هایی از ماتریس را که اعداد اول هستند مشخص نمایید؟

18 -  یک مخروط را در نظر بگیریم. یک برنامه Matlab بنویسید که حجم مخروط را محاسبه کند. در اینجا فرمولی است که باید از آن استفاده کنید.

\[V=\frac{1}{3}hr^{2}\]

جایی که r شعاع پایه و h ارتفاع است. یک برنامه Matlab بنویسید که حجم مخروط را پیدا کند. برنامه ابتدا باید بررسی کند که r و h هر دو مثبت هستند. دقت نتیجه باید حداکثر 3 رقم اعشاری باشد.

19 - یک برنامه متلب بنویسید که در هنگام درخواست مقدار x و n از کاربر ، مقدار زیر را محاسبه کند.

\[y=\sum_{k=1}^{n}\left ( \frac{2}{x} \right )^{k}\]

20 - معادله زیر را با استفاده از Matlab حل کنید.

\[\left\{\begin{matrix} x_{1}+3x_{2}=19\\ 4x_{1}+2x_{2}+5x_{3}=26\\7x_{2}-10x_{3}=35\end{matrix}\right.\]

21 - نمودار توابع زیر را در فاصله 0 تا 2pi که به 200 قسمت مساوی تقسیم شده ترسیم نمایید

\[exp(x) \;\;\;, \;\; sin(2x)+cos(2x)\;\;\; , \;\;tan(\sqrt {x}))\]

22 برنامه ای بنویسید که یک ماتریس 3 در 3 را از ورودی دریافت کند و مشخص نماید آیا ماتریس متقارن است یا خیر

23 - برنامه ای بنویسید که با گرفتن دو عدد x و y از کاربر ، مقدار تابع f را محاسبه نماید.

\[ f=\left\{\begin{matrix} xy+25&x>0\;\; and \;\; y>0 \\ x^{3}+y^{3}& x<0 \;\; or \;\; y<0\\\end{matrix}\right.\]

24 - برنامه ای بنویسید که تعداد سطر و ستون یک آرایه را از کاربر بگیرد و آرایه خروجی به صورت تصادفی بین 0 تا 9 نمایش دهد.

25 - یک کد محاسباتی بنویسید که یک تابع جدولی را که در یک فایل متنی ذخیره شده است، به عنوان ورودی دریافت کند. سپس اطلاعات آن را مرتب کرده و تشخیص دهد که آیا فاصله بین نقاط آن مساوی می باشد یا مساوی نمی باشد. سپس اگر فاصله نقاط مساوی نباشد، از کاربر سوال کند که از بین دو روش لاگرانژ یا روش تفاضلات تقسیم شده نیوتن از کدام روش برای به دست آوردن چند جمله ای میانیاب استفاده کند و اگر فاصله نقاط مساوی باشد، از کاربر سوال کند که از روش پیشرو نیوتن استفاده کند یا از روش پسرو! سپس جدول تفاضلات (به غیر از روش لاگرانژ) و چند جمله ای میانیاب را به عنوان جواب ارائه دهد. کد باید قابلیت این را داشته باشد که پس از به دست آوردن چند جمله ای میانیاب، مقدار تابع را در هر نقطه دلخواهی در بازه تابع جدولی محاسبه کند.

26 - پروژه های تخصصی درس نرم افزار ریاضی

دانشجویان علوم کامپیوتر از بین پروژه های زیر می توانند یک پروژه به دلخواه انتخاب کنند و با استفاده از متلب MATLAB پیاده سازی کنند.

- مسئله فروشنده دوره گرد

- مسئله n وزیر

- مسئله تعیین کوتاه ترین مسیر از مبدا

- مسئله تعیین یک درخت پوشای کمینه

- مرتب سازی سریع

- مرتب سازی ادغامی

- مرتب سازی حبابی

- مسئله همترازی دنباله ها DNA

- کدگذاری به روش هافمن

- مسئله کوله پشتی صفر و یک

دانشجویان ریاضیات و کاربردها از بین پروژه های زیر می توانند یک پروژه را به دلخواه انتخاب کنند.

- روش درون یابی لاگرانژ

- درون یابی نیوتن

- روش ژاکوبی

- روش نابجایی

- روش نیوتن رافسون

- روش نقطه ثابت

- روش وتری

- تقریب پیشرو و پسرو

- حل مساله بهینه سازی خطی در متلب

27 -

28 -

29 -

30 -

 

| جهت سفارش پروژه ، تکلیف و آموزش سیمولینک Simulink  و  متلب Matlab لطفا در شبکه های تلگرام و واتساپ موضوع و سوال مورد نظر را به شماره  989364847193+ ارسال نمایید، تا پس از بررسی هزینه خدمت شما اعلام گردد.

 

تکالیف متلب MATLAB - بازی MineSweeper در متلب ( کد Mat0078 )

 1 - بازی مین روب Minesweeper

بازی‌های مین‌روب minesweeper  یکی از اولین بازی‌هایی بود که روی کامپیوترها تجربه‌ کردیم. اولین بازی‌ با این شکل و شمایل در سال ۱۹۶۰ منتشر شد و هنوز هم طرفداران خودش را دارد. بازی‌های مین‌روب بر اساس تصمیمات منطقی بازیکن جلو می‌روند که باید تمام مین‌ها را کشف کند و حواسش باشد که روی آن‌ها کلیک نکند. برای این کار باید از اعدادی که روی هرخانه نوشته شده استفاده کنید که نشان می‌دهند چند مین در اطراف آن خانه وجود دارد.

با استفاده از متلب قصد داریم بازی MineSweeper را به دو صورت آنالوگ و گرافیکی پیاده سازی کنیم.

در پیاده سازی آنالوگ ابتدا کاربر درجه سختی و سایز بازی را وارد می کند.

در مرحله بعد دو بازیکن به ترتیب مختصات نقاط دلخواه را وارد می کنند.

اگر مین نباشد علامت درصد را نشان می دهد و نوبت به بازیکن بعدی می رسد.

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

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

در هر مرحله کاربر یک خانه را انتخاب می کند. در صورتی که مین نباشد عبارت Jasti Malakhak نوشته شده و یک واحد به Score افزوده می شود. در صورتی هم که مین باشد عبارت Lose نوشته شده و نقشه کل مین ها نمایش داده می شود.

2 - نمودار sinh , cosh  و tanh  را در یک محور در محدوده ی 1- تا 1 رسم کنید. سپس هر نمودار را با رنگی متفاوت مشخص کرده و برای هر نمودار برچسبی با متن و فلش ( پیکان ) در محل مناسب قرار دهید.

3 - اتحاد زیر را به خاطر آورید. یک نمودار لگاریتمی log-log بر حسب n=10,20,30,...,1000 رسم کنید. از این نمودار چه پیش بینی در مورد رفتار مجانبی دارید.

\[\begin{matrix}e=\displaystyle\lim_{n\to\infty}r_{n}\\\\r_{n}=\left(1+\frac{1}{n}\right)^{n}\end{matrix}\]
 

4 - دو روش نمایش تابع موج دندان اره ای در زیر آورده شده است. با دقت توضیح دهید چرا این دو متفاوت اند.

>> x = [0:7;1:8]; y = [zeros(1,8);ones(1,8)];
>> subplot(211), plot(x,y,'b'), axis equal
>> subplot(212), plot(x(:),y(:),'b'), axis equal

 

 

5 - بازی هرج و مرج را انجام دهید. فرض کنید P1, P2, P3 سه راس یک مثلث باشندو با یک نقطه دلخواه درون مثلث شروع کنید. به صورت اتفاقی یکی ار زئوس مثلث را انتخاب کرده و به اندازه نصف فاصله تا آن راس حرکت کنید. حال از نقطه جدید دوباره همین عمل را تکرار کنید و سعی کنید تا جایی که می توانید ( از نظر ریاضی تا بی نهایت و از نظر فیزیکی تا اعداد بسیار بزرگ ) ادامه دهید. اگر موقعیت هر نقطه از شکل را علامت گذاری کنید، الگوی تکرار شونده Fractal  را خواهید یافت.

6 - تفاوت کیفی دو نمودار حاصل از نمایش های زیر را توصیف کنید.

الف ) 100 عدد ماتریس اتفاثی با فرمان randn(100) ایجاد کنید و مقادیر ویژه آن ها را در یک نمودار بصورت نقاطی نمایش دهید. ( باید 10000 نقطه داشته باشید ). از فرمان axis equal برای تغییر منظر دید به حالت یک به یک استفاده کنید.

ب ) حالت الف را با ایجاد یک نمودار جدید تکرار کنید اما این بار 100 ماتریس از اعداد اتفاقی مختلط با دستور complex(randn(100),rand(100) ایجاد کنید.

7 - نمودار رویه های زیر را در محدوده ی داده شده رسم کنید.

\[(x^{2}+3y^{2})e^{-x^2-y^2}\;\;,\;\;\left|x\right|\leq 3\;\;,\left|y\right|\leq 3\]
\[\frac{-3y}{(x^2+y^2+1)}\;\;,\;\;\left|x\right|\leq 2\;\;,\left|y\right|\leq 4\]
\[\left|x\right|+\left|y\right|\;\;,\;\;\left|x\right|\leq 1\;\;,\left|y\right|\leq 1\]

8 - نمودار کانتوری توابع داده شده در مساله قبل را رسم کنید.

9 - یک نمودار کانتوری برای تابع زیر رسم کنید.

\[f(x,y)=e^{-(4x^2+2y^2)}cos(8x)+e^{-3[(2x+1/2)+2y^2]}\;\;,\;\;\left|x\right|\leq 1.5\;\;,\left|y\right|\leq 2.5\]

10 - نمودار رویه ای که با تابع زیر در محدوده مشخص شده را رسم کنید.

\[\begin{matrix}x=u[3+cos(v)]cos(2u)\;,\;y=u[3+cos(v)]sin(2u)\;,\;z=u[sin(v)-3]\\0\leq u\leq 2\pi\\0\leq v\leq 2\pi\\\end{matrix}\]

جهت سفارش پروژه ، تکلیف و آموزش سیمولینک Simulink  و  متلب Matlab لطفا در شبکه های تلگرام و واتساپ موضوع و سوال مورد نظر را به شماره  989364847193+ ارسال نمایید، تا پس از بررسی هزینه خدمت شما اعلام گردد.

تکالیف متلب MATLAB - استفاد از دو ( یا چند ) تابع همزمان در یک m-file متلب

- آموزش برنامه نویسی MATLAB

- آیا می توان در یک m file متلب ، دو یا چند تابع را فراخوانی کرد؟

بله امکان استفاده از چند تابع وجود دارد اما باید به نکات زیر توجه داشت

1 - انتهای هر تابع حتما end نوشته شود.

2 - اسم m file باید با منطبق بر اسم اولین تابع باشد.

3 - ترتیب نوشتن و اجرایی تابع ها اهمیتی ندارد ، ولی در سرعت اجرای برنامه موثر است.

جهت سفارش پروژه ، تکلیف و آموزش سیمولینک Simulink  و  متلب Matlab لطفا در شبکه های تلگرام و واتساپ موضوع و سوال مورد نظر را به شماره  989364847193+ ارسال نمایید، تا پس از بررسی هزینه خدمت شما اعلام گردد.

تکالیف متلب MATLAB - دو معادله دو مجهول ( کد Mat0077 )

1 -  برنامه ای بنویسید که یازده مقدار صحیح بین اعداد یک تا صد بگیرد، مقادیر را از کوچک به بزرگ مرتب کرده و چاپ کند. اگر اختلاف بین میانگین 3 مقدار بزرگتر با میانگین 8 مقدار کوچکتر کمتر از 20 بود، میانگین و میانه کل این 11 مقدار را محاسبه کند. حال اگر میانه با میانگین برابر شد برنامه این پیغام را بدهد که " توزیع مقادیر کاملا متقارن است" و مقدار آن را چاپ کند. اگرمیانگین بزرگتر از میانه باشد برنامه این پیغام را بدهد که " توزیع مقادیر نامتقارن (به طرف راست) است" و مقادیر میانگین و میانه را چاپ کند. اگر میانگین کوچکتر از میانه باشد برنامه این پیغام را بدهد که " توزیع مقادیر نامتقارن(به طرف چپ) است" و مقادیر میانگین و میانه را چاپ کند.

اگر اختلاف بین میانگین 3 مقدار بزرگتر با میانگین 8 مقدار کوچکتر بیشتر از 20 بود، برنامه این پیغام را بدهد که " مقادیر وارد شده دارای پراکندگی غیر مجاز هستند، مقادیر را اصلاح کنید".

2 - زمین شیب داری را درنظر بگیرید که قصد داریم فاصله افقی بین دو نقطه و نیز شیب بین این دو نقطه را محاسبه کنیم . برنامه ای بنویسید که نام هرکدام از نقاط را از نوع رشته و همچنین مختصات هرکدام از نقاط شامل x ، y و z را به عنوان ورودی بگیرد.

فاصله افقی بین دونقطه و شیب بین آنها را محاسبه نماید. همچنین با استفاده از دستور Switch برنامه را بگونه ای بنویسید که چنانچه قدرمطلق شیب بین نقاط از 8 درصد کمتر بود ضمن درج نام نقاط ، فاصله بین آنها را چاپ نماید و این پیغام را به کاربر بدهد که شیب بین نقاط وارد شده کمتر از 7درصد میباشد ، اگر بین 8 تا 10 درصد بود ضمن درج نام نقاط، فاصله و شیب بین آنها را چاپ نماید و چنانچه شیب بیشتر از 10 درصد بود ، ضمن درج نام نقاط، این پیغام را بدهد که شیب بین نقاط بیشتر از حد مجاز است.

3 - برنامه ای بنویسید که قادر باشد مساحت اشکال سه ضلعی، چهارضلعی و پنج ضلعی را با گرفتن مختصات رئوس آن چند ضلعی محاسبه نماید. راهنمایی: برنامه از کاربر سوال میکند که شکل مورد نظر چندضلعی است؟ سپس برنامه از شرط switch استفاده میکند و با گرفتن مختصات x و y هرکدام از رئوس مساحت چندضلعی مورد نظر را محاسبه مینماید(x طول از مبدا و y عرض از مبدا میباشد) - ( الگوریتم بند کفش )

4 - تابع  f(x)=arcsin(x) به صورت سری نشان داده شده در زیر را در نظر بگیرید. برنامه ای بنویسید که f(x)=arcsin(x) را با استفاده از سری نشان داده شده تعیین نماید. برنامه f(x)=arcsin(x)را با جمع کردن جمالت سری محاسبه میکند و وقتی که مقدار مطلق جمله آخری که افزوده می شود کوچکتر از 0.000014 شود متوقف می شود. از حلقه Switch استفاده کنید اما تعداد پاس ها را به 33 محدود نمایید. اگر در پاس 33 ام مقدار جمله ای که اضافه می شود کوچکتر از 0.000014 نبود، برنامه یک پیغام مبنی بر مورد نیاز بودن بیشتر از 33 جمله ارسال می نماید.

5 - برنامه ای بنویسید که قادر باشد دستگاه معادلات دومعادله-دومجهول ، سه معادله-سه مجهول، چهار معادله-چهارمجهول را حل کند. فرض کنید کاربری که قرار است با این برنامه کار کند، کمترین آشنایی را با متلب و عملیات ماتریسی دارد، پس برنامه باید بسیار نزدیک به زبان انسان باشد و با ارسال پیغام های ساده از کاربر بخواهد که فقط و فقط عدد وارد کرده و دکمه Enter را فشار دهد. برای این کار بهترین راهکار را در برنامه خود بکار ببرید.

راهنمایی: برنامه در ابتدا از کاربر سوال میکند که دستگاه چند مجهولی است. ضرایب و بطورکلی پارامترهای معلوم را بعنوان ورودی میگیرد و با استفاده از روش ماتریس ضرایب و شرط if دستگاه معادالت را حل میکند(از دستور solve برای حل دستگاه استفاده نکنید!). در پایان با استفاده از دستور fprintf هرکدام از مجهول ها را به همراه مقدار یافت شده چاپ کند.

6 - برنامه یا تابعی بنویسید که یک عدد (مانند n ) را به عنوان ابعاد ماتریس مربعی، توسـط کـاربر از ورودی دریافـت کند سپس ماتریس مربعی (با ابعاد n وارد شده) ایجاد کند که ویژگی زیر را داشت باشد.

ویژگی ماتریس: ابعاد ماتریس باید عددی فرد باشد و ابعاد زوج مورد قبول نیست. ماتریس ایجاد شده باید ماتریس متقارنی باشـد که در گوشه های ماتریس عدد 1 قرار بگیرد و با هر حرکت به سمت مرکز ماتریس به این اعداد یک واحد اضـافه شوند. در واقع برعکس این بیان عبارت است از: درایههای ماتریس باید بهگونهای باشند که بزرگترین عدد ممکن با توجه به ابعاد ماتریس، در مرکز ماتریس قرار بگیرد و این عدد با حرکت در راستای سطر و ستون تغییـر نکنـد اما در راستای قطری باید یک واحد کم بشود به طوری که در 4 گوشه ی ماتریس به عدد یک خـتم شـود. بـرای درک بهتر سوال به مثال های زیر توجه کنید.

مثال 1 :فرض کنید کاربر عدد 3 را به عنوان ابعاد ماتریس وارد کند آنگاه خروجی (ماتریس ایجاد شده) بایـد بـه صورت زیر باشد.

\[\begin{matrix} 1 & 2& 1\\ 2& 2&2 \\ 1& 2 & 1 \end{matrix}\]

مثال 2 :فرض کنید کاربر عدد 5 را به عنوان ابعاد ماتریس وارد کند آنگاه خروجی (ماتریس ایجاد شده) بایـد بـه صورت زیر باشد.

\[\begin{matrix} 1 & 2& 3& 2& 1\\ 2 & 2 & 3& 2& 2\\ 3& 3 & 3& 3& 3\\ 2 & 2& 3& 2& 2\\ 1& 2 & 3& 2 &1 \end{matrix}\]

مثال 3 :فرض کنید کاربر عدد 9 را به عنوان ابعاد ماتریس وارد کند آنگاه خروجی (ماتریس ایجاد شده) بایـد بـه صورت زیر باشد.

\[\begin{matrix} 1 & 2& 3 & 4& 5& 4& 3& 2& 1\\ 2& 2& 3& 4& 5& 4& 3& 2& 2\\ 3 & 3& 3& 4& 5& 4& 3& 3& 3\\ 4& 4& 4& 5& 5& 4& 4& 4& 4\\ 5& 5& 5& 5& 5& 5& 5& 5& 5\\ 4& 4& 4& 4& 5& 4& 4& 4& 4\\ 3 & 3& 3& 4& 5& 4& 3& 3& 3\\ 2& 2& 3& 4& 5& 4& 3& 2& 2\\ 1& 2& 3& 4& 5& 4& 3& 2& 1 \end{matrix}\]

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

7 - یک تابع بنویسید که دو آرگومان ورودی و سه خروجی داشته باشد. خروجی اول برابر مجموع مربعات دو آرگومان ورودی باشد. خروجی دوم برابر مجموع جذر دو ورودی باشد و خروجی شوم برابر باشد با متغییر اول به توان متغییر دوم ورودی.

8 - با استفاده از قانون گاز ایده آل جرم حجمی هوا را در فشار اتمسفر یک و دمای 25 درجه سانتیگراد محاسبه کنید. برنامه را طوری تغییر دهید که در دماهای دلخواه جرم حجمی را محاسبه کند.

9 - با استفاده از رابطه آنتوان برای اتانول ، فشار بخار اتانول را در دمای 78.32 درجه سانتی گراد محاسبه کنید. برنامه را طوری تغییر دهید که در دماهای دلخواه ، فشار بخار را محاسبه کند.

\[log(p)=8.20417-\frac{1642.89}{230.3+T}\]

10 - دستورات مربوط به ترسیم شکل های دو بعدی ( plot , fplot , subplot ) را در متلب شرح دهید.

11 - برنامه ای بنویسید که با استفاده از قانون کسینوس ها و با دریافت طول دو ضلع یک مثلث و زاویه بین آن ها ، طول ضلع سوم را محاسبه نماید.

\[ c^{2}=a^{2}+b^{2}-2ab\;cos(\theta)\]

12 - با یک دستور در متلب یک بردار سطری ایجاد کنید که دارای سیزده عضو به صورت زیر باشد.

\[ \begin{bmatrix} 0& 2 & 4 &6 &8 & 10 &12 &14&9&6&3&0& -3\\\end{bmatrix}\]

13 -  سیستم دستگاه معادلات زیر را در متلب حل کنید.

\[ \left\{\begin{matrix} -4x+3y+z=-18.2\\ 5x+6y-2z=-48.8\\25-5y+4.5z=92.5\end{matrix}\right.\]

14 - بردار v به صورت زیر تعریف شده است.

\[ V=\begin{bmatrix} 8& 6 & 4 &2 \\\end{bmatrix}\]

با نوشتن یک عبارت در پنجره فرمان از روی بردار فوق بردارهای زیر را ایجاد کنید.

\[ a=\begin{bmatrix} 1& 1 & 1 &1\\\end{bmatrix}\]
\[ b=\begin{bmatrix} \frac{1}{8^2}& \frac{1}{6^2} & \frac{1}{4^2} & \frac{1}{2^2}\\\end{bmatrix}\]
\[ c=\begin{bmatrix} 3&1&-1&-3\\\end{bmatrix}\]

15 - انواع روش های ورود داده به برنامه متلب را شرح دهید؟ همچنین دو روش عمده نمایش خروجی های برنامه پس از انجام محاسبات در متلب را بیان کنید.

16 - برنامه ای بنویسید که شعاع یک کره را از روی سطح معلوم آن محاسبه کند. سپس حجم این کره را نیز محاسبه و با چاپ پیغام مناسب در خروجی چاپ نماید.

17 -دستورات لازم برای رسم تابع زیر را در بازه خواسته شده بنویسید.

\[ y=sin(2x)\;\;\; -3<x<3\]

18 - دستورات لازم برای پیدا کردن ریشه های معادله زیر را بنویسید.

\[ x^{2}+3x-3=0\]

19 - برنامه ای بنویسید که نمرات یک کلاس را به صورت یک بردار بگیرد و مشخص کند چند تا نمره بزرگتر از 17 در کلاس هست و شماره درایه آن ها را برگرداند.

20 - الگوریتم روش نصف کردن در پیدا کردن ریشه تقریبی یک معادله چگونه است؟ با استفاده از متلب این الگوریتم را برای یک معادله دلخواه پیاده سازی کنید.

| جهت سفارش پروژه ، تکلیف و آموزش سیمولینک Simulink  و  متلب Matlab لطفا در شبکه های تلگرام و واتساپ موضوع و سوال مورد نظر را به شماره  989364847193+ ارسال نمایید، تا پس از بررسی هزینه خدمت شما اعلام گردد.

موضوعات
Designed By M A T L A B K H O O N E H