دستور range در متلب|تعریف ماتریس با دستور range (جلسه دهم)

range in matlab
دستور range در متلب

در این دوره آنلاین آموزش متلب به صورت رایگان با سری آموزش‌های نرم افزار متلب در خدمت شما هستیم. جلسه گذشته با دستور clc در متلب آشنا شدید. در این جلسه از آموزش‌؛ کارشناسان تیم کارت به صورت کاملا تصویری شما را با نحوه اجرای دستور clc در متلب آشنا خواهند کرد. در واقع آنچه که شما به طور کاملا عملی برای استفاده در انجام پروژه متلب نیاز دارید در این جلسات ارائه خواهد شد.

نحوه اجرای دستور range در متلب

می‌توانیم برای تعریف ماتریس‌ها از range نیز استفاده کنیم. در حالت کلی رنج به این صورت تعریف می‌شود. تابع range یک آرایه ایجاد می‌کند که دربردارنده ی یک محدوده از عناصر است. این تابع، یک آرایه را برمی‌گرداند که ترتیب آن از کوچک به بزرگ است.

نکته: اگر که پارامتر کوچکتر، بزرگتر از مقدار پارامتر بزرگتر باشد، تابع range از بزرگتر به کوچکتر نوشته می‌شود.

برای تعریف ماتریس با دستور range در نرم افزار متلب باید به این صورت بنویسیم:
a:b

دستور range در متلب مرحله اول
آموزش دستور range در متلب مرحله اول

برای مثال این عدد a برابر با ۷ است و عدد b برابر با ۳ است.
این تصاعد حسابی است که وقتی a:b می‌نویسید، با قدر نسبت ۱، یکی یکی به جلو می‌رود. مثلاً a,a+1,a+2, …, b یعنی از a تا b هر عددی که باشد.
مثلا اگر از ۱ تا ۱۰ بنویسیم، می‌آید از ۱ تا ۱۰ به جلو می‌رود:
1,2,3,4,… ,10
اما 7:3 یک ماتریس خالی را به ما نشان می‌دهد.
آن را باید به گونه‌ای دیگر بنویسیم که بعداً برای شما تعریف می‌کنم.

دستور range در متلب مرحله دوم
آموزش دستور range در متلب مرحله دوم

اگر بخواهیم مثال بزنیم، همان ۱ تا ۱۰ را نشان داد که به صورت تصاعد حسابی است.
تصاعد حسابی چیست؟ آن را در ریاضیات دبیرستان خواندید. به دنباله‌ای از اعداد گفته می‌شود که اختلاف هر دو جمله‌ی متوالی آن مقداری ثابت باشد که آن مقدار ثابت را با d نشان می‌دادیم که به d هم قدرنسبت می‌گفتیم. به این تصاعد، تصاعد حسابی می‌گفتیم. در ریاضی تصاعدهای دیگری نیز داشتیم.
در مثال بالا اختلاف این اعداد ۱ است. یکی یکی به جلو می‌رود. به ۱ قدرنسبت می‌گویند که با d نشان می‌دهند. ما می‌خواهیم قدرنسبت ۱ نباشد و ۲ باشد و ۲ تا ۲ تا جلو برویم. بنابراین باید به صورت زیر بنویسیم:

دستور range در متلب مرحله سوم
آموزش دستور range در متلب مرحله سوم

مشاهده می‌کنید که قدرنسبت ما در اینجا ۲ است که اعداد به صورت ۲تا ۲تا افزایش پیدا می‌کنند و جلو می‌روند.
حال اگر بخواهیم 7 : 3 را بنویسیم، چگونه باید بنویسیم؟ کمی روی آن فکر کنید.
قدر نسبت را در اینجا تغییر می‌دهیم و آن را ۱- در نظر می‌گیریم و به صورت تصویر زیر کد را می‌نویسیم.

دستور range در متلب مرحله چهارم
آموزش دستور range در متلب مرحله چهارم

