matlabkhooneh

تکالیف سری اول درس پردازش تصویر ( کد Mat0106 )

1 - برنامه ای بنویسید که یک ماتریس رابه عنوان ورودی دریافت کند و محتویات سطرهای زوج و فرد آن را با هم عوض کند و سپس یک ماتریس به عنوان خروجی برگرداند.

2 - برنامه ای بنویسید که یک ماتریس را به عنوان ورودی دریافت کند و محتویات ستون های زوج و فرد را با هم عوض کند و سپس یک ماتریس به عنوان خروجی برگرداند.

3 - برنامه ای بنویسید که یک ماتریس را به عنوان ورودی دریافت کند و با در نظر گرفتن بلوک های 2×2 عناصر قطر اصلی و قطر فرعی را با هم عوض کند

4 - برنامه ای بنویسید که یک ماتریس را به عنوان ورودی دریافت کند و ستون های اول و آخر ماتریس، ستون دوم و ستون یکی مانده به آخر و ستون های بعدی را به همین منوال عوض کند.

5 - برنامه ای بنویسید که یک ماتریس را به عنوان ورودی دریافت کند و سطرهای فرد را یک واحد افزایش و سطرهای زوج را یک واحد کاهش دهد.

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

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

8 - برنامه ای بنوسید که یک ماتریس مربعی را به عنوان ورودی دریافت کند و نیمه بالایی ماتریس را با نیمه پایینی ماتریس نسبت به قطر اصلی (بالا مثلثی و پایین مثلثی) را با هم جابه جا کند.

9 - برنامه ای بنویسید که یک ماتریس مربعی را از ورودی دریافت کند و نیمه بالا و پایین را نسبت به قطر فرعی جا به جا کند.

10 - برنامه ای بنویسید که یک ماتریس مربعی را به عنوان ورودی دریافت کند و اعداد قطر اصلی را از کوچک به بزرگ مرتب کند.

11 - برنامه ای بنویسید که یک ماتریس و دو عدد را به عنوان ورودی دریافت کند و سطر عدد اول را با سطر عدد دوم جابه جا کند.

12 - برنامه ای بنویسید که یک ماتریس را از ورودی دریافت کند و به همان ابعاد ماتریس  Random بسازد. حال با توجه به این ماتریس که بزرگ تر از نیم بود عضو متناظر آناز ماتریس ورودی را افزایش و در غیر این صورت عضو متناظر آن از ماتریس ورودی را کاهش دهد.

13 - برنامه ای بنویسید که یک ماتریس را به عنوان ورودی دریافت کند، سپس ماتریس را به یک بردار ستونی تبدیل کند و بعد آن را از کوچک به بزرگ مرتب کند و در پایان به یک ماتریس با سایز ماتریس ورودی تبدیل کند.

14 - برنامه ای بنویسید که یک ماتریس را از ورودی دریافت کند و معدل اعداد هر دو سطر را محاسبه و در ماتریس جدیدی قرار دهد.

15 - برنامه ای بنویسید که یک ماتریس را از ورودی دریافت کند و واسطه هندسی هر بلاک 2×2 را در مرکز بلاک قرار دهد.

16 - برنامه ای بنویسید که یک ماتریس را به عنوان ورودی دریافت کند و اعضای ماتریس را از تابع زیر عبور دهد.

17 - برنامه ای بنویسید که یک ماتریس را به عنوان ورودی دریافت کند و از تابع زیر عبور دهد و ماتریس خروجی را بسازد.

18 - برنامه ای بنویسید که یک ماتریس را به عنوان ورودی دریافت کند و به صورت زیرماتریس خروجی را بسازد.

19 - برنامه ای بنویسید که یک ماتریس را به عنوان ورودی دریافت کند و ماتریس خروجی رابه صورت زیر بسازد.

20 - برنامه ای بنویسید که یک بردار را از ورودی دریافت کند و از روی آن دو بردار زیر را بسازد.

21 - برنامه ای بنویسید که دو بردار را به عنوان ورودی دریافت کند و زاویه بین دو بردار را با استفاده از رابطه ضرب داخلی و cos محاسبه کند.

22 - برنامه ای بنویسید که یک ماتریس را به عنوان ورودی دریافت کند و عناصر آن را به یک نرمال سازی نماید. ( همه ی درایه ها را تقسیم بر بزرگترین مقدار کند )

23 - برنامه ای بنویسید که یک ماتریس را به عنوان ورودی دریافت کند و هر ستون را بر ماکزیمم همان ستون تقسیم کند.

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

25 - برنامه ای بنویسید که دو ماتریس را به عنوان ورودی دریافت کند و از روی این دو ماتریس، ماتریس سومی به صورت زیر بسازد.

26 - برنامه ای  بنویسید که یک ماتریس را به عنوان ورودی دریافت کند و روی آن ماتریس بلوک های 3×3 در نظر بگیرید و عناصر قطر اصلی و فرعی را با هم عوض کند.

