انجمن سایت کلیدستان



چگونه این پروژه را انجام بدهمزمان کنونی: ۱۳۹۵/۰۹/۱۹، ۰۸:۰۴ ب.ظ
کاربران در حال بازدید این موضوع: 1 مهمان
نویسنده: cloner
آخرین ارسال: admin
پاسخ 9
بازدید 4938

رتبه موضوع:
  • 1 رای - 2 میانگین
  • 1
  • 2
  • 3
  • 4
  • 5
چگونه این پروژه را انجام بدهم

چگونه این پروژه را انجام بدهم

#1
چگونه این پروژه را انجام بدهم دوستان اگه کسی میتونه در این مورد کمکم کنه لطفا راهنمایی کنه تا انجامش بدم
 با استفاده از نرم افزار متلب تابعی را بنویسید که ماتریس a  را دریافت نموده
 اگر ماتریس a  مربعی نباشد پیغام matrix must be square  نمایش داده شود
 و اگر ماترس a  وارون پذیر نباشد پیغام matrix is singular  نمایش داده شود
 در صورتی که ماتریس a  هم مربعی و هم وارون پذیر بود این تابع ماتریس الحاقی a  را محاسبه کند و بعنوان خروجی ارائه نماید.
اگه کسی میتونه کمک کنه این ایدی رو ادد کنه
saeid_khatamii@yahoo.com

 

چگونه این پروژه را انجام بدهم

#2
سلام.
من بخش اولش رو براتون نوشتم (محاسبه ماتریس الحاقی به عهده خودتان) :

کد:
clear all
close all
clc

A=input('please inter the matix : ');

A_size=size(A);
if (A_size(1)~=A_size(2))
      disp('matrix must be square');
else
      if (det(A)==0)
          disp('matrix is singular');
      end
end

با دستور input ، ماتریس ورودی را دریافت می کنیم (مثلا می نویسیم [1 2 3;4 5 6] و سپس کلید inter از کیبورد را فشار می دهیم).
دستور size ، اندازه ماتریس رو محاسبه میکنه و سپس بر اساس آن، بررسی می کنیم که آیا ماتریس مربعی هست یا خیر.
دستور det ، برای محاسبه دترمینان یک ماتریس در متلب به کار می رود. اگر دترمینان ماتریس برابر صفر باشد، بنابراین ماتریس singular است.
موفق باشید.
bookbook 
لطفا برای درج کد، از دکمه مخصوص درج کد در ادیتور انجمن استفاده کنید.
در مورد برنامه نویسی، مدیران تنها راهنمایی می کنند و نوشتن برنامه نهایی، به عهده کاربران می باشد (اینجا محلی برای یادگیری است، نه سفارش کدنویسی).
کاربران باید ابتدا خود به خطایابی برنامه بپردازند، نه اینکه به محض دیدن خطا، کدها را در انجمن، copy و paste کرده و از مدیران انتظار بررسی داشته باشند.
 سپاس شده توسط cloner

چگونه این پروژه را انجام بدهم

#3
(۱۳۹۲/۰۷/۱۵, ۰۵:۵۳ ق.ظ)'admin' نوشته: سلام.
من بخش اولش رو براتون نوشتم (محاسبه ماتریس الحاقی به عهده خودتان) :


کد:
clear all
close all
clc

A=input('please inter the matix : ');

A_size=size(A);
if (A_size(1)~=A_size(2))
      disp('matrix must be square');
else
      if (det(A)==0)
          disp('matrix is singular');
      end
end

با دستور input ، ماتریس ورودی را دریافت می کنیم (مثلا می نویسیم [1 2 3;4 5 6] و سپس کلید inter از کیبورد را فشار می دهیم).
دستور size ، اندازه ماتریس رو محاسبه میکنه و سپس بر اساس آن، بررسی می کنیم که آیا ماتریس مربعی هست یا خیر.
دستور det ، برای محاسبه دترمینان یک ماتریس در متلب به کار می رود. اگر دترمینان ماتریس برابر صفر باشد، بنابراین ماتریس singular است.
موفق باشید.

 