مشاهده می‌کنیم که یکی یکی از اعداد کم می‌شود و بسیار ساده است.
حال می‌خواهیم یک ماتریس دیگری به نام F تعریف کنیم که این ماتریس به صورت زیر نشان داده می‌شود:
F = [1 2 3 4 ; 5 6 7 8 ; 9 10 11 12]

دستور range در متلب مرحله پنجم
آموزش دستور range در متلب مرحله پنجم
ماتریس F در متلب
نمایش ماتریس F در متلب

یک ماتریس به صورت بالا خواهیم داشت که تعداد سطرهای آن ۳ تا و تعداد ستون‌های آن ۴ تا است.
ما می‌خواهیم ۶ و ۷ و ۸ را از داخل ماتریس به دست آوریم. چگونه باید آن را به دست آوریم؟ راه حل آن ساده است. کمی در مورد آن فکر کنید.
در اینجا علامت «:» به معنی «تا» بود. 1 : 10 یعنی ۱ تا ۱۰ را به ما بدهد.
در اینجا ۶ تا ۸ را می‌خواهیم. آن را چگونه باید به دست آوریم؟
می‌گوییم که ماتریس F از سطر۲ و ستون ۲ یعنی عدد ۶ تا ۸ را بدهد. هم می‌توانیم تا ۸ بنویسیم و هم می‌توانیم بگوییم تا آخرش را به ما نشان دهد.

دستور range در متلب مرحله ششم
آموزش دستور range در متلب مرحله ششم

F (2 , 2 : end)
ans =
6 7 8
مشاهده می‌کنید که ۶ و ۷ و ۸ را به سادگی به ما نشان داده است.

دستور range در متلب مرحله هفتم
آموزش دستور range در متلب مرحله هفتم

باز در همین ماتریس F برای مثال سطر ۲ و ستون ۱ تا انتهای آن را می‌خواهیم. یعنی ۵ و ۶ و ۷ و ۸ را به ما نشان دهد.
F (2 , 1 : end)
ans =
5 6 7 8

اما این را می‌توان به صورت دیگری نیز نوشت. به طور کلی سطر ۲ است. پس به این صورت می‌نویسیم:

تعریف ماتریس با range در متلب
نحوه تعریف ماتریس با range در متلب
دستور range در متلب مرحله هشتم
آموزش دستور range در متلب مرحله هشتم

ماتریس F از ۲ تا آخر به صورت زیر باید نوشته شود:
F (2:end)
ans =
5 9 2 6 10 3 7 11 4 8 12
که در جواب سطر۲ را به ما نشان داده است.

دستور range در متلب مرحله نهم
آموزش دستور range در متلب مرحله نهم

البته در اینجا یک اشتباه وجود دارد که از ۵ شروع کرده است و تا ۱۲ آن را به صورت افقی نوشته است.
آن چیزی که ما می‌خواستیم، باید بنویسیم در ماتریس F سطر دوم تا (وقتی علامت : قرار می‌دهیم، یعنی همه‌ی سطر دوم) پس مشاهده می‌کنیم که ۵ و ۶ و ۷ و ۸ را نمایش داد.
توجه: کوتیشن مارک رو در هنگام اجرای دستور range در پنجره command window ننویسید.
 “F(2 , :)”
ans =
5 6 7 8

دستور range در متلب مرحله دهم
آموزش دستور range در متلب مرحله دهم

برای مثال ما در ماتریس F سطر سوم را می‌خواهیم. این سطر را چگونه به دست آوریم؟
به این صورت می‌نویسیم:
“F(3, :)”
یعنی سطر سوم :
یعنی همه‌ی عددهای این سطر را می‌خواهیم.
ans =
9 10 11 12
که به راحتی سطر آخر را هم به ما نشان داد.

دستور range در متلب مرحله یازدهم
آموزش دستور range در متلب مرحله یازدهم

به طور مثال می‌توانیم بگوییم که در ستون سوم همه درایه‌ها را می‌خواهیم. آن را چگونه به دست آوریم؟ به این صورت می‌نویسیم که:
“F(: , 3)”
ans =