27 - برنامه ای بنویسید که یک ماتریس رابه عنوان ورودی دریافت کند و اعداد داخل یک بلاک 2×2 را مرتب کند و در جای خود قرار دهد.

28 - برنامه ای بنویسید که یک عدد n دریافت کند و یک ماتریس باینری n×n بسازد. برای ساخت هر عنصر این ماتریس یک عدد تصادفی تولید کند اگر عدد تصادفی کوچکتر از  0.2 باشد عدد صفر و در غیر این صورت عدد یک قرار دهد.

29 - برنامه ای بنویسید که یک عدد n دریافت کند و یک ماتریس شامل  0,1,2 بسازد به طوری که احتمال هرکدام به صورت زیر باشد.

30 - برنامه ای بنویسید که یک ماتریس رابه عنوان ورودی دریافت کند و برای هر نقطه انتگرال ماتریس را محاسبه کند. (بالا، سمت ، چپ)

31 - برنامه ای بنویسید که عدد n را به عنوان ورودی دریافت کند و یک ماتریس با استفاده از رابطه زیر بسازد.

32 - برنامه ای بنویسید که عدد n را به عنوان ورودی دریافت کند و یک ماتریس با استفاده از رابطه زیر بسازد.

33 - برنامه ای بنویسید که عدد n را به عنوان ورودی دریافت کند و یک ماتریس با رابطه بازگشتی زیر بسازد.

34 - برنامه ای بنویسید که یک ماتریس را به عنوان ورودی دریافت کند و از روی قطر اصلی و موازی با آن یک بردار به صورت حاصل جمع عناصر قطر را تولید کند.

35 - برنامه ای بنویسید که یک ماتریس باینری را به عنوان ورودی دریافت کند و آن را به صورت زیر تبدیل کند.

36 - برنامه ای بنویسید دو ماتریس را به عنوان ورودی دریافت کند و ماتریس ماکزیمم را محاسبه کند. ( بزرگترین درایه متناظر )

37 - برنامه ای بنویسید که با دریافت دو عدد N1 و N2 به عنوان ورودی یک ماتریس به فرم زیر بسازد.

38 - برنامه ای بنویسید که عدد N را از کاربر به عنوان ورودی دریافت کند و یک ماتریس N×N به صورت زیر بسازد.

39 - برنامه ای بنویسید که یک ماتریس را به عنوان ورودی دریافت کند و یک mask به صورت صلیبی روی آن قرار دهد و اعداد داخل mask را sort کند و عدد وسط را جایگزین مرکز mask کند. بقیه عناصر در محل خود باقی می مانند.

40 - برنامه ای بنویسید که یک ماتریس را از ورودی دریافت کند ویک mask به صورت زیر روی آن قرار دهد و اعداد داخل mask را sort کند و جایگزین مرکز mask کند.

41 - برنامه ای بنویسید که دو ماتریس را به عنوان ورودی دریافت کند و ماتریس دوم را روی ماتریس اول بلغزاند. هرگاه ماتریس دوم در ماتریس اول یافت شد در محل راس ماتریس عدد  1 بگذارد.

42 - برنامه ای بنویسید که با استفاده از رابطه ی هم نهشتی زیر با دریافت x0, a, b, n, m بتواند n عدد تصادفی تولید کند.

xn=(axn-1+b) mod m

43 - برنامه ای بنویسید که یک ماتریس را به عنوان ورودی دریافت کند و یک mask به صورت زیر روی آن قرار دهد و محل عناصر داخل mask را جابه جا کند

44 - برنامه ای بنویسید که یک ماتریس را به عنوان ورودی دریافت کند. ابتدا ماتریس ورودی را به بردار تبدیل کند. سپس هم سایز بردار یک بردار اعداد تصادفی تولید کند. بعد اعداد تصادفی را مرتب کند. سپس هر انتقالی که روی بردار تصادفی اتفاق افتاده است بر روی بردار ماتریس انجام شود. در پایان بردار به ماتریس تبدیل گردد.

45 - با به کارگیری حلقه for یک ماتریس 7 * 4 تولید کنید به نحوی که در آن مقدار هر درایه ماتریس برابر مجموع شاخص های آن  ( شماره ردیف و شماره ستون درایه ) باشد. به عنوام مثال مقدار درایه (2,5) برابر 7 باشد.

46 - با حلقه for متلب برنامه ای بنویسید که مجموع 10 جمله اول سری زیر را محاسبه کند.

\[ \sum_{n=0}^{m}(-1)^{n}\frac{1}{2n+1}\]

47 - بردار x=[15 -6 0 8 -2 5 4 -10 0.5 3 ] را در نظر بگیرید با استفاده از دستور if و به کارگیری حلقه for برنامه ای بنویسید که مجموع مقادیر مثبت در این بردار را محاسبه کند.

48 - الف ) تابعی در متلب تعریف کنید که بتواند درایه های یک بردار با طول دلخواه را از بزرگ به کوچک مرتب کند. اسم تابع را downsort قرار دهید. دقت داشته باشید که برای نوشتن این برنامه نباید از دستور sort متلب استفاده شود.

