Professional Documents
Culture Documents
HW1
HW1
2𝑥1 − 𝑥2 = 0
1) {−𝑥1 + 2𝑥2 − 𝑥3 = 0
−𝑥2 + 𝑥3 = 1
پاسخ)
1
= 𝑥3 = 3
1/3
1
→ = 𝑥2 (0 + 𝑥3 ) = 2
3/2
1
{𝑥1 = (0 + 0𝑥3 − 𝑥2 ) = 1
2
𝑥1 + 𝑥2 + 𝑥3 = 1
2) { 𝑥1 + 2𝑥2 + 2𝑥3 = 1
𝑥1 + 2𝑥2 + 3𝑥3 = 1
پاسخ)
1 1 1 1 −𝑅1+ 𝑅2 → 𝑅2 1 1 1 1 −𝑅1+ 𝑅3 → 𝑅3 1 1 1 1 −𝑅2+ 𝑅3 → 𝑅3
[1 2 2 → ]1 [0 1 → ]1 0 [0 1 → ]1 0
1 2 3 1 1 2 3 1 0 1 2 0
1 1 1 1
[0 1 1 ]0
0 0 1 0
0
= 𝑥3 = 0
{ → 1
𝑥2 = 0 − 𝑥3 = 0
𝑥1 = 1 − 𝑥3 − 𝑥2 = 1
0 4 −3 3 𝑅2 → 𝑅1 −1 7 −5 4 −𝑅1+ 𝑅3 → 𝑅3 −1 7 −5 4 −1𝑅2+ 𝑅3 → 𝑅3
4
[−1 7 −5 → ]4 [0 → ]4 −3 3 [ 0 4 −3 → ]3
−1 8 −6 5 −1 8 −6 5 0 1 −1 1
−1 7 −5 4
0 4 −3 3
[ ]−1 1
0 0
4 4
1/4
= 𝑥3 = −1
−1/4
1
→ = 𝑥2 (3 + 3𝑥3 ) = 0
4
1
{𝑥1 = (4 + 5𝑥3 − 7𝑥2 ) = 1
−1
1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
1 2 2 2 0 −𝑅1+ 𝑅2 → 𝑅2 0 1 1 1 −1 −𝑅1+ 𝑅3 → 𝑅3 0 1 1 1 −1
[ →] [ →] [ ]
1 2 3 3 0 1 2 3 3 0 0 1 2 2 −1
1 2 3 4 0 1 2 3 4 0 1 2 3 4 0
1 1 1 1 1 1 0 0 0 2
−𝑅1 + 𝑅4 → 𝑅4 0 1 1 1 −1 −𝑅2+ 𝑅1 → 𝑅1 0 1 1 1 −1 −𝑅2+ 𝑅3 → 𝑅3
→ [ →] [ →]
0 1 2 2 −1 0 1 2 2 −1
0 1 2 3 −1 0 1 2 3 −1
1 0 0 0 2 1 0 0 0 2 1 0 0 0 2
0 1 1 1 −1 −𝑅2+ 𝑅4 → 𝑅4 0 1 1 1 −1 −𝑅3+ 𝑅2 → 𝑅2 0 1 0 0 −1
[ →] [ →] [ ]
0 0 1 1 0 0 0 1 1 0 0 0 1 1 0
0 1 2 3 −1 0 0 1 2 0 0 0 1 2 0
1 0 0 0 2 1 0 0 0 2
−𝑅3 + 𝑅4 → 𝑅4 0 1 0 0 −1 −𝑅4+ 𝑅3 → 𝑅3 0 1 0 0 −1
→ [ →] [ ]
0 0 1 1 0 0 0 1 0 0
0 0 0 1 0 0 0 0 1 0
𝑥1 = 2
𝑥 = −1
→ { 2
𝑥3 = 0
𝑥4 = 0
)3جواب دستگاه معادله زیر را به روش دلخواه بدست آورید .سپس عدد 15رو به 14تغییر داده و جواب معادله
را با همان روش دوباره بدست آورید .آیا دستگاه معادله بد حالت است؟
8𝑥 + 5𝑦 + 2𝑧 = 15
{ 21𝑥 + 19𝑦 + 16𝑧 = 56
39𝑥 + 48𝑦 + 53𝑧 = 100
پاسخ)
تغییر عدد 15به 14 8 5 2 14 −21𝑅1+ 𝑅2 → 𝑅2 8 5 2 14
8
→ → ] [21 19 16 56 ][ 0 5.875 10.75 19.25
39 48 53 100 39 48 53 100
39
− 𝑅 + 𝑅3 → 𝑅3 8 5 2 14 −23.625𝑅2+ 𝑅3 → 𝑅3
8 1 5.875
→ → ][0 5.875 10.75 19.25
0 23.625 43.25 31.75
8 5 2 15
[0 5.875 10.75 ] 19.25
0 0 0.0213 −45.6596
−45.6596
= 𝑧 = −2143.6
0.0213
1
→ = 𝑦 (19.25 − 10.75𝑧) = 3925.6
5.875
1
{ 𝑥 = (14 − 2𝑧 − 5𝑦) = −1915.8
8
بله دستگاه معادالت داده شده بدحالت است .زیرا با تغییر کوچک 15به 14در جواب دستگاه معادالت تغییر
نسبتا زیادی پدید آمده است.
)4فرم سطری پلکانی کاهش یافته ماتریس Aرا با ذکر تمامی مراحل بدست آورید .رتبه ماتریس Aو جواب
دستگاه معادله 𝐴𝑋 = 0را نیز بدست آورید.
1 −1 0 0 1 −1 0 0 1 0 −1 0
−1 2 −1 0 𝑅1+ 𝑅2 → 𝑅2 0 1 −1 0 𝑅2+ 𝑅1 → 𝑅1 0 1 −1 0
[ →] [ →] [ ]
0 −1 2 −1 0 −1 2 −1 0 −1 2 −1
0 0 −1 1 0 0 −1 1 0 0 −1 1
1 0 −1 0 1 0 −1 0
𝑅2 + 𝑅3 → 𝑅3 0 1 −1 0 𝑅3+ 𝑅2 → 𝑅2 0 1 0 −1 𝑅3+ 𝑅1 → 𝑅1
→ [ →] [ →]
0 0 1 −1 0 0 1 −1
0 0 −1 1 0 0 −1 1
1 0 0 −1 1 0 0 −1
0 1 0 −1 𝑅3 + 𝑅4 → 𝑅4 0 1 0 −1
[ →] [ ]
0 0 1 −1 0 0 1 −1
0 0 −1 1 0 0 0 0
با توجه به فرم سطری پلکانی کاهش یافته به دست آمده رتبه ماتریس Aبرابر با 3است.
پاسخ)
میدانیم که فرم سطری پلکانی کاهش یافته ماتریس Aبه شکل زیر است:
… 1 0 0
0 ⋱ 0 ⋮
𝑚×𝑛𝑍 [= ]
⋮ 0 1 0
0 0 …0 0
که تعداد یک ها rتا میباشد.
𝑥 − 𝑦 − 3𝑧 = 3
𝐴: { 2𝑥 + 𝑧 = 0
𝑐 = 𝑧2𝑦 + 7
الف) برای چه مقداری از 𝑐 دستگاه معادالت جواب دارد؟
پاسخ)
1 −1 −3 3 −2𝑅1+ 𝑅2 → 𝑅2 1 −1 −3 3 −𝑅2+ 𝑅3 → 𝑅3
[2 0 1 → ]0 [0 2 7 → ]−6
0 2 7 𝑐 0 2 7 𝑐
1 −1 −3 3
[0 2 7 ] −6
0 0 0 𝑐 +6
به منظور اینکه دستگاه معادالت ناسازگار نباشد و جواب داشته باشد باید .𝑐 + 6 = 0در نتیجه:
𝑐 = −6
ب) برای مقدار 𝑐 به دست آمده ،مجموعه جواب دستگاه معادله را از لحاظ هندسی توصیف کنید.
پاسخ) دو معادله اول مرتبط با دو صفحه هستند که یکدیگر را قطع میکنند و مجموعه جوابهای آنها یک
خط خواهد بود .در نتیجه دستگاه معادله داده شده با توجه به 𝑐 به دست آمده بیشمار جواب دارد.
)7سازگاری یا ناسازگاری هر یک از معادالت زیر را بررسی کنید .در صورت سازگاری پاسخ آن را به دست
بیاورید.
2𝑥 + 3𝑦 − 𝑧 = 5
𝐴: { 4𝑥 − 𝑦 + 2𝑧 = 3
6𝑥 + 2𝑦 + 3𝑧 = 9
پاسخ)
2 3 −1 5 −2𝑅1 + 𝑅2 → 𝑅2 2 3 −1 5 −3𝑅1+ 𝑅3 → 𝑅3 2 3 −1 5
[4 −1 2 → ]3 [0 −7 4 → ]−7 [0 −7 4 ] −7
6 2 3 9 6 2 3 9 0 −7 6 −6
−𝑅2 + 𝑅3 → 𝑅3 2 3 −1 5
→ [0 −7 4 ]−7
0 0 2 1
در نتیجه با توجه به فرم به دست آمده دستگاه معادالت این بخش سازگار است و پاسخ آن به صورت زیر است:
1
= 𝑧
2
1 9
→ = 𝑦 = )𝑧(−7 − 4
−7 7
1 23
{𝑥 = 2 (5 + 𝑧 − 3𝑦) = 28
𝑥 + 𝑦 + 𝑧 = 2
𝐵: { 2𝑥 + 3𝑦 − 𝑧 = 4
3𝑥 + 5𝑦 − 3𝑧 = 7
پاسخ)
1 1 1 2 −2𝑅1 + 𝑅2 → 𝑅2 1 1 1 2 −3𝑅1+ 𝑅3 → 𝑅3 1 1 1 2
[2 3 −1 → ]4 [0 1 −3 → ]0 [0 1 −3 ]0
3 5 −3 7 3 5 −3 7 0 2 −6 1
−2𝑅2 + 𝑅3 → 𝑅3 1 1 1 2
→ ] [0 1 −3 0
0 0 0 1
با توجه به سطر آخر فرم حذفی گاوس به دست آمده دستگاه معادالت ناسازگار است و جواب ندارد.
بخش نرم افزاری
) برنامهای بنویسید که بدون دستورات آماده متلب سازگاری یا ناسازگاری یک دستگاه معادالت با ابعاد دلخواه8
. بررسی کنید7 سپس با استفاده از آن درستی پاسخ خود در سوال.را بررسی کند
clc,clear,close all;
A = [2,3,-1,5;4,-1,2,3;6,2,3,9];
B = [1 1 1 2;2 3 -1 4;3 5 -3 7];
isConsistent(A)
disp(' ')
isConsistent(B)
consistent = true;
for k=1:n
stop = true;
for j=k:n
if A(j,k) ~= 0
temp = A(j,:);
A(j,:) = A(k,:);
A(k,:) = temp;
stop = false;
break;
end
end
if stop
break;
end
for i=k+1:n
alpha = A(i,k)/A(k,k);
A(i,:)=A(i,:)-alpha*A(k,:);
if A(i,1:m-1) == zeros(1,m-1)
if A(i,m) ~= 0
consistent = false;
break;
end
end
end
if ~consistent
break;
end
end
disp(A);
if consistent
disp("Sazegar mibashad!!");
else
disp("Nasazegar mibashad!!");
end
end
) برنامهای بنویسید که درایههای یک ماتریس را دریافت کند و تمام مراحل برای رسیدن به فرم سطری پلکانی9
. مقایسه کنیدrref جواب نهایی خود را با دستور.را مرحله به مرحله نمایش دهد
if (A(2, 2) == 0)
if (A(3, 2) ~= 0)
q(2, :) = A(2, :);
A(2, :) = A(3, :);
A(3, :) = q(2, :);
A(2, 1) = A(2, 1)/A(2, 2);
A(2, 3) = A(2, 3)/A(2, 2);
A(2, 2) = A(2, 2)/A(2, 2);
A(3,:)=A(2,:).*(-A(3,2))+A(3,:);
A(1,:)=A(2,:).*(-A(1,2))+A(1,:);
disp(A)
else
if A(2, 3) == 0
if A(3, 3) ~= 0
q(3, :) = A(3, :);
A(3, :) = A(2, :);
A(2, :) = q(3, :);
A(2, 1) = A(2, 1)/A(2, 3);
A(2, 2) = A(2, 2)/A(2, 3);
A(2, 3) = A(2, 3)/A(2, 2);
A(3, :) = A(2, :).*(-A(3, 3)) + A(3, :);
A(1, :) = A(2, :).*(-A(1, 3)) + A(1, :);
else
disp(A)
end
else
A(2, 1) = A(2, 1)/A(2, 3);
A(2, 2) = A(2, 2)/A(2, 3);
A(2, 3) = A(2, 3)/A(2, 2);
A(3, :) = A(2, :).*(-A(3, 3)) + A(3, :);
A(1, :) = A(2, :).*(-A(1, 3)) + A(1, :);
end
end
else
A(2, 1) = A(2, 1)/A(2, 2);
A(2, 3) = A(2, 3)/A(2, 2);
A(2, 2) = A(2, 2)/A(2, 2);
A(3, :) = A(2, :).*(-A(3, 2)) + A(3, :);
A(1, :) = A(2, :).*(-A(1, 2)) + A(1, :);
disp(A)
end
if A(3, 3) ~= 0
A(3, 1) = A(3, 1)/A(3, 3);
A(3, 2) = A(3, 2)/A(3, 3);
A(3, 3) = A(3, 3)/A(3, 3);
A(2, :) = (A(3, :).*(-A(2, 3))) + A(2, :);
A(1, :) = (A(3, :).*(-A(1, 3))) + A(1, :);
end
disp(A)
if rref_A == A
disp('Algorithm is true');
end
)پاسخ
clc; clear; close all;
format rat
A = input('Enter matrix = ');
B = A;
[m, n] = size(A);
c = 1;
disp('A = ');
disp(A);
for i = 1:m
if i ~= m
while A(i, c) == 0
for z = (i + 1):m
if A(z, c) ~= 0
X = A(z, :);
A(z, :) = A(i, :);
A(i, :) = X;
break
end
if c == n
break
end
c = c + 1;
end
if c == n
break
end
end
end
for j = (i + 1):m
if A(j, c) ~= 0
A(j, :) = A(j, :) - A(i, :) * A(j, c) / A(i, c);
end
end
disp(A)
if i > 1 && A(i, c) ~= 0
for k = (i - 1):-1:1
if A(k, c) ~= 0
d = A(k, c) / A(i, c);
A(k, :) = A(k, :) - d*A(i, :);
end
end
end
if A(i, c) ~= 0
A(i, :) = A(i, :)/A(i, c);
end
disp(A);
if c == n
break;
else
c = c + 1;
end
end
if A == rref(B)
disp('Algorithm is true');
end