ستون ماتریس f در متلب مرحله اول
نمایش ستون ماتریس f در متلب مرحله اول
دستور range در متلب مرحله دوازدهم
آموزش دستور range در متلب مرحله دوازدهم

که همان‌طور که مشاهده می‌کنید ستون سوم یعنی

ستون ماتریس در متلب مرحله دوم
نمایش ستون ماتریس در متلب مرحله دوم

را به ما داده است.
حال به نظر شما F اگر به صورت زیر باشد، چه چیزی را نشان می‌دهد؟
“(: , :)F”

دستور range در متلب مرحله سیزدهم
آموزش دستور range در متلب مرحله سیزدهم

دقیقا خود F را به ما نشان می‌دهد.
ans =

ماتریس f در متلب با دستور range
نمایش ماتریس f در متلب با دستور range


حال به نظر شما این F که به صورت زیر تعریف شده است، چه چیزی را نشان می‌دهد؟
F(:)

نحوه آموزش دستور range در متلب مرحله چهاردهم

در اینجا همه‌ی اعداد در زیر هم قرار می‌گیرند. چرا به این صورت می‌شود؟ زیرا سطر به ستون ارجح است.
ans =

ارجحیت سطر به ستون در متلب
نمایش ارجحیت سطر به ستون در متلب


و اینجا ماتریس ما به یک بردار تبدیل شده است و خود این یک روشی برای تبدیل ماتریس به بردار است.
حال اگر بخواهیم بیشتر توضیح دهیم که چرا به این صورت درآمده است، با استفاده از تصویر زیر آن را توضیح می‌دهم.

دستور range در متلب مرحله چهاردهم
آموزش دستور range در متلب مرحله چهاردهم

همیشه اولویت با سطر است.

مولفه های اول ماتریس در متلب
نمایش مولفه های اول ماتریس در متلب

یعنی ابتدا a1، بعد a2، بعد a3 را داریم. فرض کنیم این ماتریس تا سطر سوم فقط باشد و بعد از آن سطر دیگری نداشته باشیم. پس به مؤلفه‌ی دوم اضافه می‌شود. مؤلفه‌ی اول ۱ می‌شود و به ستون دوم می‌رود. باز هم اولویت با سطر است. در اینجا هم داریم:

مولفه های ماتریس در متلب
نمایش مولفه های دوم ماتریس در متلب

باز عدد سطر ۱ می‌شود و ستون سوم را داریم.

مولفه های سوم ماتریس در متلب
نمایش مولفه های سوم ماتریس در متلب

دقیقا در جایی که ما هم اشتباهی انجام دادیم، اگر ویدیو را به عقب ببرید، مشاهده می‌کنید به همین دلیل بود که از سطر دوم آغاز کرد و زیر هم و کنار هم شروع به نوشتن کرد.

اگر ماتریس ما سه‌بُعدی هم بود، اولویت باز به همین ترتیب است. اول سطر، بعد ستون و بعد از آن به اصطلاح طبقه‌ی ما قرار می‌گیرد. ولی آیا فقط می‌توان آن‌ها را زیر هم یا به صورت عمودی نوشت؟ نمی‌توان آن را به صورت افقی نوشت؟ می‌توانیم به صورت افقی نیز بنویسیم.

در صورتی که شما پس از خواندن محتوای جلسات قبلی و این بخش که به ساده‌ترین زبان ممکن درباره‌ی برنامه‌ی متلب و محیط کاربری آن توضیح داده باز هم سردرگم هستید. می‌توانید با برون سپاری انجام پروژه متلب خود به کارشناسان حرفه‌ای کارت پروژه می‌باشد. میتوانید از طریق شماره‌ی 09104503300 با پشتیبانان کارت از طریق پیام یا تماس در ارتباط باشید.

جلسه‌ی بعد درباره نحوه حذف سطر و ستون مشخص ماتریس‌ ها و درایه‌ ها در متلب صحبت خواهیم کرد تا جلسه‌ی آینده شما را به خدا می‌سپارم.

برای ثبت سفارش لطفا در تلگرام یا واتساپ یا ایتا به شماره 09104503300 پیام دهید.