ب ) با دستور randi متلب برداری با طول دلخواه و اعدادرندوم تولید کنید و با استفاده از تابع downsort اعداد موجود در بردار را مرتب کند.

49 - برنامه ای بنویسید که دو بردار  Aو B را دریافت کرده و عناصر مشترک آن دو را نشان دهد.

50 - برنامه ای بنویسید که دو عدد صحیح و مثبت را دریافت نموده و بزرگترین مقسوم علیه مشترک آن دو عدد را نمایش دهد.

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

پشتیبانی ( تلفن ثابت دفتر متلب خونه ) : 02191307193  

تلگرام و ایتا :  09364847193

ساخت جدول سودوکو ( کد Mat0105 )

1 - کد جدول سودوکو 9*9 با تمامی شرایط را بنویسید.

قانون بازی سودوکو

نوع متداول سودوکو یک جدول ۹x۹ است که کل جدول هم به ۹ جدول کوچک‌تر ۳x۳ تقسیم شده‌است. در این جدول چند عدد به طور پیش فرض قرار داه شده که باید باقی اعداد را با رعایت سه قانون زیر یافت:

قانون اول: در هر سطر جدول اعداد ۱ الی ۹ بدون تکرار قرار گیرد.

قانون دوم: در هر ستون جدول اعداد ۱ الی ۹ بدون تکرار قرار گیرد.

قانون سوم: در هر ناحیه ۳x۳ جدول اعداد ۱ الی ۹ بدون تکرار قرار گیرد.

2 - برای هریک از موارد ذیل تابعی تعریف کنیدکه با دریافت عدد صحیح N ماتریس N*N مطلوب را بدهد.

3 - برنامه ای بنویسید که با استفاده از روش مونت کارلو حجم یک کره را محاسبه کند. در انتهای به ازای ورودی دلخواه n نقطه خطای روش مونت کارلو را نشان دهد.

4 -  Write a Matlab Script file to create the plot for the function f(x) given below:

\[ f(x)=\left\{\begin{matrix} -e^{\frac{1}{2}x}+\left| x^{2}-7x-2 \right|& \;\;\; if \;\;\; x<-2 \\ 5x^{3}+cos(x)& \;\;\; if \;\;\; -2\leq x\leq 2 \\ log_{10}(x)+\sqrt{x+3} -x^{\frac{1}{3}}& \;\;\; if \;\;\; x>2 \\\end{matrix}\right.\]

Where the range of x between -5 to 5.

5 - Reproduce below plot:

 

6 - Generate 10 points in the unit square and plot them with black dots. Generate another random point and plot it with a red x.Your code should identify the closest black point and draw a red circle around it. One possible output is shown below:

7 -  Write a function that takes an input , n. This function plots n points with evenly spaced x values and random y values. The function then connects the points. Each connection will be green if it is ascending and red if it is descending.

8 - برنامه ای بنویسید که بدون استفاده از توابع آماده متلب MATLAB دترمینان یک ماتریس مربعی را محاسبه کند.

9 - برنامه ای بنویسید که بدون استفاده از دستور آماده متلب MATLAB ویژه مقادیر یک ماتریس را محاسبه کند.

10 - کمترین فاصله بین نقطه (4,1) و سهمی زیر را بیابید.

\[ y=\frac{1}{2}x^{2}\]

11 - We want to find the minimum of function f(x) given below:

f(x)=\frac{1}{e^{-x^2}+1}-\frac{sin(x-2)}{5}

We will be using two methods (simple versions) to try to obtain the minimum:

1) Newton method

2) Gradient Decent method

 

In the Newton method, we find the zeros of the derivative of f(x) and deternine whether they are a local minimum.

I) Find the first and second derivatives of function f (x) and call them g_sym and h_sym by using MATLAB symbolic variables and display it in the command window (either by not using a";" or using "disp" command).

2) Declare two function handles for f(x) and g(x).

3) Find the zero of g(x) by using the Newton method and setting tolerance = e-12 and x0 = 1.

4) Call the answer, obtained via steps (I) to (3), x_newton and determine whether it is a maximum or a minimum of f(x).

12 - برنامه ای بنویسید که دترمینان یک ماتریس 3*3 را به کمک حلقه ها محاسبه کند. استفاده از دستور از قبل آماده برای محاسبه دترمینان مجاز نیست.

13 - فرض کنید به عنوان ورودی یک دنباله از اعداد طبیعی 1 تا N ( به جز عدد یک عدد ) وارد می کنیم. برنامه ای بنویسید که عددی که وارد نشده را پیدا کند. ( اعداد لزوما به ترتیب وارد نمی شوند )

14 - برنامه ای بنویسید که دقت نرم افزار متلب را پیدا کند ( به کمک یک متغیر خطا می توانید این کار را انجام دهید.)

15 - فرض کنید یک تاریخ میلادی ( سال ، روز ، ماه ) را به عنوان ورودی دریافت می کنیم. برنامه ای بنویسید که خروجی برنامه به این صورت باشد که تاریخ داده شده چه روزی از هفته است.

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