با سلام به شما دوست عزیز
خیلی خیلی ازتون ممنون هستم که بهم کمک کردین
دستت درد نکنه
فقط میشه این دستور رو بهم توضیح بدین که مفهومش چیه

کد:
if (A_size(1)~=A_size(2))

چگونه این پروژه را انجام بدهم

#4
خواهش می کنم.
ما ابتدا با دستور size ، اندازه ماتریس A رو محاسبه کردیم (قبل از این خط از کدها). یعنی مثلا اگر ماتریس A دارای 3 ردیف و 2 ستون باشه، مقداری که دستور size بر می گرداند، به صورت یک بردار است که اولین عنصر آن، برابر تعداد ردیف های ماتریس A (یعنی عدد 3) و دومین عنصر آن، برابر تعداد ستون های ماتریس A (یعنی عدد 2) می باشد. ما این مقادیر رو در متغیر A_size ذخیره کردیم. بنابراین، آن خط از کدها، چک می کند که آیا تعداد ردیف ها و ستون های ماتریس A ، برابر می باشد یا خیر، که اگر برابر باشد، آنگاه ماتریس A ، یک ماتریس مربعی است.
علامت =~ برای چک کردن نامساوی بودن دو مقدار به کار می رود.
bookbook 
لطفا برای درج کد، از دکمه مخصوص درج کد در ادیتور انجمن استفاده کنید.
در مورد برنامه نویسی، مدیران تنها راهنمایی می کنند و نوشتن برنامه نهایی، به عهده کاربران می باشد (اینجا محلی برای یادگیری است، نه سفارش کدنویسی).
کاربران باید ابتدا خود به خطایابی برنامه بپردازند، نه اینکه به محض دیدن خطا، کدها را در انجمن، copy و paste کرده و از مدیران انتظار بررسی داشته باشند.

چگونه این پروژه را انجام بدهم

#5
(۱۳۹۲/۰۷/۱۵, ۰۳:۱۲ ب.ظ)'admin' نوشته: خواهش می کنم.
ما ابتدا با دستور size ، اندازه ماتریس A رو محاسبه کردیم (قبل از این خط از کدها). یعنی مثلا اگر ماتریس A دارای 3 ردیف و 2 ستون باشه، مقداری که دستور size بر می گرداند، به صورت یک بردار است که اولین عنصر آن، برابر تعداد ردیف های ماتریس A (یعنی عدد 3) و دومین عنصر آن، برابر تعداد ستون های ماتریس A (یعنی عدد 2) می باشد. ما این مقادیر رو در متغیر A_size ذخیره کردیم. بنابراین، آن خط از کدها، چک می کند که آیا تعداد ردیف ها و ستون های ماتریس A ، برابر می باشد یا خیر، که اگر برابر باشد، آنگاه ماتریس A ، یک ماتریس مربعی است.
علامت =~ برای چک کردن نامساوی بودن دو مقدار به کار می رود.
 

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

چگونه این پروژه را انجام بدهم

#6
شما کدها رو بنویسید، اگر جواب نداد، کدهای متلب رو اینجا قرار بدید تا براتون تصحیح کنم. 
bookbook 
لطفا برای درج کد، از دکمه مخصوص درج کد در ادیتور انجمن استفاده کنید.
در مورد برنامه نویسی، مدیران تنها راهنمایی می کنند و نوشتن برنامه نهایی، به عهده کاربران می باشد (اینجا محلی برای یادگیری است، نه سفارش کدنویسی).
کاربران باید ابتدا خود به خطایابی برنامه بپردازند، نه اینکه به محض دیدن خطا، کدها را در انجمن، copy و paste کرده و از مدیران انتظار بررسی داشته باشند.

چگونه این پروژه را انجام بدهم

