matlabkhooneh

تکالیف متلب MATLAB - آرایه های سلولی ( کد Mat0082 )

1 - یک آرایه سلولی n*2 داریم که ستون اول آن نام دانشجو و ستون دوم نمره است. می خواهیم دو آرایه سلولی به نام Passed و Failed داشته باشیم که در اولی نام دانشجویانی ثبت شود که درس را پاس کرده اند و در دومی دانشجویانب که افتاده اند. اندازه این دو آرایه از قبل مشخص نیست و باید در هنگام نیاز افزایش یابد.

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

fliplr

flipud

ndim

numel

find

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

\[A=\begin{bmatrix} 1 & 4\\ -4 & 6\end{bmatrix}\;\;\;\;\;\ B=\begin{bmatrix} 10& 0\\ 8& 8 \end{bmatrix}\]

حال عملیات زیر را انجام دهید :

* یک متغیر جدید با نام C تعریف کنید که حاصل ادغام این دو ماتریس باشد به طوری دارای ابعاد 4 در 2 باشد.

* ماتریس جدیدی با نام D طوری تعریف کنید که دارای ابعاد 3 در 2 باشد و شامل اعضای ستون های 1 ، 2 و 4 ماتریس C باشد.

* سطر دوم ماتریس C را به کمک ماتریس تهی پاک کنید.

* ستون آخر ماتریس D را با عدد pi جایگزین کنید.

4 - ابتدا ماتریسی سطری تعریف کرده به طوری که شامل 15 عدد متساوی الفاصله از 6 تا 26 باشد. سپس آن را به ماتریسی با سایز 3 در 5 تبدیل کنید. در پایان ستون های ماتریس نهایی را به صورت نزولی مرتب کنید.

5 - ماتریسی با ابعاد 10 در 10 تعریف کنید به طوری که همه اعضای آن به صورت تصادفی و اعداد 1 تا 10 باشند. در مرحله بعد ، جایگاه های عدد 3 را در ماتریس بدست آمده مشخص کنید.

6 - کدی بنویسید که مقدار فاصله از زمین هر لحظه یک گلوله در حال سقوط را در زمان های t=[0 1 2 3 4 5] بدست آورد.

\[x_{0}=15m \;\;,\;\; v_{0}=0\;\;,\;\;a=-9.8\;m/s^{2}\]

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

8 - تابعی بنویسید که عددی طبعی از کاربر گرفته و مقدار حاصل جمع 1 تا آن عدد را برگرداند ( بدون استفاده از دستور sum ) . در این تابع باید به طریقی تضمین شود که حتما یوزر عدد طبیعی وارد کند.

9 - برنامه ای بنویسید که نمودار تغییرات حجم گاز متان را بر حسب تغییرات دما در فشار اتمسفریک رسم کند. ( بازه دمایی : 50 تا 150 درجه سانتیگراد )

الف ) با فرض شرایط گاز ایده آل

ب ) با فرض برقراری معادله حالت واندروالس

هر دو نمودار با هم در یک شکل رسم شود و عنوان نمودار به همراه توضیح محور افقی و عمودی نشان داده شود.

10 - میزان تغییرات جذب یک ماده مشخص در نسبت ها و غلظت های مختلف مطابق جدول زیر داده شده است. برنامه ای بنویسید که مانند شکل داده شده نمودار سه بعدی تغییرات میزان جذب را رسم کند.

11 - کدی بنویسید که عددی از کاربر دریافت کرده ، اگر آن عدد زوج باشد عبارت even و اگر فرد باشد عبارت odd چاپ شود. در مواردی که عدد منفی یا اعشاری است نیز عبارت دیگری چاپ شود.

12 - تابعی بنویسید که یک عدد از کاربر دریافت کند. اگر آن عدد منفی باشد مربع آن و اگر مثبت باشد مقدار جذر آن را برگرداند.

13 - تابعی بنویسید ک مشابه با تابع آماده find در متلب کار کند و به این صورت عمل کند که یک ماتریس ( یک بعدی یا دو بعدی ) و یک عدد از کاربر بگیرد. خروجی این تابع ، جایگاه سطر و ستون عدد مورد نظر در ماتریس باشد.

14 - کدی بنویسید که مجموع مربعات اعداد زوج 2 تا 200 را به کمک حلقه for محاسبه کند. همچنین در ادامه کدی بنویسید که مجموع مربعات مضرب های 5 از 5 تا 1000 را بدست آورد.

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

16 - تابعی بنویسید که ماتریسی از کاربر بگیرد و تعداد اعداد بین 1 تا 10 آن را محاسبه کند و به عنوان خروجی بدهد.

17 - برنامه ای بنویسید که سرعت اولیه و زاویه پرتاب را از کاربر گرفته و نمودار تغییر مکان افقی و تغییر مکان عمودی را برحسب زمان رسم کند.

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

19 - برنامه ای بنویسید که محاسبات زیر را انجام داده و نتیجه را نمایش دهد.

\[\sqrt{2}[\frac{5}{2^{16}} + \frac{ln(20)}{3^{4}}]\]