\[ S_{n}=\prod_{j=1}^{n}\sqrt{2}sin(j\pi x)\]
به ازای n = 1 تا n = 5 تابع S را رسم کنید و ماکزیمم و مینیمم آن را محاسبه کرردهو بر روی نمودار نمایش دهید.

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

پشتیبانی ( تلفن ثابت دفتر متلب خونه ) : 02191307193  

تلگرام و ایتا :  09364847193

 

موضوع های پیشنهادی پروژه درس برنامه سازی پیشرفته ( کد Mat0104 )

1 - چک کردن همگرایی و واگرایی یک سری نامتناهی.(توضیح: در ابتدا، برنامه نوشته شده بایستی همگرایی و واگرایی یک سری نامتناهی را چک کند. سپس، در صورت همگرا بودن سری، محاسبه کند که همگرایی سری به چه عددی است)

2 - تقریب تابع به کمک سری فوریه. (توضیح: برنامه نوشته شده بایستی برای هر تابع دلبخواه، سری فوریه آن تابع را محاسبه نماید. سپس، همگرایی و دقت سری را با افزایش تعداد جمالت سری مورد بررسی قرار دهد)

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

4 - تقریب مشتق تابع به کمک روش تفاضالت محدود مرکزی. (توضیح: برنامه نوشته شده بایستی مشتق هر تابع دلبخواه را در یک دامنه خاص تابع محاسبه نماید. سپس، همگرایی و دقت روش را با افزایش تعداد نقاط مورد بررسی قرار دهد)

5 - تقریب انتگرال تابع به کمک روش ذوزنقه ای. (توضیح: در این روش، ابتدا مساحت زیر منحنی تابع به تعدادی ذوزنقه تقسیم می شود. مساحت زیر منحنی برابر خواهد بود با مجموع مساحت ذوزنقه ها. با افزایش تعداد ذوزنقه ها، دقت جواب بهبود خواهد یافت. برنامه نوشته شده بایستی انتگرال هر تابع دلبخواه را در یک بازه معین محاسبه نماید. سپس، همگرایی و دقت روش را با افزایش تعداد ذوزنقه ها مورد بررسی قرار دهد)

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

7 - حل معادله ریشه یابی به کمک روش نابجایی. (توضیح: روش نابجایی بسیار شبیه روش نصف کردن (برای یافتن ریشه یک تابع) می باشد. منتها، همگرایی آن سریعتر است. در این پروژه، بایستی برنامه ای به این منظور )یافتن ریشه تابع به کمک روش نابجایی) فراهم گردد (برای توضیحات بیشتر روش می توان به کتاب محاسبات عددی دکتر نکوکار مراجعه نمود)

8 - حل معادلات دیفرانسیل مرزی به کمک MATLAB( .توضیح: متلب توابع متعددی برای حل مسائل مقدار مرزی دارد. در این مسائل، مشتق ها نسبت به مختصات مکانی بیان شده اند )مثال x .)در این تحقیق، بایستی توابع مرتبط و نحوه استفاده از آنها تشریح گردند.

