الگوریتم اول

لطفا صبر کنید...

عملیات‌های پایه‌ای روی آرایه‌ها و ماتریس‌ها در MATLAB

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

۱. ایجاد آرایه‌ها و ماتریس‌ها

الف) آرایه‌های یک‌بعدی (بردارها)

آرایه‌های یک‌بعدی یا بردارها می‌توانند به دو صورت سطر یا ستون تعریف شوند:

  • بردار سطری:

    A = [1, 2, 3, 4];  % بردار سطری
  • بردار ستونی:

    B = [1; 2; 3; 4];  % بردار ستونی

ب) ماتریس‌ها

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

C = [1 2 3; 4 5 6; 7 8 9];  % ماتریس ۳x۳

در این مثال، ماتریس C یک ماتریس ۳x۳ است.

پ) آرایه‌ها با استفاده از توابع پیش‌ساخته

  • آرایه‌های صفر:

    Z = zeros(3, 4);  % ایجاد ماتریس ۳x۴ پر شده با صفر
  • آرایه‌های یک:

    O = ones(2, 5);   % ایجاد ماتریس ۲x۵ پر شده با یک
  • آرایه با اعداد تصادفی:

    R = rand(3, 3);   % ایجاد ماتریس ۳x۳ با اعداد تصادفی از توزیع یکنواخت

۲. عملیات‌های ریاضی پایه‌ای روی آرایه‌ها و ماتریس‌ها

الف) جمع و تفریق آرایه‌ها و ماتریس‌ها

  • جمع دو ماتریس یا آرایه:

    A = [1 2 3];
    B = [4 5 6];
    C = A + B;  % جمع دو بردار سطری
  • تفریق دو ماتریس یا آرایه:

    D = A - B;  % تفریق دو بردار سطری

ب) ضرب ماتریس‌ها و آرایه‌ها

  • ضرب ماتریس‌ها: ضرب دو ماتریس با استفاده از ضرب ماتریسی معمولی انجام می‌شود.

    A = [1 2; 3 4];
    B = [5 6; 7 8];
    C = A * B;  % ضرب ماتریس‌ها
  • ضرب عنصر به عنصر (Hadamard Product): برای ضرب عنصر به عنصر از عملگر .* استفاده می‌شود.

    A = [1 2; 3 4];
    B = [5 6; 7 8];
    C = A .* B;  % ضرب عنصر به عنصر
  • ضرب اسکالر با ماتریس:

    scalar = 2;
    A = [1 2; 3 4];
    B = scalar * A;  % ضرب ماتریس با اسکالر

پ) تقسیم ماتریس‌ها و آرایه‌ها

  • تقسیم عنصر به عنصر: برای تقسیم عناصر دو آرایه به‌صورت عنصر به عنصر از عملگر ./ استفاده می‌شود.

    A = [1 2; 3 4];
    B = [5 6; 7 8];
    C = A ./ B;  % تقسیم عنصر به عنصر
  • تقسیم ماتریس‌ها: برای تقسیم ماتریس‌ها به صورت ماتریسی (یعنی معکوس یک ماتریس ضرب در ماتریس دیگر) از عملگر \ یا / استفاده می‌شود.

    A = [1 2; 3 4];
    B = [5 6; 7 8];
    C = A \ B;  % تقسیم ماتریسی (حل معادلات خطی)

۳. توابع ریاضی برای آرایه‌ها و ماتریس‌ها

MATLAB دارای بسیاری از توابع ریاضی پیش‌ساخته برای انجام عملیات روی ماتریس‌ها و آرایه‌ها است:

  • جمع تمامی عناصر ماتریس:

    A = [1 2 3; 4 5 6];
    totalSum = sum(A(:));  % جمع تمامی عناصر ماتریس
  • میانگین تمامی عناصر ماتریس:

    meanValue = mean(A(:));  % میانگین تمامی عناصر ماتریس
  • حداکثر و حداقل مقدار در ماتریس:

    maxValue = max(A(:));  % مقدار بیشینه
    minValue = min(A(:));  % مقدار کمینه
  • مقدار ویژه (Eigenvalue):

    [V, D] = eig(A);  % مقدار ویژه و بردار ویژه
  • ترانسپوز ماتریس:

    A = [1 2; 3 4];
    B = A';  % ترانسپوز ماتریس A

۴. اندیس‌دهی و استخراج مقادیر

الف) دسترسی به مقادیر یک ماتریس یا آرایه

برای دسترسی به مقادیر در ماتریس‌ها و آرایه‌ها می‌توانید از اندیس‌دهی استفاده کنید:

  • دسترسی به عنصر خاص:

    A = [1 2 3; 4 5 6];
    value = A(2, 3);  % دسترسی به عنصر در ردیف دوم و ستون سوم
  • دسترسی به تمامی مقادیر در یک ردیف یا ستون:

    row = A(2, :);  % تمامی مقادیر ردیف دوم
    column = A(:, 3);  % تمامی مقادیر ستون سوم

ب) تغییر مقادیر یک ماتریس یا آرایه

  • تخصیص یک مقدار جدید به یک عنصر خاص:

    A(1, 2) = 10;  % تغییر مقدار عنصر در ردیف اول و ستون دوم
  • تخصیص مقادیر جدید به یک ردیف یا ستون:

    A(2, :) = [7 8 9];  % تغییر ردیف دوم

۵. عملیات‌های خاص روی آرایه‌ها و ماتریس‌ها

  • مجموعه و متمم آرایه‌ها:

    • مجموعه‌ای از عناصر منحصر به فرد:

      A = [1 2 2 3 4 4 5];
      uniqueElements = unique(A);  % یافتن عناصر منحصر به فرد
    • ترکیب آرایه‌ها:

      A = [1 2 3];
      B = [4 5 6];
      C = [A B];  % ترکیب دو آرایه سطری
  • عناصر غیر صفر آرایه:

    A = [0 1 0 3 4];
    nonZeroElements = nonzeros(A);  % استخراج عناصر غیر صفر

 

نتیجه‌گیری

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