#7
(۱۳۹۲/۰۷/۱۶, ۰۸:۵۶ ق.ظ)'admin' نوشته: شما کدها رو بنویسید، اگر جواب نداد، کدهای متلب رو اینجا قرار بدید تا براتون تصحیح کنم. 
 

دوستت عزیز لطفا نظرتون رو راجعبه این کد که خودم نوشتم رو بدین
اگه جاییش هم که مشکل داره یا اشتباه نوشتم بهم توضیح بدین و کد درست رو از ابتدا یکبار دیگه بنویسین..

کد:
close all
clc
% m=ماتریس ورودیتون رو اینجا بنویسید.
m_size=size(m);
if m_size(1)~=m_size(2)
print('matrix must be square.')
end
DET=det(m);
if DET==0
print('matrix is singular')
end
if m_size(1)==m_size(2) && DET~=0
for i=1:m_size(1)
for j=1:m_size(2)
M=m;
M(i,:)=[];
M(:,j)=[];
A(i,j)=((-1)^(i+j))*det(M);
end
end
end

A


 

چگونه این پروژه را انجام بدهم

#8
(۱۳۹۲/۰۷/۱۷, ۰۴:۰۲ ب.ظ)'cloner' نوشته:
(۱۳۹۲/۰۷/۱۶, ۰۸:۵۶ ق.ظ)'admin' نوشته: شما کدها رو بنویسید، اگر جواب نداد، کدهای متلب رو اینجا قرار بدید تا براتون تصحیح کنم. 

 

دوستت عزیز لطفا نظرتون رو راجعبه این کد که خودم نوشتم رو بدین
اگه جاییش هم که مشکل داره یا اشتباه نوشتم بهم توضیح بدین و کد درست رو از ابتدا یکبار دیگه بنویسین..


کد:
close all
clc
% m=ماتریس ورودیتون رو اینجا بنویسید.
m_size=size(m);
if m_size(1)~=m_size(2)
print('matrix must be square.')
end
DET=det(m);
if DET==0
print('matrix is singular')
end
if m_size(1)==m_size(2) && DET~=0
for i=1:m_size(1)
for j=1:m_size(2)
M=m;
M(i,:)=;
M(:,j)=;
A(i,j)=((-1)^(i+j))*det(M);
end
end
end

A


 

 

دوست عزیز میشه توضیح بدی که چطور میشه این برنامه رو تست منم یعنی چطوری اجراش منم و اون سه پیغام به نمایش در بیاد؟/

 

چگونه این پروژه را انجام بدهم

#9
شما موضوع دیگری دقیقا با همین عنوان باز کردید، قصد داشتم آن را حذف کنم، اما چون 4i469x پاسختون رو داده بودن، هر دو موضوع رو نگه داشتم. نگاهی به آن موضوع انداختم، توضیحات 4i469x کامل است و پاسخ من نیز مثل پاسخ ایشان می باشد. توصیه می شود مباحث مورد نظر را با دقت بخوانید.
این موضوع رو قفل می کنم، شما هم لطف کنید و دیگر، دو موضوع با یک عنوان نسازید.
موفق باشید دوست عزیز.
 
bookbook 
لطفا برای درج کد، از دکمه مخصوص درج کد در ادیتور انجمن استفاده کنید.
در مورد برنامه نویسی، مدیران تنها راهنمایی می کنند و نوشتن برنامه نهایی، به عهده کاربران می باشد (اینجا محلی برای یادگیری است، نه سفارش کدنویسی).
کاربران باید ابتدا خود به خطایابی برنامه بپردازند، نه اینکه به محض دیدن خطا، کدها را در انجمن، copy و paste کرده و از مدیران انتظار بررسی داشته باشند.


پرش به انجمن:


کاربران در حال بازدید این موضوع: 1 مهمان

آخرین کلیدهای غیررایگان

شما هم می توانید کلیدهای غیررایگان منتشر کنید (بیشتر بدانید)