9 - چند جمله ایهای چبیشف. (توضیح: چندجمله ایهای چبیشف از توابع پرکاربرد در ریاضی کاربردی و محاسبات عددی هستند. این توابع از معادله دیفرانسیل هم نام (چبیشف) قابل استخراج هستند. از طرفی، روابط بازگشتی نیز برای محاسبه این توابع موجود می باشد. در این برنامه، بایستی این توابع محاسبه و ترسیم گردند.

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

11 - حل معادلات دیفرانسیل معمولی زمانمند به کمک روش رانگ – کوتا. (توضیح: روش های رانگ - کوتا یکی از روش های ساده و دقیق برای حل معادالت دیفرانسیل معمولی زمانمند می باشد. در این پروژه بایستی کاربرد و دقت این روش ها برای حل اینگونه از معادالت مورد بررسی قرار گیرد)

12 - حل معادله ریشه یابی به کمک روش وتری. (توضیح: روش وتری بسیار شبیه روش نیوتن (برای یافتن ریشه یک تابع) می باشد. منتها، همگرایی آن کندتر است. در این پروژه، بایستی برنامه ای به این منظور (یافتن ریشه تابع به کمک روش وتری) فراهم گردد ( برای توضیحات بیشتر روش می توان به کتاب محاسبات عددی دکتر نکوکار مراجعه نمود)

13 - انتگرال گیری به کمک روش نقطه میانی. (توضیح: روش نقطه میانی همان روش مستطیلی برای انتگرالگیری عددی است. منتها، از نقاط میانه بازه ها برای محاسبه انتگرال کمک می گیرد. این روش بسیار مناسب است برای محاسبه انتگرال توابع منفرد ( توابعی که مثال در ابتدا یا انتهای بازه مقدار بینهایت بگیرند )  که روش مستطیلی برای محاسبه انتگرال آنها به مشکل اساسی بر می خورد. در این پروژه بایستی در قالب برنامه هایی کاربرد و دقت این روش برای تقریب انتگرال معین توابع منفرد مورد بررسی قرار گیرند

14 - انتگرال گیری به کمک روش سیمپسون. (برای توضیحات روش به کتاب محاسبات عددی دکتر نیکوکار مراجعه شود).

15 - حل سیستم معادلات جبری به کمک روش حذفی گوس و دستور کرامر. (برای توضیحات روش به کتاب محاسبات عددی دکتر نیکوکار مراجعه شود)

16 - درونیابی با استفاده از توابع Hermit

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

پشتیبانی ( تلفن ثابت دفتر متلب خونه ) : 02191307193  

تلگرام و ایتا :  09364847193

تکالیف متلب MATLAB - پردازش سیگنال ( کد Mat0103 )

1 - برنامه ای بنویسید که فرکانس سیگنال ورودی مدار زیر را دریافت کند و به کمک حلقه for خروجی را در هر لحظه حساب کند و در نهایت سیگنال خروجی را رسم کند؟

ورودی را به صورت 1000sin(wt) در نظر بگیرید.

ابتدا t را بین 0 تا 100 با گام های 0.01 تعریف کنید، سپس w را به عنوان ورودی دریافت و سیگنال ورودی را تولید کنید. سپس به کمک یک حلقه for که تعداد تکرارهایش با بعد t برابر است خروجی را برای لحظه بعد بدست آورید.

2 - ریشه معادله 3s3+5s2-1=0 را حساب کنید.

3 - سه ماتریس تصادفی 3*3 و 3*1 و1*3 تشکیل داده و به کمک این سه ماتریس و ماتریس یکه واحد به عنوان بلوک چهارم ، یک ماتریس 4*4 ساخته و A بنامید. ماتریس B را به صورت [4;3;2;1]  تعریف کنید و حاصل درستگاه فوق را بیابید. در صورتی که دستگاه شما جواب ندارد علت را بیان کنید.

4 - تابع sinc را در بازه 7 تا 7- رسم کنید. این تابع در چه نقاطی صفر است؟

5 - یک تابع رندوم 10000*1 با مقادیر مثبت و منفی درست کرده و آن را رسم کنید.

6 - تابعی بنویسید که توابع tan(x) و cos(x) را با گرفتن x و N با استفاده از سری تیلور محاسبه کند.

7 - تابعی بنویسید که بزرگترین درایه ( همراه با شماره سطر و ستون ) و متوسط درایه های مارتیس را محاسبه کند.

8 - برنامه ای بنویسید که عدد سه رقمی دلخواهی را گرفته و جای ارقام اول و سوم را با هم عوض کند.

9 - سیگنال های زیر را به کمک دستور stem رسم کنید.(دقت کنید که سیگنال های پله و ضربه واحد باید توسط خودتان پیاده سازی شود و سیگنال ها زمان گسسته هستند)

\[x(n)=u(n+3)-u(n-3)+2\delta (n+3)+3\delta(n+2)\]

\[y(n)=2x(n)-x(2n)\]

\[z(n)=cos(2\pi n).x(n)\]

10 - اگر x(n)=u(n)-u(n-10) یک ورودی برای سیستم LTI با پاسخ ضربه h(n)=(0.9)nu(n) باشد.

الف) ورودی و پاسخ ضربه را رسم کنید.

ب) با کمک مطالبی که در کالس درس آموختید سیگنال خروجی را روی کاغذ بدست آورید و رسم کنید.

ج) با کمک تابع conv متلب خروجی را بدست آورید و با پاسخ خود در قسمت ب مقایسه کنید.

(سیگنال ها زمان گسسته هستند)

11 - الف) تابعی بنویسید و به کمک آن کانوولوشن دو سیگنال گسسته را در زمان محاسبه کنید. (از تابع کانوولوشن متلب استفاده نکنید)

ب) تابع خود را بر روی دو سیگنال دلخواه اعمال کنید و خروجی را بدست بیاوردید ، سپس هر سه سیگنال(دو سیگنال ورودی و یک خروجی) را به کمک دستور subplot ترسیم کنید.

ج) صحت پاسخ خود را به کمک تابع conv متلب بررسی کنید.

12 - با کمک تابع repmat و دستور stem سیگنال زیر را بصورت متناوب تا ۳ دوره تناوب ترسیم کنید

\[x[n]=sin(2\pi n)(u[n]-u[n-10])\]

13 - اندازه و فاز سیگنال زیر را بدست آورید و با استفاده از subplot رسم کنید.

\[X(w)=e^{3jw}+e^{5jw} \;\;\;\;\; for (-10\pi \leq w \leq 10\pi)\]

14 - پاسخ ضربه و پاسخ پله یک سیستم انتگرال گیر را بدست آورده و نمایش دهید.

15 - سه ثانیه صدای خود را ضبط کنید و در حوزه ی زمان و فرکانس نمایش دهید.

16 - حاصل کانولوشن دو سیگنال زیر را بدست آورده و نماش دهید.