\[[sin(35)+\frac{tan^{-1}(20)}{\sqrt{3}}]cos(10)\]

20 - برنامه ای بنویسید که توابع زیر را در بازه صفر تا 2pi در یک تصویر رسم کند.

\[y_{1}=sin(2x)\;\; , \;\;y_{2}=tanh(cosh(0))\]

21 - برنامه ای بنویسید که ضابطه تابع  f(x)   را همراه باn+1  نقطه متمایز X0.X1.X2……..Xn   دریافت کنید وخروجی زیر را داشته باشد

تابع درونیاب اسپلاین مکعبی طبیعی را محاسبه کنید.

نمودار های تابع f(x)  وتابع درونیاب اسپلاین را در یک مختصات رسم کنید.

نمودار تابع خطا را رسم کنید

22 - برنامه ای بنویسید که ضابطه تابع  f(x)   را به همراه نقاط گره ایX0.X1.X2……..Xn  دریافت کنید علاوه برآن به ازای هرنقطه xi  مقادیر   k=0,1,2,…,mi   .f(xi)(k)   را محاسبه کند

چند جمله ای درونیاب هرمیت تابع f(x)  را محاسبه کنید

نمودار های  تابع f(x)   چند جمله ای درونیاب هرمیت دریافت کنید

تابع f(x) خطا را رسم کنید

23 - برنامه فروشگاه: برنامه ی فروشگاھی را بنویسید که

الف ) ١٠یا بیشتر از٠  کالا در انبار داشته باشد

ب ) باید بتوان به کالاھای در انبار اضافه یا کم کرد.

ج ) باید لیستی از تمام کالاھا برای خریدار نمایش داده شود و خریدار کالای مورد نظر خود را انتخاب و خریداری کند و این کالا باید از موجودی انبار کم شود.

د ) ھر کالا باید اطلاعات زیر را شامل شود.

کد کالا ، قیمت ، تعداد موجود

و در انتها فاکتور خرید مشتری را چاپ کند.

24 - در متلب برنامه دفترچھ تلفن را بنویسید. این برنامه باید به تعداد نفرات خواسته شده از کاربر نام و شماره آنھا را دریافت کند سپس از کاربر بپرسد Nam ya tel اگر نام وارد شد شماره مخاطب مربوطه را نمایش دھد و اگر تل وارد شد نام مخاطب را نمایش دھد.

25 - دستگاه زیر را به روش گاووس جردن در متلب حل کنید.

\[\left\{\begin{matrix} x-2y+12k=0\\9x+y+2z-10k=0 \\-8x-y+13z-12k=0\end{matrix}\right.\]

26 - یک ماتریس 4*3 به نام A به صورت زیر تعریف شده است

 

برای هر عنصر این ماتریس، بررسی کنید که آیا مقدار آن بزرگتر از 20 است یا خیر ( از حلقه for و دستور شرطی if استفاده کنید ) در صورت پیداکردن اولین مقدار بزرگتر از 20 در هر سطر، اندیس سطر و ستون آن مقدار را نمایش دهید. ( از دستور disp برای نمایش استفاده کنید و برای تبدیل عدد به کاراکتر از دستور num2str استفاده نمایید) و پس از پیدا کردن اولین مقدار بزرگتر از 20 بقیه ستون های آن سطر را نادیده بگیرید و به سطر بعدی بروید. ( با دستور break )

راهنمایی : برای نمایش مقادیر می توانید از دیتور disp استفاده کنید و برای تبدیل عدد به کاراکتر دستور num2str را به کار بگیرید.

27 - برنامه ای بنویسید که نمرات چند دانشجو را به صورت یک بردار بگیرد و عملیات زیر را انجام دهد

الف - در صورتیکه ورودی کاربر بردار نباشد ( ماتریس یا اسکالر باشد ) پیام خطا دهد. ( ار تابع error استفاده کنید )

ب - با استفاده از حلقه for و دستورات شرطی if-else-end تک تک نمرات را چک کند و به صورت زیر آن ها را تغییر دهد.

- نمرات کمتر از 5 را به 9 تغییر دهد.

- نمرات بین 5 و 8 را به 9.5 تغییر دهد.

- نمرات بین 8 و 10 را به 10 تغییر دهد.

- نمرات بین 10 و 15 را 1 نمره افزایش دهد.

- نمرات بیشتر از 15 و کمتر از 20 را 0.5 نمره افزایش دهد.

28 - برنامه ای بنویسید که نام یکی از فصل های سال را از کاربر بگیرد و با استفاده از ساختار switch-case تعداد روزهای آن فصل را نمایش دهد.

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

30 - تابعی بنویسید که دو عدد را به عنوان ورودی دریافت کند و میانگین و حاصل عدد اول به توان عدد دوم را به عنوان خروجی برگرداند. ( function تعریف کنید)

راهنمایی : به عناون ممثال a عدد اول و b عدد دوم باشد، خروجی های 2/(a+b) و a^b مد نظر هستند.

31 -

32 -

33 -

34 -

35 -

36 -

37 -

38 -

39-

40 -

41 -

42 -

43 -

44 -

45 -

46 -

47 -

48 -

49 -

50 -

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

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