شنبه, 15 اسفند 1394 12:31

الگوریتم محاسبه ترانهاده (transpose) یک ماتریس

نوشته شده توسط
این مورد را ارزیابی کنید
(0 رای‌ها)

الگوریتم

در این مطلب آموزشی از سری آموزش الگوریتم بهگذر ابتدا الگوریتم محاسبه ترانهاده (transpose) یک ماتریس را برای حل توسط کامپیوتر طراحی و سپس نمونه کد آن را برای زبان برنامه نویسی سی شارپ C# پیاده سازی می کنیم.

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

 

1) شروع

2) یک ماتریس m×n بخوان و در متغیر a قرار بده.

3) یک عدد بخوان و در k قرار بده.

4) یک ماتریس m×n ایجاد کن و در متغیر c قرار بده.

5) مقدار صفر را در متغیر i قرار بده.

6) مقدار صفر را در متغیر j قرار بده.

7) مقدار a[i, j] را در c[j,i] قرار بده.

8) یک واحد به متغیر j اضافه کن.

9) اگر j از تعداد ستون های ماتریس a کوچکتر است است به مرحله 6 برو.

10) یک واحد به متغیر i اضافه کن.

11) اگر مقدار i از تعداد سطرهای ماتریس a کوچکتر است به مرحله 5 برو.

12) ماتریس C را بعنوان ترانهاده ماتریس A نمایش بده.

13) پایان.

 

نکته: در نمونه کد زیر برای ذخیره عناصر یک ماتریس از یک آرایه دو بعدی استفاده است. چنانچه بخواهیم در عناصر ماتریس از اعداد اعشاری استفاده کنیم می بایست متغیر ها را از نوع double تعریف کنیم.

 

نمونه کد C# برای الگوریتم محاسبه ترانهاده (transpose) یک ماتریس

 

int[,] a = { { 3, 4, 1 }, { 2, 5, 7 }, { 1, 3, 4 } };

int[,] c = new int[3,3];

for (int i = 0; i < a.GetLength(0); i++) {

for (int j = 0; j < a.GetLength(1); j++) {

c[j, i] = a[i, j];

}

}

for (int i = 0; i < a.GetLength(0); i++) {

for (int j = 0; j < a.GetLength(1); j++)

Console.Write(c[i, j] + "\t");

Console.WriteLine();

}

 

توجه: نمونه کد های بالا در پروژه ی ConsoleApplication نوشته شده است.

 

همچنین بخوانید


الگوریتم ماگزیموم دو عدد

الگوریتم ماگزیموم سه عدد

الگوریتم چهار عدد اصلی

الگوریتم روزهای هفته

الگوریتم مساحت و محیط مستطیل

الگوریتم مساحت و محیط دایره

الگوریتم مساحت مثلث

الگوریتم مساحت و حجم کره

الگوریتم جا به جا کردن مقادیر دو متغیر

الگوریتم ترتیب نزولی سه عدد

الگوریتم مجموع و میانگین پنج عدد

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

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

الگوریتم تعیین قائم الزاویه بودن مثلث

الگوریتم ریشه های معادله درجه دوم

الگوریتم محاسبه بیمه و مالیات حقوق یک کارمند

الگوریتم محاسبه حقوق یک کارمند بر اساس ساعت کار

الگوریتم محاسبه مالیات با درصدهای مختلف

الگوریتم تعیین هزینه تلگراف

الگوریتم مجموع 20 عدد

الگوریتم جمع دو ماتریس

الگوریتم تفریق دو ماتریس

الگوریتم ضرب داخلی یا ضرب نقطه ای (dot product) دو ماتریس

الگوریتم ضرب یک عدد حقیقی (scalar) در یک ماتریس

الگوریتم محاسبه ترانهاده (transpose) یک ماتریس

الگوریتم محاسبه دترمینان (determinant) یک ماتریس 2×2

الگوریتم محاسبه کهاد (minor) یک ماتریس

بازدید 4521 بار آخرین ویرایش در چهارشنبه, 19 اسفند 1394 15:32

اضافه کردن نظر


کد امنیتی
تازه سازی

جدیدترین های آندروید

جدیدترین های آموزش زبان فرانسوی

جدیدترین های آموزش زبان انگلیسی

جدیدترین های صوتی

جدیدترین های ویندوزفون

جدیدترین های الگوریتم

جدیدترین های آموزش PHP

جدیدترین های پیامک

ورود

رضایت از بهگذر را به گوش گوگل برسانید
Web Analytics

بیشتر بخوانید

بیشتر بخوانید

بیشتر بخوانید

Window Phone 8 Internet Explorer 

Kid's Corner یکی از ویژگی های جالب توجه و منحصر بفرد می باشد که در سیستم عامل ویندوز فون 8 به کار رفته است. شاید کودک شما بخواهد با گوشی تلفن همراه شما بازی و یا از نرم افزارهای آن استفاده کند اما شما مایل نیستید که او به آن بخش محتوا که آن را مناسب سن او تشخیص نمی دهید دسترسی داشته باشد. به احتمال زیاد نخستین راهکاری که برای حل این مسئله به ذهن شما می رسد استفاده از نرم افزارهای امنیتی که بخش های مختلف گوشی را قفل می کنند باشد. اما ویندوز فون 8 راه حل بهتری را به شما پیشنهاد می کند.

بیشتر بخوانید

الگوریتم مساحت و محیط مستطیل

در این مطلب آموزشی ابتدا الگوریتم مساحت و محیط مستطیل را برای حل توسط کامپیوتر طراحی و سپس نمونه کد آن را برای زبان های برنامه نویسی سی شارپ C# و وی بی دات نت VB.NET پیاده سازی می کنیم.

رضایت از بهگذر را به گوش گوگل برسانید