\[cos(2 \pi t) \;\;\;\;\; \delta (t)\]

17 - برنامه ای بنویسید که ابتدا 3 عدد a , b, c را از ورودی دریافت کند. سپس max و min آن ها را یپدا کرده و یک ماتریس به ابعاد (max , 3 ) ساخته و سطر a ام را اعداد فرد بزرگتر از a و سطر b ام را اعداد تصادفی بین min و  max  و سطر سوم را اعداد بین min و  max با فاصله یکسان قرار دهد.

18 - برنامه ای بنویسید که مقادیر xmin  و  xmax را از کاربر بگیرد و نمودارهای x2 و x3 و x4 را ابتدا در یک نمودار با هم ئو در مرحله بعد در 3 نودار مختلف در یک تصویر نمایش دهد. همچنین مقدار max و min هر نمودار را با دایره علامتگذاری کند.

19 - برنامه ای بنویسید و در یک تصویر دستورهای plot3 , mesh , surf , ezsurf را برای معادله دلخواه با هم مقایسه کنید.

20 - تبدیل فوریه یک سیگنال پیوسته و یک سیگنال گسسته را بدست آورده و رسم کنید.

 

21 - برنامه ای در MATLAB بنویسید که یک عدد اعشاری را از ورودی بگیرد و بخش صحیح و اعشاری را با هم عوض کند و در خروجی نمایش دهد. ( به صورت عددی بدون استفاده از توابع مخصوص رشته ها )

\[ 123.873 \to 873.123\]

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

23 - برنامه ای بنویسید که دو بردار A و B را دریافت کند و عناصر مشترک آن ها را چاپ کند.

24 - با در نظر گرفتن ماتریس های A و B برنامه ای بنویسید که دستگاه معادلات AATX=B را حل کند.

\[A=\begin{bmatrix} 1& 2 & 3 & 4 \\ 2& 3 & 4 & 1 \\ 3& 4 & 1 &2 \\ 4& 1& 2& 3 \\\end{bmatrix} \;\;\;\;\; B=\begin{bmatrix}3 \\ 0\\ 1\\4\end{bmatrix}\]

25 - دستگاه معادلات زیر را در نظر بگیرید

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

برنامه ای بنویسید که این دستگاه را به دلخواه توسط یکی از روش های حذفی ژاکوبی یا گاوس سایدل و با 3 مرتبه تکرار حل کند. مقدار اولیه را بردار صفر در نظر بگیرید.

26 - برنامه ای بنویسٌید که با گرفتن مقدار n را  از کاربر، دستگاه معادلات غیر خطی زیر را به روش نیوتون رافسون با تقریب اولیه و تعداد n  تکرار محاسبه کند.

\[\left\{\begin{matrix} ln(x^{2}+y^{2})+y=1\\\sqrt{x}+xy=0\end{matrix}\right. \;\;\;\;\; (x_{0},y_{0})=(2.4 , -0.6) \]

27 - با استفاده از حلقه switch case برنامه ای بنویسید که از ورودی مقدار طول و واحد آن را بر حسب سانتی متر ، فوت و یا اینچ بگیرد و از ورودی بپرسد که این طول را به چه واحدی تغییر دهد، سپس مقدار طول را بر حسب واحد خواسته شده تغییر دهد.

28 - سوال های زیر فقط با استفاده از if و while انجام شوند ( اجازه استفاده از دستور های توان ، باقیمانده و ... را ندارید )

برنامه ای بنویسید که یک عدد را بگیرد و مربع آن را چاپ کند؟

برنامه ای بنویسید که عددی را از ورودی دریافت کند سپس مشخص کند عدد زوج است یا فرد؟

برنامه ای بنویسید که یک عدد را از ورودی دریافت کند و قدر مطلق آن را چاپ کند؟

برنامه ای بنویسید که یک عدد از ورودی بگیرد و فاکتوریل آن را حساب کند؟

برنامه ای بنویسید که مجموع اعداد بخش پذیر بر سه که کوچکتر از 1000 هستند را انجام دهد؟

29 - سوال های زیر  فقط با استفاده از if و for انجام شوند ( اجازه استفاده از دستور های توان ، باقیمانده و ... را ندارید )

برنامه ای بنویسید که یک عدد را بگیرد و مربع آن را چاپ کند؟

برنامه ای بنویسید که عددی را از ورودی دریافت کند سپس مشخص کند عدد زوج است یا فرد؟

برنامه ای بنویسید که یک عدد را از ورودی دریافت کند و قدر مطلق آن را چاپ کند؟

برنامه ای بنویسید که یک عدد از ورودی بگیرد و فاکتوریل آن را حساب کند؟

برنامه ای بنویسید که مجموع اعداد بخش پذیر بر سه که کوچکتر از 1000 هستند را انجام دهد؟

30 - برنامه ای بنویسید که یک عدد در مبنای 2 دریافت کند و آن را به مبنای 10 ببرد.

31 - برنامه ای بنویسید که یک عدد در مبنای 2 دریافت کند و مستقیما به مبنای 16 ببرد. ( بدون استفاده از مبنای 10 )

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

33 - برنامه ای بنوسید که عددی از ورودی دریافت کرده، سپس سری فیبوناچی قبل از آنرا تولید نماید

34 - برنامه ای را بنویسید که یک عدد مثبت را خوانده و همه مقسوم علیه های آن را نمایش دهد

35 - برنامه ای بنویسید که یک عدد را خوانده و با نمایش پیغام مناسب اول بودن آن را تعیین نماید. نکته: عدد اول عددی طبیعی بزرگتر از 1 است که بر هیچ عددی به جز خود و 1 بخشپذیر نباشد. تنها استثنا عدد 1 است که جزو این اعداد قرار نمیگیرد.

36 - برنامه ای بنویسید که عددی را از ورودی دریافت کرده سپس معکوس (یا واران) عدد دریافتی را نمایش دهد.

مثال: ورودی: 2549 - خروجی: 9452

37 - برنامه ای بنویسید که عدد صحیح n را دریافت کرده و حاصل جمع n جمله ی اول سری زیر را نمایش دهد

\[S=\frac{1}{1!}+\frac{2}{2!}+\frac{3}{3!}+...++\frac{N}{N!}\]

38 - عملکرد هر یک از دستورات زیر را کامل شرح دهید.

clc

repmat

ceil

eye

39 - با فرض A=1:16  متغییر A را به صورت مستقیم ( از 1 تا 16 ) و معکوس ( از 16 تا 1 ) تعریف کرده و متغیری که به صورت مستقیم تعریف و در قالب یک ماتریس با سطر و ستون دلخواه نمایش داده شود.

40 - ماتریس زیر را فراخوانی کنید.

\[\begin{bmatrix} 3& 4 & 1 \\ 5& 8& 6\\ 2& 10 & 9 \\\end{bmatrix}\]

الف ) سطر سوم و ستون دوم را فراخوانی کنید.

ب ) سطر اول و ستون آخر را فراخوانی کنید

ج ) کل ستون اول را فراخوانی کنید.

د ) کل سطر دوم را فراخوانی کنید.

ه ) کل ماتریس را در 4 سطر و 5 ستون تکرار کنید.

41 - ماتریس زیر را در نظر بگیرید.

\[\begin{bmatrix} 6& 7 & 5 \\ 5& 2& 3\\ 1& 10 & 4 \\\end{bmatrix}\]

الف ) ابتدا ماتریس را تعریف کنید.

ب ) عناصر قطر اصلی ماتریس را صفر کنید.

ج ) عناصر قطر اصلی را فراخوانی کنید.

د ) عناصر قطر اصلی را جمع کنید.

ه ) کل درایه های ماتریس را یکبار جمع و یکبار ضرب کنید.

42 - برنامه ای بنویسید که عدد صحیح و مثبت N را دریافت کرده و اولین عدد اول بزرگتر از N را نمایش دهد.

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

\[\left\{\begin{matrix} y=5x^{2}+2x\\ y=log10(x)\\e^{-x/2}\end{matrix}\right.\]

44 -

45 -

46 -

47 -

48 -

49 -

50 -

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

پشتیبانی ( تلفن ثابت دفتر متلب خونه ) : 02191307193  

تلگرام و ایتا :  09364847193

تکالیف متلب MATLAB - معکوس ماتریس ( کد Mat0102 )

سوالات مربوط به if , for , while

1 - برنامه ای بنویسید که یک عدد از 1 تا 365 را گرفته و ماه جاری را چاپ کند.

2 - برنامه ای بنویسید که یک عدد از 1 تا 365 را گرفته و روز جاری ماه را چاپ کند.

3 - برنامه ای بنویسید که عددn به عنوان پول درخواستی از ATM را از کاربر دریافت کرده و سپس n را به مبالغ 1 و 5 و 10 و 50 هزار تومانی خرد کند.

4 - آیا می توان بدون استفاده از شرط if و دستور abs قدر مطلق یک عدد گرفته شده را پیدا کرده و چاپ کرد.

5 - آیا می توان بدون استفاده از شرط if و دستور min ، کمینه دو عدد گرفته شده را پیدا کرده و چاپ کرد.

6 - آیا می توان بدون استفاده از شرط if و دستور max ، بیشینه دو عدد گرفته شده را پیدا کرده و چاپ کرد.

7 - برنامه ای بنویسید که اعدا 1 تا 100 را چاپ کند.

8 - برنامه ای بنویسید که حاصل جمع اعداد 1 تا 100 را چاپ کند.

9 - برنامه ای بنویسید که حاصل جمع اعداد زوج 1 تا 100 را چاپ کند.

10 - برنامه ای بنویسید که حاصل جمع اعداد فرد 1 تا 100 را چاپ کند.

11 - برنامه ای بنویسید که یک عدد را گرفته سپس اعداد طبیعی کمتر و مساوی آن را چاپ کند.

12 - برنامه ای بنویسید که یک عدد را گرفته سپس مقسوم علیه های آن را چاپ کند.

13 - برنامه ای بنویسید که یک عدد را گرفته سپس مقسوم علیه های فرد آن را چاپ کند.

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

15 - برنامه ای بنویسید که یک عدد را گرفته سپس حاصل جمع مقسوم علیه های آن را چاپ کند.

16 - برنامه ای بنویسید که یک عدد را گرفته سپس تعداد مقسوم علیه های آن را چاپ کند.

17 - برنامه ای بنویسید که یک عدد را گرفته سپس حاصل جمع مقسوم علیه های فرد آن را چاپ کند.

18 - برنامه ای بنویسید که یک عدد را گرفته سپس تعداد مقسوم علیه های فرد آن را چاپ کند.

19 - برنامه ای بنویسید که یک عدد را گرفته سپس حاصل جمع مقسوم علیه های زوج آن را چاپ کند.

20 - برنامه ای بنویسید که یک عدد را گرفته سپس تعداد مقسوم علیه های زوج آن را چاپ کند.

21 - برنامه ای بنویسید که یک عدد را گرفته سپس میانگین مقسوم علیه های آن را چاپ کند.

22 - برنامه ای بنویسید که یک عدد را گرفته سپس میانگین مقسوم علیه های زوج آن را چاپ کند.

23 - برنامه ای بنویسید که دو عدد را گرفته سپس ب م م و ک م م آن ها را محاسبه و چاپ کند.

24 - برنامه ای بنویسید که یک عدد را گرفته سپس اگر اول بود Yes اگر اول نبود No چاپ کند.

25 - برنامه ای بنویسید که یک عدد را گرفته سپس فاکتوریل آن را محاسبه و چاپ کند.

26 - برنامه ای بنویسید که 10 عدد را گرفته سپس میانگین آن ها را محاسبه و چاپ کند.

27 - برنامه ای بنویسید که 100 عدد را گرفته و سپس min آن ها را چاپ کند.

28 - برنامه ای بنویسید که 100 عدد را گرفته و سپس max آن ها را چاپ کند.

29 - برنامه ای بنویسید که 100 عدد را گرفته و سپس دومین min آن ها را چاپ کند.

30 - برنامه ای بنویسید که 100 عدد را گرفته و سپس دومین max آن ها را چاپ کند.

31 - برنامه ای بنویسید که اعداد اول کمتر از 1000 را چاپ کند.

32 - برنامه ای بنویسید که یک عدد را گرفته سپس مقسوم علیه های 2 رقمی آن را چاپ کند.

33 - برنامه ای بنویسید که یک عدد را گرفته سپس حاصل جمع مقسوم علیه های 2 رقمی آن را چاپ کند.

34 - برنامه ای بنویسید که یک عدد را گرفته سپس تعداد مقسوم علیه های 2 رقمی آن را چاپ کند.

35 - برنامه ای بنویسید که یک عدد را گرفته سپس میانگین مقسوم علیه های 2 رقمی آن را چاپ کند.

36 - برنامه ای بنویسید که 100 عدد را گرفته سپس تعداد اعداد اول موجود در آن 100 عدد را چاپ کند.

37 - برنامه ای بنویسید که 100 عدد را گرفته و حاصل جمع اعداد اول موجود در آن 100 عدد را چاپ کند.

38 - برنامه ای بنویسید که 100 عدد را گرفته و سپس تعداد اعداد فرد موجود در آن 100 عدد را چاپ کند.

39 - برنامه ای بنویسید که 100 عدد را گرفته و سپس عددی که بیشترین مقسوم علیه را دارد چاپ کند.

40 - برنامه ای بنویسید که 50 امین عدد اول را چاپ کند.

41 - برنامه ای بنویسید که 50 جمله اول دنباله فیبوناچی را چاپ کند.

42 - برنامه ای بنویسید که یک عدد را گرفته سپس مجموع ارقام آن را چاپ کند.

43 - برنامه ای بنویسید که یک عدد را گرفته سپس مجموع ارقام زوج آن را چاپ کند.

44 - برنامه ای بنویسید که یک عدد را گرفته سپس مجموع ارقام فرد آن را چاپ کند.

45 - برنامه ای بنویسید که یک عدد را گرفته سپس تعداد ارقام آن را چاپ کند.

46 - برنامه ای بنویسید که یک عدد را گرفته سپس تعداد ارقام زوج آن را چاپ کند.

47 - برنامه ای بنویسید که یک عدد را گرفته سپس تعداد ارقام فرد آن را چاپ کند.

48 - برنامه ای بنویسید که یک عدد را گرفته سپس حاصلضرب ارقام آن را چاپ کند.

49 - برنامه ای بنویسید که یک عدد را گرفته سپس حاصلضرب ارقام زوج آن را چاپ کند.

50 - برنامه ای بنویسید که یک عدد را گرفته سپس حاصلضرب ارقام  فرد آن را چاپ کند.

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

پشتیبانی ( تلفن ثابت دفتر متلب خونه ) : 02191307193  

تلگرام و ایتا :  09364847193

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