SlideShare a Scribd company logo
1 of 23
Download to read offline
TUGAS ALJABAR LINIER
PENYELESAIAN SISTEM PERSAMAAN
LINIER DENGAN METODE ELIMINASI
GAUSS-JORDAN
Disusun oleh :
Rendy Wijaya (535080024)
Janson Hendryli (535080020)
Felisia (535080022)
Fakultas Teknologi Informasi
Universitas Tarumanagara
2009
1
DAFTAR ISI
DAFTAR ISI ................................................................................................................................... 2
BAB I PENDAHULUAN ........................................................................................................... 3
1.1 Latar Belakang ............................................................................................................ 3
1.2 Tujuan ......................................................................................................................... 3
1.3 Manfaat ....................................................................................................................... 3
BAB II PEMBAHASAN .............................................................................................................. 4
2.1 Sistem Persamaan Linier ............................................................................................. 4
2.2 Eliminasi Gauss-Jordan .............................................................................................. 5
2.3 Algoritma Program ...................................................................................................... 9
2.4 Keunggulan dan Kelemahan Program ........................................................................ 11
BAB III PENUTUP ........................................................................................................................ 12
3.1 Kesimpulan ................................................................................................................. 12
3.2 Saran-saran .................................................................................................................. 12
DAFTAR PUSTAKA ...................................................................................................................... 13
LAMPIRAN .................................................................................................................................... 14
2
BAB I
PENDAHULUAN
1.1 Latar Belakang
Laporan dan program ini merupakan tugas mata kuliah Aljabar Linier. Pembuatan laporan ini
merupakan salah satu tugas yang harus dikumpulkan. Topik yang dibahas dalam laporan ini adalah
penyelesaian sistem persamaan linier dengan metode eliminasi Gauss-Jordan.
1.2 Tujuan
Pembuatan laporan ini walau awalnya sebagai tugas mata kuliah Aljabar Linier sebenarnya juga
sangat membantu kelompok untuk memahami metode eliminasi Gauss-Jordan ini lebih baik. Tujuan
pembuatan program, di luar alasan kewajiban (tugas), adalah membantu pengguna lainnya yang ingin
menyelesaikan sistem persamaan linier.
1.3 Manfaat
Manfaat dari laporan serta program yang dibuat kelompok antara lain :
1. Membantu memahami lebih lanjut penyelesaian sistem persamaan linier dengan metode
eliminasi Gauss-Jordan.
2. Membantu pengguna yang ingin menyelesaikan sistem persamaan linier.
3. Membantu mempelajari langkah-langkah yang dilakukan untuk menyelesaikan sistem
persamaan linier.
3
BAB II
PEMBAHASAN
2.1 Sistem Persamaan Linier
Di dalam matematika, sistem persamaan linier adalah kumpulan persamaan-persamaan linier
yang memiliki variabel-variabel yang sama. Bentuk umum dari sistem persamaan linier dengan n
variabel dari m persamaan adalah sebagai berikut :
Pada contoh di atas, x1, x2, ..., xn adalah variabel-variabel yang tidak diketahui nilainya, dan a11,
a12, ..., amn adalah koefisien-koefisien dari sistem persamaan tersebut, sedangkan b1, b2, ..., bm adalah
konstanta.
Contoh dari sistem persamaan linier dengan 3 variabel:
2x – 3y + z = -1
x + 2y – 3z = -4
3x – y + 2z = 7
Pada persamaan di atas, variabel-variabelnya adalah x, y, dan z. Kita dapat mengganti x1, x2, ...,
xn dengan huruf-huruf lainnya untuk membedakan. Dalam contoh di atas, x1, x2, x3 diganti dengan x, y,
dan z secara berurutan.
Sebuah penyelesaian dari sistem persamaan linier adalah kumpulan n angka s1, s2, ..., sn
sedemikian sehingga jika kita mensubsitusi x1 = s1, x2 = s2, ..., xn = sn maka sistem persamaan tersebut
dapat dipenuhi.
Penyelesaian dari sistem persamaan linier pada contoh sebelumnya adalah :
x = 1
y = 2
4
z = 3
karena nilai-nilai tersebut membuat persamaan tersebut menjadi valid.
Ada beberapa metode untuk menyelesaikan sistem persamaan linier, namun yang akan dibahas
secara lanjut di laporan ini adalah metode eliminasi Gauss-Jordan.
2.2 Eliminasi Gauss-Jordan
Salah satu metode yang dapat digunakan untuk menyelesaikan sistem persamaan linier adalah
metode eliminasi Gauss-Jordan. Metode ini diberi nama Gauss-Jordan untuk menghormati Carl
Friedrich Gauss dan Wilhelm Jordan. Metode ini sebenarnya adalah modifikasi dari metode eliminasi
Gauss, yang dijelaskan oleh Jordan di tahun 1887.
Metode Gauss-Jordan ini menghasilkan matriks dengan bentuk baris eselon yang tereduksi
(reduced row echelon form), sementara eliminasi Gauss hanya menghasilkan matriks sampai pada
bentuk baris eselon (row echelon form).
Selain untuk menyelesaikan sistem persamaan linier, metode eliminasi Gauss-Jordan ini dapat
pula digunakan untuk mencari invers dari sebuah matriks.
Prosedur umum untuk metode eliminasi Gauss-Jordan ini adalah
1. Ubah sistem persamaan linier yang ingin dihitung menjadi matriks augmentasi.
2. Lakukan operasi baris elementer pada matriks augmentasi (A|b) untuk mengubah matriks
A menjadi dalam bentuk baris eselon yang tereduksi.
Contoh mengubah sistem persamaan linier menjadi matriks augmentasi.
→
Pengubahan dilakukan dengan membuat matriks yang elemen-elemennya adalah koefisien-
koefisien dari sistem persamaan linier..
Sedangkan langkah-langkah pada operasi baris elementer yaitu :
1. Menukar posisi dari 2 baris.
Ai ↔ Aj
2. Mengalikan baris dengan sebuah bilangan skalar positif.
Ai = k * Aj
5
3. Menambahkan baris dengan hasil kali skalar dengan baris lainnya.
Ai = Ai + k * Aj
Sebuah matriks sendiri bisa dikatakan sudah memiliki bentuk baris eselon yang tereduksi jika
telah memenuhi syarat-syarat berikut ini.
1. Jika sebuah baris seluruhnya bukan merupakan angka nol, maka angka bukan nol pertama
pada baris tersebut adalah 1 (leading 1).
2. Jika ada baris yang seluruhnya terdiri dari angka nol, maka baris tersebut dikelompokkan
di baris paling bawah dari matriks.
3. Jika ada 2 baris berurutan yang sama-sama tidak terdiri dari angka nol seluruhnya, maka
leading 1 dari baris yang lebih bawah berada di sebelah kanan dari leading 1 yang berada
di baris yang lebih atas.
4. Pada setiap kolom yang memiliki leading 1 di kolomnya, maka nilai yang ada di kolom
tersebut kecuali leading 1 adalah nol.
Sebuah matriks yang hanya memenuhi syarat 1 sampai 3 adalah matriks yang dalam bentuk baris
eselon. Sedangkan jika syarat keempat juga dipenuhi, maka matriks tersebut dapat dikatakan dalam
bentuk baris eselon yang tereduksi.
Berikut beberapa contoh matriks yang sudah dalam bentuk baris eselon tereduksi.
Berikut contoh langkah-langkah yang dilakukan untuk menyelesaikan sistem persamaan linier
dengan metode eliminasi Gauss-Jordan.
Diketahui sistem persamaan linier sebagai berikut.
2x + 4y - 2z = 12
x + 5y + 3z = 8
-3x + y + 3z = -4
1. Ubah sistem persamaan linier di atas menjadi matriks augmentasi.
2 4 -2 12
1 5 3 8
-3 1 3 -4
6
2. Kalikan baris pertama dengan 0.5
1 2 -1 6
1 5 3 8
-3 1 3 -4
3. Tambahkan baris kedua dengan (-1) kali baris pertama
1 2 -1 6
0 3 4 2
-3 1 3 -4
4. Tambahkan baris ketiga dengan 3 kali baris pertama
1 2 -1 6
0 3 4 2
0 7 0 14
5. Kalikan baris kedua dengan 1/3
1 2 -1 6
0 1 0.33 0.67
0 7 0 14
6. Tambahkan baris pertama dengan (-2) kali baris kedua
1 0 -3.67 4.67
0 1 0.33 0.67
0 7 0 14
7. Tambahkan baris ketiga dengan (-7) kali baris kedua
1 0 -3.67 4.67
0 1 0.33 0.67
0 0 -9.33 9.33
7
8. Kalikan baris ketiga dengan -1/9.33
1 0 -3.67 4.67
0 1 0.33 0.67
0 0 1 -1
9. Menambahkan baris pertama dengan 3.67 kali baris ketiga
1 0 0 1
0 1 0.33 0.67
0 0 1 -1
10. Menambahkan baris kedua dengan (-0.33) kali baris ketiga
1 0 0 1
0 1 0 2
0 0 1 -1
Setelah langkah ke-10, maka matriks ini telah dalam bentuk baris eselon tereduksi. Dari matriks
terakhir ini dapat disimpulkan bahwa nilai x = 1, y = 2, dan z = -1.
Contoh di atas diterapkan pada sistem persamaan linier dengan n variabel dan n persamaan.
Contoh berikut adalah cara menyelesaikan sistem persamaan linier dengan n variabel dan m persamaan.
Diketahui sistem persamaan linier sebagai berikut.
2x + 3y - 5z = 7
x + 4y + 8z = 3
1. Ubah menjadi matriks teraugmentasi
2 3 -5 7
1 4 8 3
2. Kalikan baris pertama dengan ½
1 1.5 -2.5 3.5
1 4 8 3
3. Tambahkan baris kedua dengan (-1) kali baris pertama
1 1.5 -2.5 3.5
0 2.5 10.5 -0.5
8
4. Kalikan baris kedua dengan 1/2.5
1 1.5 -2.5 3.5
0 1 4.2 -0.2
5. Tambahkan baris pertama dengan (-1.5) kali baris kedua
1 0 -8.8 3.8
0 1 4.2 -0.2
Penyelesaian untuk persamaan di atas akan menjadi :
x – 8.8z = 3.8
y + 4.2z = -0.2
Ada 3 macam kemungkinan penyelesaian dari sistem persamaan linier, yaitu :
1. Solusi yang unik. Hanya ada satu himpunan nilai (s1, s2, ..., sn) yang memenuhi sistem
persamaan linier tersebut.
2. Tidak ada solusi. Tidak ada himpunan nilai (s1, s2, ..., sn) yang memenuhi sistem
persamaan linier tersebut.
3. Solusi yang ada tidak berhingga. Ada lebih dari satu (tak berhingga) himpunan nilai
(s1, s2, ..., sn) yang memenuhi sistem persamaan linier tersebut.
2.3 Algoritma Program
Program yang dibuat kelompok menggunakan bahasa PHP dan berbasis web. Algoritma yang
digunakan program untuk menghasilkan hasil dari sistem persamaan linier adalah sebagai berikut.
1. Baca nilai n dan m. Nilai n disini melambangkan banyaknya variabel dalam persamaan.
Sedangkan nilai m menunjukkan banyaknya persamaan.
2. Baca nilai-nilai konstanta dari sistem persamaan tersebut, lalu masukkan ke dalam
sebuah array 2 dimensi m*(n+1). Pada langkah ini sistem persamaan linier telah
dimasukkan ke matriks augmentasi.
3. Lakukan proses pada diagonal matriks, dimulai dari posisi baris 1 kolom 1 (posisi kerja).
4. Lakukan untuk setiap baris di dalam matriks
a) Jika di baris tersebut semua berisi angka nol, maka pindahkan ke baris paling bawah.
b) Jika nilai matriks pada posisi kerja adalah nol, maka tukar dengan baris di bawahnya
9
yang tidak nol. Jika baris di bawahnya semua nol, maka pindah ke kolom berikutnya.
Setelah ditukar maka lanjut ke langkah selanjutnya. Sedangkan jika posisi kerja
bukan nol, lakukan langkah selanjutnya.
c) Bagi semua nilai di baris yang sedang dikerjakan dengan nilai pada posisi kerja.
d) Ubah semua nilai di kolom yang sedang dikerjakan menjadi nilai nol (kecuali kolom
pada baris yang sedang dikerjakan), dengan melakukan operasi baris elementer ketiga
pada setiap baris.
5. Tampilkan hasilnya.
6. Selesai.
Algoritma program di atas mungkin sulit dipahami, namun yang dilakukan program adalah sama
dengan cara pengoperasian manual. Perhatikan contoh di bawah ini.
1. Matriks A yang akan diproses adalah sebagai berikut :
2. Dimulai dari diagonal pada baris pertama, yaitu A[1,1], karena sudah bernilai 1 maka kita
akan lanjutkan ke langkah berikutnya yaitu mengubah setiap nilai di kolom pertama
menjadi nol.
3. Ubah A[2,1] menjadi nol dengan mengurangi baris kedua kolom j dengan 2 kali A[1, j].
4. Ubah A[3,1] menjadi nol dengan menambah baris ketiga kolom j dengan A[1, j].
5. Sekarang proses diagonal pada baris kedua. Untuk mengubah nilai A[2,2] menjadi 1,
maka bagi baris 2 dengan angka 3.
10
6. Setelah itu ubah setiap angka di kolom 2 kecuali pada baris kedua menjadi nol. Caranya
pertama-tama dengan menambah baris pertama dengan 2 kali baris kedua.
A[1, j] = A[1, j] + 2 * A[2, j]
7. Setelah itu, kurangi baris ketiga dengan baris kedua.
A[3, j] = A[3, j] – A[2, j]
8. Lanjut ke diagonal selanjutnya, yaitu A[3,3]. Karena A[3,3] sudah bernilai 1 maka
lanjutkan ke proses selanjutnya.
9. Untuk mengubah kolom ketiga baris pertama dan ketiga menjadi nol, maka lakukan
A[1, j] = A[1, j] – 2 * A[3, j]
A[2, j] = A[2, j] + A[3, j]
10. Sekarang matriks A telah berbentuk baris eselon yang tereduksi.
2.4 Keunggulan dan Kelemahan Program
Berikut beberapa keunggulan dari program ini :
1. Mempermudah perhitungan untuk sistem persamaan linier yang memiliki banyak
variabel.
2. Karena menggunakan komputasi dengan bantuan komputer, maka dapat mengurangi
kesalahan dalam perhitungan.
3. Menggunakan teknologi web (PHP) sehingga dapat diakses oleh pengguna tanpa
memperdulikan sistem operasi yang digunakan.
4. Program ini telah online dan dapat diakses di http://www.jansonhendryli.net/gaussjordan
Setiap program pastilah memiliki kekurangan. Berikut beberapa kekurangan dari program ini :
1. Nilai konstanta yang dapat dimasukkan dibatasi paling maksimum adalah 2,147,483,647.
11
2. Pada keadaan tertentu tidak dapat langsung menunjukkan nilai x1, x2, ..., xn .Maksudnya di
sini adalah hasil yang ditunjukkan terkadang masih berbentuk persamaan lainnya.
12
BAB III
PENUTUP
3.1 Kesimpulan
Sistem persamaan linier adalah kumpulan persaman-persamaan linier yang memiliki variabel-
variabel yang sama. Sistem persamaan linier memiliki penyelesaian, yaitu himpunan angka yang akan
memenuhi persamaan-persamaan tersebut jika disubstitusi. Ada 3 macam kemungkinan penyelesaian
dari sistem persamaan linier, yaitu ada solusi yang unik, tidak ada solusi, atau memiliki solusi yang tak
terhingga.
Ada berbagai macam cara untuk menyelesaikan sistem persamaan linier. Salah satunya adalah
dengan metode eliminasi Gauss-Jordan.
Eliminasi Gauss-Jordan menggunakan operasi baris elementer untuk menghasilkan matriks
augmentasi yang berbentuk baris eselon yang tereduksi.
3.2 Saran-saran
Program yang dibuat diharapkan dapat berguna bagi orang lain. Namun program yang berhasil
dibuat tetap memiliki beberapa kelemahan. Maka diharapkan program tersebut nantinya dapat
diperbaiki lebih lanjut sehingga dapat menjadi lebih baik lagi.
Kelompok terutama kesulitan untuk mencari bahan dari buku-buku atau website internet yang
membahas mengenai penyelesaian sistem persamaan linier pada n variabel dari m persamaan. Walau
akhirnya berhasil mendapatkan bahan yang diperlukan, namun tak banyak yang membahas. Sumber
terutama hanya membahas penyelesaian sistem persamaan linier pada n variabel dan n persamaan.
Sebaiknya sumber-sumber juga membahas mengenai penyelesaian sistem persamaan linier pada n
variabel dari m persamaan karena dapat juga dilakukan.
13
DAFTAR PUSTAKA
Anton, Howard dan Chris Rorres. 2005. Elementary Linear Algebra – Applications Version. John
Willey & Sons, Inc.
http://ceee.rice.edu/Books/CS/chapter2/linear44.html
http://en.wikipedia.org
http://mathrefresher.blogspot.com
http://www2.krellinst.org/AiS/textbook/unit2/example_projects/starter/math/matrix/gauss.html
14
LAMPIRAN
File index.php
<html>
<head>
<style type="text/css">
.indice { font-size: 9px; vertical-align: sub;}
</style>
<title>Gauss-Jordan</title>
<?php
$indexname = "index.php";
function formatInt($nn) {
if ($nn == 0) return abs($nn);
else return $nn;
}
$n = 0;
$m = 0;
$status = $_POST['status1'];
$status2 = $_POST['status2'];
if (($status == "tampil_tabel") || ($status2 == "hitung")) {
$n = $_POST['ordo'];
$m = $_POST['ordo2'];
}
else {
$fp = fopen("data.txt", "w");
fclose($fp);
}
if ($status2 == "hitung") {
$count_error = 0;
$char_exists = 0;
$isOK = false;
$min_min = false;
for ($i=0; $i<$m; $i++)
for ($j=0; $j<=$n; $j++) {
$min_exists = 0;
$n1 = $i+1;
$n2 = $j+1;
$idx = "x".$n1."-".$n2;
$k = $_POST[$idx];
if ($k != "") {
for ($c=0; $c<strlen($k); $c++) {
if ($k[$c] == '-') {
$min_exists++;
if ($c != 0) $min_exists++;
15
continue;
}
if ((ord($k[$c]) < ord('0')) || (ord($k[$c]) > ord('9')))
$char_exists++;
}
if ($min_exists > 1) {
echo "<script language='JavaScript'>”;
echo “alert('Anda salah memasukkan input!');</script>";
$min_min = true;
}
else if ($char_exists == 0) $arr[$i][$j] = formatInt((int) $k);
}
else $count_error++;
}
if ($count_error == $m*($n+1)) {
echo "<script language='JavaScript'>”;
echo “alert('Anda tidak memasukkan nilai apapun!');</script>";
}
else if ($count_error != 0) {
echo "<script language='JavaScript'>”;
echo “alert('Nilai-nilai yang anda masukkan tidak lengkap!');</script>";
}
else if ($char_exists > 0) {
echo "<script language='JavaScript'>”;
echo “alert('Anda memasukkan input yang bukan berupa bilangan!');</script>";
}
else if (!$min_min) $isOK = true;
}
?>
</head>
<body>
<center><h1><font color="blue">
Penyelesaian SPL dengan Eliminasi Gauss-Jordan
</font></h1></center>
<blockquote>
<hr><br>
Script ini digunakan untuk menghitung nilai-nilai variabel dalam
Sistem Persamaan Linear. Anda dapat memasukkan jumlah variabel pada sistem
persamaan linear yang ingin dicari penyelesaiannya dan juga banyaknya
persamaan, kemudian tekan tombol <b>proses</b>.
<br><br>
<form action=<?php echo $indexname; ?> method="post" name="form1">
<input type="hidden" name="status1" value="tampil_tabel">
<strong>Menghitung sistem persamaan linear dengan </strong>
<input type="text" name="ordo" size="3" value= <?php echo $n; ?> >
<strong> variabel dari </strong>
<input type="text" name="ordo2" size="3" value= <?php echo $m; ?> >
<strong> persamaan</strong>
16
<input type="submit" name="submit1" value="Proses">
</form>
<?php
if (($status == "tampil_tabel") || ($status2 == "hitung")) {
if ($n <= 0 || $m <= 0) {
echo "<script language='JavaScript'>”;
echo “alert('Masukkan bilangan positif!');</script>";
}
else if ($n > 1000 || $m > 1000) {
echo "<script language='JavaScript'>”;
echo “alert('Bilangan yang anda masukkan terlalu besar!');</script>";
}
else {
echo "Masukkan nilai-nilai konstanta pada sistem persamaan linear”;
echo “ yang ingin anda hitung. Lalu tekan tombol <b>hitung</b>.<br>";
echo "<form action=$indexname method='post' name='form2'>";
echo "<table bgcolor='lightblue'>";
for ($i=0; $i<$m; $i++) {
$colspan = $n + 1;
$k = $i + 1;
echo "<tr><td colspan='$colspan'>Persamaan $k</td></tr>";
echo "<tr>";
for ($j=0; $j<=$n; $j++) {
echo "<td>";
$n1 = $i+1;
$n2 = $j+1;
$name = "x".$n1."-".$n2;
echo "<input type='text' name=$name “;
echo “value='{$arr[$i][$j]}' size='3'>";
if ($j != $n) echo "x<span class=indice>$n2</span>";
echo "&nbsp;&nbsp;";
if ($j == $n - 1) echo " = ";
else if ($j == $n) echo "";
else echo " + ";
echo "</td>";
}
echo "</tr>";
echo "<tr><td>&nbsp;</td></tr>";
}
echo "</table>";
echo "<input type='hidden' name='ordo' value=$n>";
echo "<input type='hidden' name='ordo2' value=$m>";
echo "<input type='hidden' name='status2' value='hitung'>";
echo "<input type='submit' name='submit2' value='Hitung'>";
echo "</form>";
}
}
if ($status2 == "hitung" && $isOK) {
17
$noSol = false;
$fp = fopen("data.txt", "w");
fputs($fp, "$nn$mn");
fputs($fp, "1n");
for ($ii=0; $ii<$m; $ii++)
for ($jj=0; $jj<=$n; $jj++)
fputs($fp, "{$arr[$ii][$jj]}n");
for ($i=0; ($i<$m)&&(!$noSol); $i++) {
$nZero = 0;
for ($j=0; $j<=$n; $j++)
if ($arr[$i][$j] == 0.0) $nZero++;
if ($nZero == $n+1) {
$otherZero = true;
for ($j1=$i+1; (($j1<$m)&&$otherZero); $j1++)
for ($j2=0; $j2<=$n; $j2++)
if ($arr[$j1][$j2] != 0.0) {
$otherZero = false;
break;
}
if (!$otherZero) {
for ($j1=$i+1; $j1<$m; $j1++) {
for ($j2=0; $j2<=$n; $j2++) {
$arr[$j1-1][$j2] = $arr[$j1][$j2];
}
}
for ($j2=0; $j2<=$n; $j2++) $arr[$m-1][$j2] = 0.0;
fputs($fp, "5n$in");
for ($ii=0; $ii<$m; $ii++)
for ($jj=0; $jj<=$n; $jj++)
fputs($fp, "{$arr[$ii][$jj]}n");
}
}
$k1 = $i;
$k2 = $i;
if ($arr[$k1][$k2] == 0.0) {
while (($arr[$k1][$k2] == 0.0) && ($k2 < $n)) {
if ($k1 == $m) {
$k1 = $i;
$k2++;
}
else ++$k1;
}
18
if (($k1 != $i) && !($k2 == $n)) {
if ($arr[$k1][$k2] != 0.0) {
for ($j=0; $j<=$n; $j++) {
$buff = $arr[$k1][$j];
$arr[$k1][$j] = $arr[$i][$j];
$arr[$i][$j] = $buff;
}
fputs($fp, "2n$in$k1n");
for ($ii=0; $ii<$m; $ii++)
for ($jj=0; $jj<=$n; $jj++)
fputs($fp, "{$arr[$ii][$jj]}n");
}
else $noSol = true;
}
}
$nZero = 0;
for ($j=0; $j<=$n; $j++)
if ($arr[$i][$j] == 0.0) $nZero++;
if (!$noSol && ($nZero != $n+1)) {
$divider = $arr[$i][$k2];
if (($divider != 1) && ($divider != 0)) {
for ($j=0; $j<=$n; $j++)
$arr[$i][$j] = formatInt($arr[$i][$j] * (1.0 / $divider));
fputs($fp, "3n$in$dividern");
for ($ii=0; $ii<$m; $ii++)
for ($jj=0; $jj<=$n; $jj++)
fputs($fp, "{$arr[$ii][$jj]}n");
}
for ($j=0; $j<$m; $j++) {
if (($j != $i) && ($arr[$j][$k2] != 0)) {
$operand = -1.0 * $arr[$j][$k2];
for ($k=0; $k<=$n; $k++)
$arr[$j][$k] = formatInt($arr[$j][$k] + (1.0 *
$operand * $arr[$k1][$k]));
fputs($fp, "4n$jn$operandn$in");
for ($ii=0; $ii<$m; $ii++)
for ($jj=0; $jj<=$n; $jj++)
fputs($fp, "{$arr[$ii][$jj]}n");
}
}
}
}
fclose($fp);
}
19
?>
<br><br>
<?php
if ($status2 == "hitung" && $isOK) {
echo "<strong>Penyelesaian dari persamaan diatas :</strong>";
echo "<table bgcolor='lightgreen' border='4' width='30%'>";
$solExists = false;
$nZero = 0;
for ($i=0; $i<$m; $i++)
for ($j=0; $j<$n; $j++)
if ($arr[$i][$j] == 0) $nZero++;
if ($nZero != $m*$n) {
$solExists = true;
for ($i=0; $i<$m; $i++) {
$nZero = 0;
for ($j=0; $j<$n; $j++)
if ($arr[$i][$j] == 0) $nZero++;
if ($nZero == $n) continue;
$n1 = $i+1;
echo "<tr>";
echo "<td><center><strong>";
$isFirst = true;
for ($j=0; $j<$n; $j++) {
$value = abs($arr[$i][$j]);
$n1 = $j+1;
if ($value != 0) {
if (!$isFirst)
if ($arr[$i][$j] >= 0) echo " + ";
else echo " - ";
$isFirst = false;
if ($value != 1) echo $value;
echo "x<span class=indice>$n1</span>";
}
}
echo "</strong></center></td>";
echo "<td><center><strong>{$arr[$i][$n]}</strong></center></td>";
echo "</tr>";
}
}
echo "</table>";
if (!$solExists) {
echo "<font color='red'>”;
echo “<strong>Persamaan ini tidak dapat diselesaikan";
echo " (tidak memiliki solusi atau memiliki solusi yang “;
echo “tak terhingga).</strong></font>";
}
echo "<br><br>Untuk mengetahui langkah-langkah yang dilakukan “;
echo “<a href='lihat.php'>lihat hasil selengkapnya</a>";
20
}
?>
</blockquote>
</body>
</html>
File lihat.php
<html>
<head>
<title>Urutan Langkah Penyelesaian</title>
<style type="text/css">
.indice { font-size: 9px; vertical-align: sub;}
</style>
</head>
<body>
<blockquote>
<h1 align="center">.:: Urutan Langkah Penyelesaian ::.</h1>
<hr>
<?php
$fp = fopen("data.txt", "r") or die("<h2><font color='red'>Tidak ada penyelesaian
yang dapat ditampilkan.</font></h2>");
$n = trim(fgets($fp, 1024));
$m = trim(fgets($fp, 1024));
$color1 = 'yellow';
$color2 = 'lightgreen';
while (!feof($fp)) {
$p = trim(fgets($fp, 1024));
if ($p == 1) echo "<h2>State awal dari matrix yang akan diproses</h2>";
else {
$row = (int) trim(fgets($fp, 1024)) + 1;
if ($p == 5) {
echo "<h2>Menurunkan baris ke-$row ke baris paling bawah.</h2>";
}
else {
$pivot = trim(fgets($fp, 1024));
if ($p == 2) {
$pivot += 1;
echo "<h2>Baris ke-$row ditukar dengan baris ke-$pivot</h2>";
}
else if ($p == 3) {
echo "<h2>Baris ke-$row dikalikan dengan ";
if ($pivot < 0) echo "-";
$pivot = abs($pivot);
if ($pivot == 1) echo "1";
else echo "1/$pivot";
echo "</h2>";
}
21
else if ($p == 4) {
$row2 = (int) trim(fgets($fp, 1024)) + 1;
echo "<h2>Menambah baris ke-$row dengan $pivot kali baris ke-$row2</h2>";
}
else break;
}
}
echo "<center>";
echo "<table bgcolor='lightblue' border='1' cellpadding='10'>";
echo "<tr>";
for ($j=0; $j<$n; $j++) {
$k = $j + 1;
echo "<th><center><b>x<span class=indice>$k</span></b></center></th>";
}
echo "<th><center><b>=</b></center></th>";
echo "</tr>";
for ($i=0; $i<$m; $i++) {
if ($p == 2) {
if ($i+1 == $row) echo "<tr bgcolor=$color1>";
else if ($i+1 == $pivot) echo "<tr bgcolor=$color2>";
}
else if ($p == 3) {
if ($i+1 == $row) echo "<tr bgcolor=$color1>";
}
else if ($p == 4) {
if ($i+1 == $row) echo "<tr bgcolor=$color1>";
else if ($i+1 == $row2) echo "<tr bgcolor=$color2>";
}
else if ($p == 5) {
if ($i == $m-1) echo "<tr bgcolor=$color1>";
}
else echo "<tr>";
for ($j=0; $j<=$n; $j++) {
$st = trim(fgets($fp, 1024));
echo "<td><center>$st</center></td>";
}
echo "</tr>";
}
echo "</table>";
echo "<img src='img/down-arrow.gif'>";
echo "</center>";
}
echo "<br><center><img src='img/end-sign.jpg'></center>";
fclose($fp);
?>
<hr>
<center>
22
<input type=button value="Back" onClick="history.go(-1)">
</center>
</blockquote>
</body>
</html>
23

More Related Content

What's hot

Rekursi dan Induksi Matematika
Rekursi dan Induksi MatematikaRekursi dan Induksi Matematika
Rekursi dan Induksi MatematikaHeni Widayani
 
Menyelesaikan program linear dengan geogebra
Menyelesaikan program linear dengan geogebraMenyelesaikan program linear dengan geogebra
Menyelesaikan program linear dengan geogebraPak Memed Pak Wachianto
 
Sistem persamaan linier_a
Sistem persamaan linier_aSistem persamaan linier_a
Sistem persamaan linier_aTriana Yusman
 
Notasi prefix infix-postifx- expression tree
Notasi prefix infix-postifx- expression treeNotasi prefix infix-postifx- expression tree
Notasi prefix infix-postifx- expression treeAcomic Comic
 
MATERI PELUANG (kelas X)
MATERI PELUANG (kelas X)MATERI PELUANG (kelas X)
MATERI PELUANG (kelas X)Dini H Nupus
 
Tugas aljabar (miranti nur afifah 7.5)
Tugas aljabar (miranti nur afifah 7.5)Tugas aljabar (miranti nur afifah 7.5)
Tugas aljabar (miranti nur afifah 7.5)Nurlita Yuliandari
 
PPT Sistem Persamaan Linear Tiga Variabel
PPT Sistem Persamaan Linear Tiga VariabelPPT Sistem Persamaan Linear Tiga Variabel
PPT Sistem Persamaan Linear Tiga Variabelfransiscaputriwulandari
 
Baris deret kelas xi
Baris deret kelas xiBaris deret kelas xi
Baris deret kelas xiSiti Yumaroh
 
MODUL MENGENAL BENTUK ALJABAR
MODUL MENGENAL BENTUK ALJABARMODUL MENGENAL BENTUK ALJABAR
MODUL MENGENAL BENTUK ALJABARNety24
 
Tugas program linier
Tugas program linierTugas program linier
Tugas program linierIndar Hayga
 
Ruang Sampel, Kejadian, dan Faktorial
Ruang Sampel, Kejadian, dan FaktorialRuang Sampel, Kejadian, dan Faktorial
Ruang Sampel, Kejadian, dan FaktorialAnha Anha
 
PPT SPLDV dengan 3 metode penyelesaian
PPT SPLDV dengan 3 metode penyelesaianPPT SPLDV dengan 3 metode penyelesaian
PPT SPLDV dengan 3 metode penyelesaianYoanna Rianda
 
Relasi rekursi (2) : Menentukan solusi relasi Rekursi Linier Homogen Berkoefi...
Relasi rekursi (2) : Menentukan solusi relasi Rekursi Linier Homogen Berkoefi...Relasi rekursi (2) : Menentukan solusi relasi Rekursi Linier Homogen Berkoefi...
Relasi rekursi (2) : Menentukan solusi relasi Rekursi Linier Homogen Berkoefi...Onggo Wiryawan
 

What's hot (20)

Pola bilangan
Pola bilanganPola bilangan
Pola bilangan
 
Rekursi dan Induksi Matematika
Rekursi dan Induksi MatematikaRekursi dan Induksi Matematika
Rekursi dan Induksi Matematika
 
Menyelesaikan program linear dengan geogebra
Menyelesaikan program linear dengan geogebraMenyelesaikan program linear dengan geogebra
Menyelesaikan program linear dengan geogebra
 
Sistem persamaan linier_a
Sistem persamaan linier_aSistem persamaan linier_a
Sistem persamaan linier_a
 
Graf Pohon
Graf PohonGraf Pohon
Graf Pohon
 
Basis Bilangan
Basis BilanganBasis Bilangan
Basis Bilangan
 
Notasi prefix infix-postifx- expression tree
Notasi prefix infix-postifx- expression treeNotasi prefix infix-postifx- expression tree
Notasi prefix infix-postifx- expression tree
 
PPT MATRIKS
PPT MATRIKSPPT MATRIKS
PPT MATRIKS
 
42514 persamaan non linier
42514 persamaan non linier42514 persamaan non linier
42514 persamaan non linier
 
Praktikum4 9
Praktikum4 9Praktikum4 9
Praktikum4 9
 
MATERI PELUANG (kelas X)
MATERI PELUANG (kelas X)MATERI PELUANG (kelas X)
MATERI PELUANG (kelas X)
 
Tugas aljabar (miranti nur afifah 7.5)
Tugas aljabar (miranti nur afifah 7.5)Tugas aljabar (miranti nur afifah 7.5)
Tugas aljabar (miranti nur afifah 7.5)
 
PPT Sistem Persamaan Linear Tiga Variabel
PPT Sistem Persamaan Linear Tiga VariabelPPT Sistem Persamaan Linear Tiga Variabel
PPT Sistem Persamaan Linear Tiga Variabel
 
Baris deret kelas xi
Baris deret kelas xiBaris deret kelas xi
Baris deret kelas xi
 
GRAPH BERARAH DAN NETWORK
GRAPH BERARAH DAN NETWORKGRAPH BERARAH DAN NETWORK
GRAPH BERARAH DAN NETWORK
 
MODUL MENGENAL BENTUK ALJABAR
MODUL MENGENAL BENTUK ALJABARMODUL MENGENAL BENTUK ALJABAR
MODUL MENGENAL BENTUK ALJABAR
 
Tugas program linier
Tugas program linierTugas program linier
Tugas program linier
 
Ruang Sampel, Kejadian, dan Faktorial
Ruang Sampel, Kejadian, dan FaktorialRuang Sampel, Kejadian, dan Faktorial
Ruang Sampel, Kejadian, dan Faktorial
 
PPT SPLDV dengan 3 metode penyelesaian
PPT SPLDV dengan 3 metode penyelesaianPPT SPLDV dengan 3 metode penyelesaian
PPT SPLDV dengan 3 metode penyelesaian
 
Relasi rekursi (2) : Menentukan solusi relasi Rekursi Linier Homogen Berkoefi...
Relasi rekursi (2) : Menentukan solusi relasi Rekursi Linier Homogen Berkoefi...Relasi rekursi (2) : Menentukan solusi relasi Rekursi Linier Homogen Berkoefi...
Relasi rekursi (2) : Menentukan solusi relasi Rekursi Linier Homogen Berkoefi...
 

Similar to OPTIMASI GAUSS-JORDAN

Matrix (Alin 1.1 1.2)
Matrix (Alin 1.1 1.2)Matrix (Alin 1.1 1.2)
Matrix (Alin 1.1 1.2)satriahelmy
 
PPT_Kelompok3_Eliminasi Gauss.pptx
PPT_Kelompok3_Eliminasi Gauss.pptxPPT_Kelompok3_Eliminasi Gauss.pptx
PPT_Kelompok3_Eliminasi Gauss.pptxIanVemasSilalahi
 
Linear Algebra - System of Linear Equation
Linear Algebra - System of Linear EquationLinear Algebra - System of Linear Equation
Linear Algebra - System of Linear EquationDiponegoro University
 
Sistem Persamaan Linear Dua Variabel
Sistem Persamaan Linear Dua VariabelSistem Persamaan Linear Dua Variabel
Sistem Persamaan Linear Dua VariabelChristian Lokas
 
Spldv sudah jadi
Spldv sudah jadiSpldv sudah jadi
Spldv sudah jadieky45
 
ALJABAR LINEAR ELEMENTER
ALJABAR LINEAR ELEMENTERALJABAR LINEAR ELEMENTER
ALJABAR LINEAR ELEMENTERMella Imelda
 
Topik 1 -_sistem_persamaan_linear
Topik 1 -_sistem_persamaan_linearTopik 1 -_sistem_persamaan_linear
Topik 1 -_sistem_persamaan_linearKanages Rethnam
 
Telaah matematika smp ppt
Telaah matematika smp pptTelaah matematika smp ppt
Telaah matematika smp pptHorta arum
 
Sistem persamaan linear dan kuadrat
Sistem persamaan linear dan kuadratSistem persamaan linear dan kuadrat
Sistem persamaan linear dan kuadratNisa Hakiki
 
Pembahasan Makalah Perpotongan Garis Geometri Analitik
Pembahasan Makalah Perpotongan Garis Geometri AnalitikPembahasan Makalah Perpotongan Garis Geometri Analitik
Pembahasan Makalah Perpotongan Garis Geometri AnalitikMayawi Karim
 
PPT SISTEM PERSAMAAN LINEAR DAN PROGRAM LINEAR.pptx
PPT SISTEM PERSAMAAN LINEAR DAN PROGRAM LINEAR.pptxPPT SISTEM PERSAMAAN LINEAR DAN PROGRAM LINEAR.pptx
PPT SISTEM PERSAMAAN LINEAR DAN PROGRAM LINEAR.pptx02RiniHandayani
 
Ppt aljabar matriks
Ppt aljabar matriksPpt aljabar matriks
Ppt aljabar matriksmalida hola
 
Sistem Persamaan Linear Dua Variabel
Sistem Persamaan Linear Dua VariabelSistem Persamaan Linear Dua Variabel
Sistem Persamaan Linear Dua VariabelEman Mendrofa
 
Penyelesaian sistem persamaan linear dengan
Penyelesaian  sistem persamaan  linear  denganPenyelesaian  sistem persamaan  linear  dengan
Penyelesaian sistem persamaan linear denganBAIDILAH Baidilah
 
Splkdv (Sistem Persamaan Linear dan kuadrat Dua Variabel)
Splkdv (Sistem Persamaan Linear dan kuadrat Dua Variabel)Splkdv (Sistem Persamaan Linear dan kuadrat Dua Variabel)
Splkdv (Sistem Persamaan Linear dan kuadrat Dua Variabel)MiraRaudhotulJannah
 
Bab 5-sistem-persamaan-linear-dan-kuadrat
Bab 5-sistem-persamaan-linear-dan-kuadratBab 5-sistem-persamaan-linear-dan-kuadrat
Bab 5-sistem-persamaan-linear-dan-kuadratFahmisetyawan
 

Similar to OPTIMASI GAUSS-JORDAN (20)

Gayus
GayusGayus
Gayus
 
Draft 2
Draft 2Draft 2
Draft 2
 
Matrix (Alin 1.1 1.2)
Matrix (Alin 1.1 1.2)Matrix (Alin 1.1 1.2)
Matrix (Alin 1.1 1.2)
 
PPT_Kelompok3_Eliminasi Gauss.pptx
PPT_Kelompok3_Eliminasi Gauss.pptxPPT_Kelompok3_Eliminasi Gauss.pptx
PPT_Kelompok3_Eliminasi Gauss.pptx
 
Pertemuan3&4
Pertemuan3&4Pertemuan3&4
Pertemuan3&4
 
Linear Algebra - System of Linear Equation
Linear Algebra - System of Linear EquationLinear Algebra - System of Linear Equation
Linear Algebra - System of Linear Equation
 
Sistem Persamaan Linear Dua Variabel
Sistem Persamaan Linear Dua VariabelSistem Persamaan Linear Dua Variabel
Sistem Persamaan Linear Dua Variabel
 
Spldv sudah jadi
Spldv sudah jadiSpldv sudah jadi
Spldv sudah jadi
 
ALJABAR LINEAR ELEMENTER
ALJABAR LINEAR ELEMENTERALJABAR LINEAR ELEMENTER
ALJABAR LINEAR ELEMENTER
 
Topik 1 -_sistem_persamaan_linear
Topik 1 -_sistem_persamaan_linearTopik 1 -_sistem_persamaan_linear
Topik 1 -_sistem_persamaan_linear
 
Telaah matematika smp ppt
Telaah matematika smp pptTelaah matematika smp ppt
Telaah matematika smp ppt
 
Sistem persamaan linear dan kuadrat
Sistem persamaan linear dan kuadratSistem persamaan linear dan kuadrat
Sistem persamaan linear dan kuadrat
 
Pembahasan Makalah Perpotongan Garis Geometri Analitik
Pembahasan Makalah Perpotongan Garis Geometri AnalitikPembahasan Makalah Perpotongan Garis Geometri Analitik
Pembahasan Makalah Perpotongan Garis Geometri Analitik
 
PPT SISTEM PERSAMAAN LINEAR DAN PROGRAM LINEAR.pptx
PPT SISTEM PERSAMAAN LINEAR DAN PROGRAM LINEAR.pptxPPT SISTEM PERSAMAAN LINEAR DAN PROGRAM LINEAR.pptx
PPT SISTEM PERSAMAAN LINEAR DAN PROGRAM LINEAR.pptx
 
Ppt aljabar matriks
Ppt aljabar matriksPpt aljabar matriks
Ppt aljabar matriks
 
Sistem Persamaan Linear Dua Variabel
Sistem Persamaan Linear Dua VariabelSistem Persamaan Linear Dua Variabel
Sistem Persamaan Linear Dua Variabel
 
Penyelesaian sistem persamaan linear dengan
Penyelesaian  sistem persamaan  linear  denganPenyelesaian  sistem persamaan  linear  dengan
Penyelesaian sistem persamaan linear dengan
 
Sistem Persamaan Linear dan Kuadrat
Sistem Persamaan Linear dan KuadratSistem Persamaan Linear dan Kuadrat
Sistem Persamaan Linear dan Kuadrat
 
Splkdv (Sistem Persamaan Linear dan kuadrat Dua Variabel)
Splkdv (Sistem Persamaan Linear dan kuadrat Dua Variabel)Splkdv (Sistem Persamaan Linear dan kuadrat Dua Variabel)
Splkdv (Sistem Persamaan Linear dan kuadrat Dua Variabel)
 
Bab 5-sistem-persamaan-linear-dan-kuadrat
Bab 5-sistem-persamaan-linear-dan-kuadratBab 5-sistem-persamaan-linear-dan-kuadrat
Bab 5-sistem-persamaan-linear-dan-kuadrat
 

More from Renol Doang

Eliminasi gauss-jordan
Eliminasi gauss-jordanEliminasi gauss-jordan
Eliminasi gauss-jordanRenol Doang
 
Teori bahas automata
Teori bahas automataTeori bahas automata
Teori bahas automataRenol Doang
 
3.organisasi sequential
3.organisasi sequential3.organisasi sequential
3.organisasi sequentialRenol Doang
 
6. organisasi multi key
6. organisasi multi key6. organisasi multi key
6. organisasi multi keyRenol Doang
 
Mana jemen proyek bab 9
Mana jemen proyek bab 9Mana jemen proyek bab 9
Mana jemen proyek bab 9Renol Doang
 
5. organisasi indeks sequential
5. organisasi indeks sequential5. organisasi indeks sequential
5. organisasi indeks sequentialRenol Doang
 
7 sort dan merge
7 sort dan merge7 sort dan merge
7 sort dan mergeRenol Doang
 
I pv6(internet protokol)
I pv6(internet protokol)I pv6(internet protokol)
I pv6(internet protokol)Renol Doang
 
8 pengenalan input output
8 pengenalan input output8 pengenalan input output
8 pengenalan input outputRenol Doang
 
Makalah sistem informasi bisnis bank syariah
Makalah sistem informasi bisnis bank syariahMakalah sistem informasi bisnis bank syariah
Makalah sistem informasi bisnis bank syariahRenol Doang
 
Model penil rev 18102013 lck sma
Model penil rev 18102013 lck smaModel penil rev 18102013 lck sma
Model penil rev 18102013 lck smaRenol Doang
 
Cara instalasi-linux-ubuntu
Cara instalasi-linux-ubuntuCara instalasi-linux-ubuntu
Cara instalasi-linux-ubuntuRenol Doang
 
Petunjuk pelaksanaan pemesanan dan pembayaran buku k 13
Petunjuk pelaksanaan pemesanan dan pembayaran buku k 13Petunjuk pelaksanaan pemesanan dan pembayaran buku k 13
Petunjuk pelaksanaan pemesanan dan pembayaran buku k 13Renol Doang
 
Pedoman opsi 2013
Pedoman opsi 2013Pedoman opsi 2013
Pedoman opsi 2013Renol Doang
 

More from Renol Doang (20)

Gaussjordan
GaussjordanGaussjordan
Gaussjordan
 
Eliminasi gauss-jordan
Eliminasi gauss-jordanEliminasi gauss-jordan
Eliminasi gauss-jordan
 
Snort
SnortSnort
Snort
 
Teori bahas automata
Teori bahas automataTeori bahas automata
Teori bahas automata
 
3.organisasi sequential
3.organisasi sequential3.organisasi sequential
3.organisasi sequential
 
6. organisasi multi key
6. organisasi multi key6. organisasi multi key
6. organisasi multi key
 
Mana jemen proyek bab 9
Mana jemen proyek bab 9Mana jemen proyek bab 9
Mana jemen proyek bab 9
 
5. organisasi indeks sequential
5. organisasi indeks sequential5. organisasi indeks sequential
5. organisasi indeks sequential
 
Komunikasi data
Komunikasi dataKomunikasi data
Komunikasi data
 
7 sort dan merge
7 sort dan merge7 sort dan merge
7 sort dan merge
 
I pv6(internet protokol)
I pv6(internet protokol)I pv6(internet protokol)
I pv6(internet protokol)
 
Permen 45 2010
Permen 45 2010Permen 45 2010
Permen 45 2010
 
8 pengenalan input output
8 pengenalan input output8 pengenalan input output
8 pengenalan input output
 
9.sistem file
9.sistem file9.sistem file
9.sistem file
 
Makalah sistem informasi bisnis bank syariah
Makalah sistem informasi bisnis bank syariahMakalah sistem informasi bisnis bank syariah
Makalah sistem informasi bisnis bank syariah
 
Model penil rev 18102013 lck sma
Model penil rev 18102013 lck smaModel penil rev 18102013 lck sma
Model penil rev 18102013 lck sma
 
Manajemen umum
Manajemen umumManajemen umum
Manajemen umum
 
Cara instalasi-linux-ubuntu
Cara instalasi-linux-ubuntuCara instalasi-linux-ubuntu
Cara instalasi-linux-ubuntu
 
Petunjuk pelaksanaan pemesanan dan pembayaran buku k 13
Petunjuk pelaksanaan pemesanan dan pembayaran buku k 13Petunjuk pelaksanaan pemesanan dan pembayaran buku k 13
Petunjuk pelaksanaan pemesanan dan pembayaran buku k 13
 
Pedoman opsi 2013
Pedoman opsi 2013Pedoman opsi 2013
Pedoman opsi 2013
 

Recently uploaded

MODUL P5 KEWIRAUSAHAAN SMAN 2 SLAWI 2023.pptx
MODUL P5 KEWIRAUSAHAAN SMAN 2 SLAWI 2023.pptxMODUL P5 KEWIRAUSAHAAN SMAN 2 SLAWI 2023.pptx
MODUL P5 KEWIRAUSAHAAN SMAN 2 SLAWI 2023.pptxSlasiWidasmara1
 
PEMANASAN GLOBAL - MATERI KELAS X MA.pptx
PEMANASAN GLOBAL - MATERI KELAS X MA.pptxPEMANASAN GLOBAL - MATERI KELAS X MA.pptx
PEMANASAN GLOBAL - MATERI KELAS X MA.pptxsukmakarim1998
 
Dampak Pendudukan Jepang.pptx indonesia1
Dampak Pendudukan Jepang.pptx indonesia1Dampak Pendudukan Jepang.pptx indonesia1
Dampak Pendudukan Jepang.pptx indonesia1udin100
 
MODUL AJAR MATEMATIKA KELAS 6 KURIKULUM MERDEKA
MODUL AJAR MATEMATIKA KELAS 6 KURIKULUM MERDEKAMODUL AJAR MATEMATIKA KELAS 6 KURIKULUM MERDEKA
MODUL AJAR MATEMATIKA KELAS 6 KURIKULUM MERDEKAAndiCoc
 
contoh penulisan nomor skl pada surat kelulusan .pptx
contoh penulisan nomor skl pada surat kelulusan  .pptxcontoh penulisan nomor skl pada surat kelulusan  .pptx
contoh penulisan nomor skl pada surat kelulusan .pptxHR MUSLIM
 
MATERI EKOSISTEM UNTUK SEKOLAH MENENGAH ATAS
MATERI EKOSISTEM UNTUK SEKOLAH MENENGAH ATASMATERI EKOSISTEM UNTUK SEKOLAH MENENGAH ATAS
MATERI EKOSISTEM UNTUK SEKOLAH MENENGAH ATASKurniawan Dirham
 
Latihan Soal bahasa Indonesia untuk anak sekolah sekelas SMP atau pun sederajat
Latihan Soal bahasa Indonesia untuk anak sekolah sekelas SMP atau pun sederajatLatihan Soal bahasa Indonesia untuk anak sekolah sekelas SMP atau pun sederajat
Latihan Soal bahasa Indonesia untuk anak sekolah sekelas SMP atau pun sederajatArfiGraphy
 
Bab 7 - Perilaku Ekonomi dan Kesejahteraan Sosial.pptx
Bab 7 - Perilaku Ekonomi dan Kesejahteraan Sosial.pptxBab 7 - Perilaku Ekonomi dan Kesejahteraan Sosial.pptx
Bab 7 - Perilaku Ekonomi dan Kesejahteraan Sosial.pptxssuser35630b
 
tugas 1 anak berkebutihan khusus pelajaran semester 6 jawaban tuton 1.docx
tugas 1 anak berkebutihan khusus pelajaran semester 6 jawaban tuton 1.docxtugas 1 anak berkebutihan khusus pelajaran semester 6 jawaban tuton 1.docx
tugas 1 anak berkebutihan khusus pelajaran semester 6 jawaban tuton 1.docxmawan5982
 
Materi Pertemuan Materi Pertemuan 7.pptx
Materi Pertemuan Materi Pertemuan 7.pptxMateri Pertemuan Materi Pertemuan 7.pptx
Materi Pertemuan Materi Pertemuan 7.pptxRezaWahyuni6
 
11 PPT Pancasila sebagai Paradigma Kehidupan dalam Masyarakat.pptx
11 PPT Pancasila sebagai Paradigma Kehidupan dalam Masyarakat.pptx11 PPT Pancasila sebagai Paradigma Kehidupan dalam Masyarakat.pptx
11 PPT Pancasila sebagai Paradigma Kehidupan dalam Masyarakat.pptxMiftahunnajahTVIBS
 
2 KISI-KISI Ujian Sekolah Dasar mata pelajaranPPKn 2024.pdf
2 KISI-KISI Ujian Sekolah Dasar  mata pelajaranPPKn 2024.pdf2 KISI-KISI Ujian Sekolah Dasar  mata pelajaranPPKn 2024.pdf
2 KISI-KISI Ujian Sekolah Dasar mata pelajaranPPKn 2024.pdfsdn3jatiblora
 
Kontribusi Islam Dalam Pengembangan Peradaban Dunia - KELOMPOK 1.pptx
Kontribusi Islam Dalam Pengembangan Peradaban Dunia - KELOMPOK 1.pptxKontribusi Islam Dalam Pengembangan Peradaban Dunia - KELOMPOK 1.pptx
Kontribusi Islam Dalam Pengembangan Peradaban Dunia - KELOMPOK 1.pptxssuser50800a
 
tugas 1 tutorial online anak berkebutuhan khusus di SD
tugas 1 tutorial online anak berkebutuhan khusus di SDtugas 1 tutorial online anak berkebutuhan khusus di SD
tugas 1 tutorial online anak berkebutuhan khusus di SDmawan5982
 
Aksi Nyata Modul 1.1 Calon Guru Penggerak
Aksi Nyata Modul 1.1 Calon Guru PenggerakAksi Nyata Modul 1.1 Calon Guru Penggerak
Aksi Nyata Modul 1.1 Calon Guru Penggeraksupriadi611
 
Sosialisasi PPDB SulSel tahun 2024 di Sulawesi Selatan
Sosialisasi PPDB SulSel tahun 2024 di Sulawesi SelatanSosialisasi PPDB SulSel tahun 2024 di Sulawesi Selatan
Sosialisasi PPDB SulSel tahun 2024 di Sulawesi Selatanssuser963292
 
Bab 6 Kreatif Mengungap Rasa dan Realitas.pdf
Bab 6 Kreatif Mengungap Rasa dan Realitas.pdfBab 6 Kreatif Mengungap Rasa dan Realitas.pdf
Bab 6 Kreatif Mengungap Rasa dan Realitas.pdfbibizaenab
 
TUGAS GURU PENGGERAK Aksi Nyata Modul 1.1.pdf
TUGAS GURU PENGGERAK Aksi Nyata Modul 1.1.pdfTUGAS GURU PENGGERAK Aksi Nyata Modul 1.1.pdf
TUGAS GURU PENGGERAK Aksi Nyata Modul 1.1.pdfElaAditya
 
ppt-modul-6-pend-seni-di sd kelompok 2 ppt
ppt-modul-6-pend-seni-di sd kelompok 2 pptppt-modul-6-pend-seni-di sd kelompok 2 ppt
ppt-modul-6-pend-seni-di sd kelompok 2 pptArkhaRega1
 
Prakarsa Perubahan ATAP (Awal - Tantangan - Aksi - Perubahan)
Prakarsa Perubahan ATAP (Awal - Tantangan - Aksi - Perubahan)Prakarsa Perubahan ATAP (Awal - Tantangan - Aksi - Perubahan)
Prakarsa Perubahan ATAP (Awal - Tantangan - Aksi - Perubahan)MustahalMustahal
 

Recently uploaded (20)

MODUL P5 KEWIRAUSAHAAN SMAN 2 SLAWI 2023.pptx
MODUL P5 KEWIRAUSAHAAN SMAN 2 SLAWI 2023.pptxMODUL P5 KEWIRAUSAHAAN SMAN 2 SLAWI 2023.pptx
MODUL P5 KEWIRAUSAHAAN SMAN 2 SLAWI 2023.pptx
 
PEMANASAN GLOBAL - MATERI KELAS X MA.pptx
PEMANASAN GLOBAL - MATERI KELAS X MA.pptxPEMANASAN GLOBAL - MATERI KELAS X MA.pptx
PEMANASAN GLOBAL - MATERI KELAS X MA.pptx
 
Dampak Pendudukan Jepang.pptx indonesia1
Dampak Pendudukan Jepang.pptx indonesia1Dampak Pendudukan Jepang.pptx indonesia1
Dampak Pendudukan Jepang.pptx indonesia1
 
MODUL AJAR MATEMATIKA KELAS 6 KURIKULUM MERDEKA
MODUL AJAR MATEMATIKA KELAS 6 KURIKULUM MERDEKAMODUL AJAR MATEMATIKA KELAS 6 KURIKULUM MERDEKA
MODUL AJAR MATEMATIKA KELAS 6 KURIKULUM MERDEKA
 
contoh penulisan nomor skl pada surat kelulusan .pptx
contoh penulisan nomor skl pada surat kelulusan  .pptxcontoh penulisan nomor skl pada surat kelulusan  .pptx
contoh penulisan nomor skl pada surat kelulusan .pptx
 
MATERI EKOSISTEM UNTUK SEKOLAH MENENGAH ATAS
MATERI EKOSISTEM UNTUK SEKOLAH MENENGAH ATASMATERI EKOSISTEM UNTUK SEKOLAH MENENGAH ATAS
MATERI EKOSISTEM UNTUK SEKOLAH MENENGAH ATAS
 
Latihan Soal bahasa Indonesia untuk anak sekolah sekelas SMP atau pun sederajat
Latihan Soal bahasa Indonesia untuk anak sekolah sekelas SMP atau pun sederajatLatihan Soal bahasa Indonesia untuk anak sekolah sekelas SMP atau pun sederajat
Latihan Soal bahasa Indonesia untuk anak sekolah sekelas SMP atau pun sederajat
 
Bab 7 - Perilaku Ekonomi dan Kesejahteraan Sosial.pptx
Bab 7 - Perilaku Ekonomi dan Kesejahteraan Sosial.pptxBab 7 - Perilaku Ekonomi dan Kesejahteraan Sosial.pptx
Bab 7 - Perilaku Ekonomi dan Kesejahteraan Sosial.pptx
 
tugas 1 anak berkebutihan khusus pelajaran semester 6 jawaban tuton 1.docx
tugas 1 anak berkebutihan khusus pelajaran semester 6 jawaban tuton 1.docxtugas 1 anak berkebutihan khusus pelajaran semester 6 jawaban tuton 1.docx
tugas 1 anak berkebutihan khusus pelajaran semester 6 jawaban tuton 1.docx
 
Materi Pertemuan Materi Pertemuan 7.pptx
Materi Pertemuan Materi Pertemuan 7.pptxMateri Pertemuan Materi Pertemuan 7.pptx
Materi Pertemuan Materi Pertemuan 7.pptx
 
11 PPT Pancasila sebagai Paradigma Kehidupan dalam Masyarakat.pptx
11 PPT Pancasila sebagai Paradigma Kehidupan dalam Masyarakat.pptx11 PPT Pancasila sebagai Paradigma Kehidupan dalam Masyarakat.pptx
11 PPT Pancasila sebagai Paradigma Kehidupan dalam Masyarakat.pptx
 
2 KISI-KISI Ujian Sekolah Dasar mata pelajaranPPKn 2024.pdf
2 KISI-KISI Ujian Sekolah Dasar  mata pelajaranPPKn 2024.pdf2 KISI-KISI Ujian Sekolah Dasar  mata pelajaranPPKn 2024.pdf
2 KISI-KISI Ujian Sekolah Dasar mata pelajaranPPKn 2024.pdf
 
Kontribusi Islam Dalam Pengembangan Peradaban Dunia - KELOMPOK 1.pptx
Kontribusi Islam Dalam Pengembangan Peradaban Dunia - KELOMPOK 1.pptxKontribusi Islam Dalam Pengembangan Peradaban Dunia - KELOMPOK 1.pptx
Kontribusi Islam Dalam Pengembangan Peradaban Dunia - KELOMPOK 1.pptx
 
tugas 1 tutorial online anak berkebutuhan khusus di SD
tugas 1 tutorial online anak berkebutuhan khusus di SDtugas 1 tutorial online anak berkebutuhan khusus di SD
tugas 1 tutorial online anak berkebutuhan khusus di SD
 
Aksi Nyata Modul 1.1 Calon Guru Penggerak
Aksi Nyata Modul 1.1 Calon Guru PenggerakAksi Nyata Modul 1.1 Calon Guru Penggerak
Aksi Nyata Modul 1.1 Calon Guru Penggerak
 
Sosialisasi PPDB SulSel tahun 2024 di Sulawesi Selatan
Sosialisasi PPDB SulSel tahun 2024 di Sulawesi SelatanSosialisasi PPDB SulSel tahun 2024 di Sulawesi Selatan
Sosialisasi PPDB SulSel tahun 2024 di Sulawesi Selatan
 
Bab 6 Kreatif Mengungap Rasa dan Realitas.pdf
Bab 6 Kreatif Mengungap Rasa dan Realitas.pdfBab 6 Kreatif Mengungap Rasa dan Realitas.pdf
Bab 6 Kreatif Mengungap Rasa dan Realitas.pdf
 
TUGAS GURU PENGGERAK Aksi Nyata Modul 1.1.pdf
TUGAS GURU PENGGERAK Aksi Nyata Modul 1.1.pdfTUGAS GURU PENGGERAK Aksi Nyata Modul 1.1.pdf
TUGAS GURU PENGGERAK Aksi Nyata Modul 1.1.pdf
 
ppt-modul-6-pend-seni-di sd kelompok 2 ppt
ppt-modul-6-pend-seni-di sd kelompok 2 pptppt-modul-6-pend-seni-di sd kelompok 2 ppt
ppt-modul-6-pend-seni-di sd kelompok 2 ppt
 
Prakarsa Perubahan ATAP (Awal - Tantangan - Aksi - Perubahan)
Prakarsa Perubahan ATAP (Awal - Tantangan - Aksi - Perubahan)Prakarsa Perubahan ATAP (Awal - Tantangan - Aksi - Perubahan)
Prakarsa Perubahan ATAP (Awal - Tantangan - Aksi - Perubahan)
 

OPTIMASI GAUSS-JORDAN

  • 1. TUGAS ALJABAR LINIER PENYELESAIAN SISTEM PERSAMAAN LINIER DENGAN METODE ELIMINASI GAUSS-JORDAN Disusun oleh : Rendy Wijaya (535080024) Janson Hendryli (535080020) Felisia (535080022) Fakultas Teknologi Informasi Universitas Tarumanagara 2009 1
  • 2. DAFTAR ISI DAFTAR ISI ................................................................................................................................... 2 BAB I PENDAHULUAN ........................................................................................................... 3 1.1 Latar Belakang ............................................................................................................ 3 1.2 Tujuan ......................................................................................................................... 3 1.3 Manfaat ....................................................................................................................... 3 BAB II PEMBAHASAN .............................................................................................................. 4 2.1 Sistem Persamaan Linier ............................................................................................. 4 2.2 Eliminasi Gauss-Jordan .............................................................................................. 5 2.3 Algoritma Program ...................................................................................................... 9 2.4 Keunggulan dan Kelemahan Program ........................................................................ 11 BAB III PENUTUP ........................................................................................................................ 12 3.1 Kesimpulan ................................................................................................................. 12 3.2 Saran-saran .................................................................................................................. 12 DAFTAR PUSTAKA ...................................................................................................................... 13 LAMPIRAN .................................................................................................................................... 14 2
  • 3. BAB I PENDAHULUAN 1.1 Latar Belakang Laporan dan program ini merupakan tugas mata kuliah Aljabar Linier. Pembuatan laporan ini merupakan salah satu tugas yang harus dikumpulkan. Topik yang dibahas dalam laporan ini adalah penyelesaian sistem persamaan linier dengan metode eliminasi Gauss-Jordan. 1.2 Tujuan Pembuatan laporan ini walau awalnya sebagai tugas mata kuliah Aljabar Linier sebenarnya juga sangat membantu kelompok untuk memahami metode eliminasi Gauss-Jordan ini lebih baik. Tujuan pembuatan program, di luar alasan kewajiban (tugas), adalah membantu pengguna lainnya yang ingin menyelesaikan sistem persamaan linier. 1.3 Manfaat Manfaat dari laporan serta program yang dibuat kelompok antara lain : 1. Membantu memahami lebih lanjut penyelesaian sistem persamaan linier dengan metode eliminasi Gauss-Jordan. 2. Membantu pengguna yang ingin menyelesaikan sistem persamaan linier. 3. Membantu mempelajari langkah-langkah yang dilakukan untuk menyelesaikan sistem persamaan linier. 3
  • 4. BAB II PEMBAHASAN 2.1 Sistem Persamaan Linier Di dalam matematika, sistem persamaan linier adalah kumpulan persamaan-persamaan linier yang memiliki variabel-variabel yang sama. Bentuk umum dari sistem persamaan linier dengan n variabel dari m persamaan adalah sebagai berikut : Pada contoh di atas, x1, x2, ..., xn adalah variabel-variabel yang tidak diketahui nilainya, dan a11, a12, ..., amn adalah koefisien-koefisien dari sistem persamaan tersebut, sedangkan b1, b2, ..., bm adalah konstanta. Contoh dari sistem persamaan linier dengan 3 variabel: 2x – 3y + z = -1 x + 2y – 3z = -4 3x – y + 2z = 7 Pada persamaan di atas, variabel-variabelnya adalah x, y, dan z. Kita dapat mengganti x1, x2, ..., xn dengan huruf-huruf lainnya untuk membedakan. Dalam contoh di atas, x1, x2, x3 diganti dengan x, y, dan z secara berurutan. Sebuah penyelesaian dari sistem persamaan linier adalah kumpulan n angka s1, s2, ..., sn sedemikian sehingga jika kita mensubsitusi x1 = s1, x2 = s2, ..., xn = sn maka sistem persamaan tersebut dapat dipenuhi. Penyelesaian dari sistem persamaan linier pada contoh sebelumnya adalah : x = 1 y = 2 4
  • 5. z = 3 karena nilai-nilai tersebut membuat persamaan tersebut menjadi valid. Ada beberapa metode untuk menyelesaikan sistem persamaan linier, namun yang akan dibahas secara lanjut di laporan ini adalah metode eliminasi Gauss-Jordan. 2.2 Eliminasi Gauss-Jordan Salah satu metode yang dapat digunakan untuk menyelesaikan sistem persamaan linier adalah metode eliminasi Gauss-Jordan. Metode ini diberi nama Gauss-Jordan untuk menghormati Carl Friedrich Gauss dan Wilhelm Jordan. Metode ini sebenarnya adalah modifikasi dari metode eliminasi Gauss, yang dijelaskan oleh Jordan di tahun 1887. Metode Gauss-Jordan ini menghasilkan matriks dengan bentuk baris eselon yang tereduksi (reduced row echelon form), sementara eliminasi Gauss hanya menghasilkan matriks sampai pada bentuk baris eselon (row echelon form). Selain untuk menyelesaikan sistem persamaan linier, metode eliminasi Gauss-Jordan ini dapat pula digunakan untuk mencari invers dari sebuah matriks. Prosedur umum untuk metode eliminasi Gauss-Jordan ini adalah 1. Ubah sistem persamaan linier yang ingin dihitung menjadi matriks augmentasi. 2. Lakukan operasi baris elementer pada matriks augmentasi (A|b) untuk mengubah matriks A menjadi dalam bentuk baris eselon yang tereduksi. Contoh mengubah sistem persamaan linier menjadi matriks augmentasi. → Pengubahan dilakukan dengan membuat matriks yang elemen-elemennya adalah koefisien- koefisien dari sistem persamaan linier.. Sedangkan langkah-langkah pada operasi baris elementer yaitu : 1. Menukar posisi dari 2 baris. Ai ↔ Aj 2. Mengalikan baris dengan sebuah bilangan skalar positif. Ai = k * Aj 5
  • 6. 3. Menambahkan baris dengan hasil kali skalar dengan baris lainnya. Ai = Ai + k * Aj Sebuah matriks sendiri bisa dikatakan sudah memiliki bentuk baris eselon yang tereduksi jika telah memenuhi syarat-syarat berikut ini. 1. Jika sebuah baris seluruhnya bukan merupakan angka nol, maka angka bukan nol pertama pada baris tersebut adalah 1 (leading 1). 2. Jika ada baris yang seluruhnya terdiri dari angka nol, maka baris tersebut dikelompokkan di baris paling bawah dari matriks. 3. Jika ada 2 baris berurutan yang sama-sama tidak terdiri dari angka nol seluruhnya, maka leading 1 dari baris yang lebih bawah berada di sebelah kanan dari leading 1 yang berada di baris yang lebih atas. 4. Pada setiap kolom yang memiliki leading 1 di kolomnya, maka nilai yang ada di kolom tersebut kecuali leading 1 adalah nol. Sebuah matriks yang hanya memenuhi syarat 1 sampai 3 adalah matriks yang dalam bentuk baris eselon. Sedangkan jika syarat keempat juga dipenuhi, maka matriks tersebut dapat dikatakan dalam bentuk baris eselon yang tereduksi. Berikut beberapa contoh matriks yang sudah dalam bentuk baris eselon tereduksi. Berikut contoh langkah-langkah yang dilakukan untuk menyelesaikan sistem persamaan linier dengan metode eliminasi Gauss-Jordan. Diketahui sistem persamaan linier sebagai berikut. 2x + 4y - 2z = 12 x + 5y + 3z = 8 -3x + y + 3z = -4 1. Ubah sistem persamaan linier di atas menjadi matriks augmentasi. 2 4 -2 12 1 5 3 8 -3 1 3 -4 6
  • 7. 2. Kalikan baris pertama dengan 0.5 1 2 -1 6 1 5 3 8 -3 1 3 -4 3. Tambahkan baris kedua dengan (-1) kali baris pertama 1 2 -1 6 0 3 4 2 -3 1 3 -4 4. Tambahkan baris ketiga dengan 3 kali baris pertama 1 2 -1 6 0 3 4 2 0 7 0 14 5. Kalikan baris kedua dengan 1/3 1 2 -1 6 0 1 0.33 0.67 0 7 0 14 6. Tambahkan baris pertama dengan (-2) kali baris kedua 1 0 -3.67 4.67 0 1 0.33 0.67 0 7 0 14 7. Tambahkan baris ketiga dengan (-7) kali baris kedua 1 0 -3.67 4.67 0 1 0.33 0.67 0 0 -9.33 9.33 7
  • 8. 8. Kalikan baris ketiga dengan -1/9.33 1 0 -3.67 4.67 0 1 0.33 0.67 0 0 1 -1 9. Menambahkan baris pertama dengan 3.67 kali baris ketiga 1 0 0 1 0 1 0.33 0.67 0 0 1 -1 10. Menambahkan baris kedua dengan (-0.33) kali baris ketiga 1 0 0 1 0 1 0 2 0 0 1 -1 Setelah langkah ke-10, maka matriks ini telah dalam bentuk baris eselon tereduksi. Dari matriks terakhir ini dapat disimpulkan bahwa nilai x = 1, y = 2, dan z = -1. Contoh di atas diterapkan pada sistem persamaan linier dengan n variabel dan n persamaan. Contoh berikut adalah cara menyelesaikan sistem persamaan linier dengan n variabel dan m persamaan. Diketahui sistem persamaan linier sebagai berikut. 2x + 3y - 5z = 7 x + 4y + 8z = 3 1. Ubah menjadi matriks teraugmentasi 2 3 -5 7 1 4 8 3 2. Kalikan baris pertama dengan ½ 1 1.5 -2.5 3.5 1 4 8 3 3. Tambahkan baris kedua dengan (-1) kali baris pertama 1 1.5 -2.5 3.5 0 2.5 10.5 -0.5 8
  • 9. 4. Kalikan baris kedua dengan 1/2.5 1 1.5 -2.5 3.5 0 1 4.2 -0.2 5. Tambahkan baris pertama dengan (-1.5) kali baris kedua 1 0 -8.8 3.8 0 1 4.2 -0.2 Penyelesaian untuk persamaan di atas akan menjadi : x – 8.8z = 3.8 y + 4.2z = -0.2 Ada 3 macam kemungkinan penyelesaian dari sistem persamaan linier, yaitu : 1. Solusi yang unik. Hanya ada satu himpunan nilai (s1, s2, ..., sn) yang memenuhi sistem persamaan linier tersebut. 2. Tidak ada solusi. Tidak ada himpunan nilai (s1, s2, ..., sn) yang memenuhi sistem persamaan linier tersebut. 3. Solusi yang ada tidak berhingga. Ada lebih dari satu (tak berhingga) himpunan nilai (s1, s2, ..., sn) yang memenuhi sistem persamaan linier tersebut. 2.3 Algoritma Program Program yang dibuat kelompok menggunakan bahasa PHP dan berbasis web. Algoritma yang digunakan program untuk menghasilkan hasil dari sistem persamaan linier adalah sebagai berikut. 1. Baca nilai n dan m. Nilai n disini melambangkan banyaknya variabel dalam persamaan. Sedangkan nilai m menunjukkan banyaknya persamaan. 2. Baca nilai-nilai konstanta dari sistem persamaan tersebut, lalu masukkan ke dalam sebuah array 2 dimensi m*(n+1). Pada langkah ini sistem persamaan linier telah dimasukkan ke matriks augmentasi. 3. Lakukan proses pada diagonal matriks, dimulai dari posisi baris 1 kolom 1 (posisi kerja). 4. Lakukan untuk setiap baris di dalam matriks a) Jika di baris tersebut semua berisi angka nol, maka pindahkan ke baris paling bawah. b) Jika nilai matriks pada posisi kerja adalah nol, maka tukar dengan baris di bawahnya 9
  • 10. yang tidak nol. Jika baris di bawahnya semua nol, maka pindah ke kolom berikutnya. Setelah ditukar maka lanjut ke langkah selanjutnya. Sedangkan jika posisi kerja bukan nol, lakukan langkah selanjutnya. c) Bagi semua nilai di baris yang sedang dikerjakan dengan nilai pada posisi kerja. d) Ubah semua nilai di kolom yang sedang dikerjakan menjadi nilai nol (kecuali kolom pada baris yang sedang dikerjakan), dengan melakukan operasi baris elementer ketiga pada setiap baris. 5. Tampilkan hasilnya. 6. Selesai. Algoritma program di atas mungkin sulit dipahami, namun yang dilakukan program adalah sama dengan cara pengoperasian manual. Perhatikan contoh di bawah ini. 1. Matriks A yang akan diproses adalah sebagai berikut : 2. Dimulai dari diagonal pada baris pertama, yaitu A[1,1], karena sudah bernilai 1 maka kita akan lanjutkan ke langkah berikutnya yaitu mengubah setiap nilai di kolom pertama menjadi nol. 3. Ubah A[2,1] menjadi nol dengan mengurangi baris kedua kolom j dengan 2 kali A[1, j]. 4. Ubah A[3,1] menjadi nol dengan menambah baris ketiga kolom j dengan A[1, j]. 5. Sekarang proses diagonal pada baris kedua. Untuk mengubah nilai A[2,2] menjadi 1, maka bagi baris 2 dengan angka 3. 10
  • 11. 6. Setelah itu ubah setiap angka di kolom 2 kecuali pada baris kedua menjadi nol. Caranya pertama-tama dengan menambah baris pertama dengan 2 kali baris kedua. A[1, j] = A[1, j] + 2 * A[2, j] 7. Setelah itu, kurangi baris ketiga dengan baris kedua. A[3, j] = A[3, j] – A[2, j] 8. Lanjut ke diagonal selanjutnya, yaitu A[3,3]. Karena A[3,3] sudah bernilai 1 maka lanjutkan ke proses selanjutnya. 9. Untuk mengubah kolom ketiga baris pertama dan ketiga menjadi nol, maka lakukan A[1, j] = A[1, j] – 2 * A[3, j] A[2, j] = A[2, j] + A[3, j] 10. Sekarang matriks A telah berbentuk baris eselon yang tereduksi. 2.4 Keunggulan dan Kelemahan Program Berikut beberapa keunggulan dari program ini : 1. Mempermudah perhitungan untuk sistem persamaan linier yang memiliki banyak variabel. 2. Karena menggunakan komputasi dengan bantuan komputer, maka dapat mengurangi kesalahan dalam perhitungan. 3. Menggunakan teknologi web (PHP) sehingga dapat diakses oleh pengguna tanpa memperdulikan sistem operasi yang digunakan. 4. Program ini telah online dan dapat diakses di http://www.jansonhendryli.net/gaussjordan Setiap program pastilah memiliki kekurangan. Berikut beberapa kekurangan dari program ini : 1. Nilai konstanta yang dapat dimasukkan dibatasi paling maksimum adalah 2,147,483,647. 11
  • 12. 2. Pada keadaan tertentu tidak dapat langsung menunjukkan nilai x1, x2, ..., xn .Maksudnya di sini adalah hasil yang ditunjukkan terkadang masih berbentuk persamaan lainnya. 12
  • 13. BAB III PENUTUP 3.1 Kesimpulan Sistem persamaan linier adalah kumpulan persaman-persamaan linier yang memiliki variabel- variabel yang sama. Sistem persamaan linier memiliki penyelesaian, yaitu himpunan angka yang akan memenuhi persamaan-persamaan tersebut jika disubstitusi. Ada 3 macam kemungkinan penyelesaian dari sistem persamaan linier, yaitu ada solusi yang unik, tidak ada solusi, atau memiliki solusi yang tak terhingga. Ada berbagai macam cara untuk menyelesaikan sistem persamaan linier. Salah satunya adalah dengan metode eliminasi Gauss-Jordan. Eliminasi Gauss-Jordan menggunakan operasi baris elementer untuk menghasilkan matriks augmentasi yang berbentuk baris eselon yang tereduksi. 3.2 Saran-saran Program yang dibuat diharapkan dapat berguna bagi orang lain. Namun program yang berhasil dibuat tetap memiliki beberapa kelemahan. Maka diharapkan program tersebut nantinya dapat diperbaiki lebih lanjut sehingga dapat menjadi lebih baik lagi. Kelompok terutama kesulitan untuk mencari bahan dari buku-buku atau website internet yang membahas mengenai penyelesaian sistem persamaan linier pada n variabel dari m persamaan. Walau akhirnya berhasil mendapatkan bahan yang diperlukan, namun tak banyak yang membahas. Sumber terutama hanya membahas penyelesaian sistem persamaan linier pada n variabel dan n persamaan. Sebaiknya sumber-sumber juga membahas mengenai penyelesaian sistem persamaan linier pada n variabel dari m persamaan karena dapat juga dilakukan. 13
  • 14. DAFTAR PUSTAKA Anton, Howard dan Chris Rorres. 2005. Elementary Linear Algebra – Applications Version. John Willey & Sons, Inc. http://ceee.rice.edu/Books/CS/chapter2/linear44.html http://en.wikipedia.org http://mathrefresher.blogspot.com http://www2.krellinst.org/AiS/textbook/unit2/example_projects/starter/math/matrix/gauss.html 14
  • 15. LAMPIRAN File index.php <html> <head> <style type="text/css"> .indice { font-size: 9px; vertical-align: sub;} </style> <title>Gauss-Jordan</title> <?php $indexname = "index.php"; function formatInt($nn) { if ($nn == 0) return abs($nn); else return $nn; } $n = 0; $m = 0; $status = $_POST['status1']; $status2 = $_POST['status2']; if (($status == "tampil_tabel") || ($status2 == "hitung")) { $n = $_POST['ordo']; $m = $_POST['ordo2']; } else { $fp = fopen("data.txt", "w"); fclose($fp); } if ($status2 == "hitung") { $count_error = 0; $char_exists = 0; $isOK = false; $min_min = false; for ($i=0; $i<$m; $i++) for ($j=0; $j<=$n; $j++) { $min_exists = 0; $n1 = $i+1; $n2 = $j+1; $idx = "x".$n1."-".$n2; $k = $_POST[$idx]; if ($k != "") { for ($c=0; $c<strlen($k); $c++) { if ($k[$c] == '-') { $min_exists++; if ($c != 0) $min_exists++; 15
  • 16. continue; } if ((ord($k[$c]) < ord('0')) || (ord($k[$c]) > ord('9'))) $char_exists++; } if ($min_exists > 1) { echo "<script language='JavaScript'>”; echo “alert('Anda salah memasukkan input!');</script>"; $min_min = true; } else if ($char_exists == 0) $arr[$i][$j] = formatInt((int) $k); } else $count_error++; } if ($count_error == $m*($n+1)) { echo "<script language='JavaScript'>”; echo “alert('Anda tidak memasukkan nilai apapun!');</script>"; } else if ($count_error != 0) { echo "<script language='JavaScript'>”; echo “alert('Nilai-nilai yang anda masukkan tidak lengkap!');</script>"; } else if ($char_exists > 0) { echo "<script language='JavaScript'>”; echo “alert('Anda memasukkan input yang bukan berupa bilangan!');</script>"; } else if (!$min_min) $isOK = true; } ?> </head> <body> <center><h1><font color="blue"> Penyelesaian SPL dengan Eliminasi Gauss-Jordan </font></h1></center> <blockquote> <hr><br> Script ini digunakan untuk menghitung nilai-nilai variabel dalam Sistem Persamaan Linear. Anda dapat memasukkan jumlah variabel pada sistem persamaan linear yang ingin dicari penyelesaiannya dan juga banyaknya persamaan, kemudian tekan tombol <b>proses</b>. <br><br> <form action=<?php echo $indexname; ?> method="post" name="form1"> <input type="hidden" name="status1" value="tampil_tabel"> <strong>Menghitung sistem persamaan linear dengan </strong> <input type="text" name="ordo" size="3" value= <?php echo $n; ?> > <strong> variabel dari </strong> <input type="text" name="ordo2" size="3" value= <?php echo $m; ?> > <strong> persamaan</strong> 16
  • 17. <input type="submit" name="submit1" value="Proses"> </form> <?php if (($status == "tampil_tabel") || ($status2 == "hitung")) { if ($n <= 0 || $m <= 0) { echo "<script language='JavaScript'>”; echo “alert('Masukkan bilangan positif!');</script>"; } else if ($n > 1000 || $m > 1000) { echo "<script language='JavaScript'>”; echo “alert('Bilangan yang anda masukkan terlalu besar!');</script>"; } else { echo "Masukkan nilai-nilai konstanta pada sistem persamaan linear”; echo “ yang ingin anda hitung. Lalu tekan tombol <b>hitung</b>.<br>"; echo "<form action=$indexname method='post' name='form2'>"; echo "<table bgcolor='lightblue'>"; for ($i=0; $i<$m; $i++) { $colspan = $n + 1; $k = $i + 1; echo "<tr><td colspan='$colspan'>Persamaan $k</td></tr>"; echo "<tr>"; for ($j=0; $j<=$n; $j++) { echo "<td>"; $n1 = $i+1; $n2 = $j+1; $name = "x".$n1."-".$n2; echo "<input type='text' name=$name “; echo “value='{$arr[$i][$j]}' size='3'>"; if ($j != $n) echo "x<span class=indice>$n2</span>"; echo "&nbsp;&nbsp;"; if ($j == $n - 1) echo " = "; else if ($j == $n) echo ""; else echo " + "; echo "</td>"; } echo "</tr>"; echo "<tr><td>&nbsp;</td></tr>"; } echo "</table>"; echo "<input type='hidden' name='ordo' value=$n>"; echo "<input type='hidden' name='ordo2' value=$m>"; echo "<input type='hidden' name='status2' value='hitung'>"; echo "<input type='submit' name='submit2' value='Hitung'>"; echo "</form>"; } } if ($status2 == "hitung" && $isOK) { 17
  • 18. $noSol = false; $fp = fopen("data.txt", "w"); fputs($fp, "$nn$mn"); fputs($fp, "1n"); for ($ii=0; $ii<$m; $ii++) for ($jj=0; $jj<=$n; $jj++) fputs($fp, "{$arr[$ii][$jj]}n"); for ($i=0; ($i<$m)&&(!$noSol); $i++) { $nZero = 0; for ($j=0; $j<=$n; $j++) if ($arr[$i][$j] == 0.0) $nZero++; if ($nZero == $n+1) { $otherZero = true; for ($j1=$i+1; (($j1<$m)&&$otherZero); $j1++) for ($j2=0; $j2<=$n; $j2++) if ($arr[$j1][$j2] != 0.0) { $otherZero = false; break; } if (!$otherZero) { for ($j1=$i+1; $j1<$m; $j1++) { for ($j2=0; $j2<=$n; $j2++) { $arr[$j1-1][$j2] = $arr[$j1][$j2]; } } for ($j2=0; $j2<=$n; $j2++) $arr[$m-1][$j2] = 0.0; fputs($fp, "5n$in"); for ($ii=0; $ii<$m; $ii++) for ($jj=0; $jj<=$n; $jj++) fputs($fp, "{$arr[$ii][$jj]}n"); } } $k1 = $i; $k2 = $i; if ($arr[$k1][$k2] == 0.0) { while (($arr[$k1][$k2] == 0.0) && ($k2 < $n)) { if ($k1 == $m) { $k1 = $i; $k2++; } else ++$k1; } 18
  • 19. if (($k1 != $i) && !($k2 == $n)) { if ($arr[$k1][$k2] != 0.0) { for ($j=0; $j<=$n; $j++) { $buff = $arr[$k1][$j]; $arr[$k1][$j] = $arr[$i][$j]; $arr[$i][$j] = $buff; } fputs($fp, "2n$in$k1n"); for ($ii=0; $ii<$m; $ii++) for ($jj=0; $jj<=$n; $jj++) fputs($fp, "{$arr[$ii][$jj]}n"); } else $noSol = true; } } $nZero = 0; for ($j=0; $j<=$n; $j++) if ($arr[$i][$j] == 0.0) $nZero++; if (!$noSol && ($nZero != $n+1)) { $divider = $arr[$i][$k2]; if (($divider != 1) && ($divider != 0)) { for ($j=0; $j<=$n; $j++) $arr[$i][$j] = formatInt($arr[$i][$j] * (1.0 / $divider)); fputs($fp, "3n$in$dividern"); for ($ii=0; $ii<$m; $ii++) for ($jj=0; $jj<=$n; $jj++) fputs($fp, "{$arr[$ii][$jj]}n"); } for ($j=0; $j<$m; $j++) { if (($j != $i) && ($arr[$j][$k2] != 0)) { $operand = -1.0 * $arr[$j][$k2]; for ($k=0; $k<=$n; $k++) $arr[$j][$k] = formatInt($arr[$j][$k] + (1.0 * $operand * $arr[$k1][$k])); fputs($fp, "4n$jn$operandn$in"); for ($ii=0; $ii<$m; $ii++) for ($jj=0; $jj<=$n; $jj++) fputs($fp, "{$arr[$ii][$jj]}n"); } } } } fclose($fp); } 19
  • 20. ?> <br><br> <?php if ($status2 == "hitung" && $isOK) { echo "<strong>Penyelesaian dari persamaan diatas :</strong>"; echo "<table bgcolor='lightgreen' border='4' width='30%'>"; $solExists = false; $nZero = 0; for ($i=0; $i<$m; $i++) for ($j=0; $j<$n; $j++) if ($arr[$i][$j] == 0) $nZero++; if ($nZero != $m*$n) { $solExists = true; for ($i=0; $i<$m; $i++) { $nZero = 0; for ($j=0; $j<$n; $j++) if ($arr[$i][$j] == 0) $nZero++; if ($nZero == $n) continue; $n1 = $i+1; echo "<tr>"; echo "<td><center><strong>"; $isFirst = true; for ($j=0; $j<$n; $j++) { $value = abs($arr[$i][$j]); $n1 = $j+1; if ($value != 0) { if (!$isFirst) if ($arr[$i][$j] >= 0) echo " + "; else echo " - "; $isFirst = false; if ($value != 1) echo $value; echo "x<span class=indice>$n1</span>"; } } echo "</strong></center></td>"; echo "<td><center><strong>{$arr[$i][$n]}</strong></center></td>"; echo "</tr>"; } } echo "</table>"; if (!$solExists) { echo "<font color='red'>”; echo “<strong>Persamaan ini tidak dapat diselesaikan"; echo " (tidak memiliki solusi atau memiliki solusi yang “; echo “tak terhingga).</strong></font>"; } echo "<br><br>Untuk mengetahui langkah-langkah yang dilakukan “; echo “<a href='lihat.php'>lihat hasil selengkapnya</a>"; 20
  • 21. } ?> </blockquote> </body> </html> File lihat.php <html> <head> <title>Urutan Langkah Penyelesaian</title> <style type="text/css"> .indice { font-size: 9px; vertical-align: sub;} </style> </head> <body> <blockquote> <h1 align="center">.:: Urutan Langkah Penyelesaian ::.</h1> <hr> <?php $fp = fopen("data.txt", "r") or die("<h2><font color='red'>Tidak ada penyelesaian yang dapat ditampilkan.</font></h2>"); $n = trim(fgets($fp, 1024)); $m = trim(fgets($fp, 1024)); $color1 = 'yellow'; $color2 = 'lightgreen'; while (!feof($fp)) { $p = trim(fgets($fp, 1024)); if ($p == 1) echo "<h2>State awal dari matrix yang akan diproses</h2>"; else { $row = (int) trim(fgets($fp, 1024)) + 1; if ($p == 5) { echo "<h2>Menurunkan baris ke-$row ke baris paling bawah.</h2>"; } else { $pivot = trim(fgets($fp, 1024)); if ($p == 2) { $pivot += 1; echo "<h2>Baris ke-$row ditukar dengan baris ke-$pivot</h2>"; } else if ($p == 3) { echo "<h2>Baris ke-$row dikalikan dengan "; if ($pivot < 0) echo "-"; $pivot = abs($pivot); if ($pivot == 1) echo "1"; else echo "1/$pivot"; echo "</h2>"; } 21
  • 22. else if ($p == 4) { $row2 = (int) trim(fgets($fp, 1024)) + 1; echo "<h2>Menambah baris ke-$row dengan $pivot kali baris ke-$row2</h2>"; } else break; } } echo "<center>"; echo "<table bgcolor='lightblue' border='1' cellpadding='10'>"; echo "<tr>"; for ($j=0; $j<$n; $j++) { $k = $j + 1; echo "<th><center><b>x<span class=indice>$k</span></b></center></th>"; } echo "<th><center><b>=</b></center></th>"; echo "</tr>"; for ($i=0; $i<$m; $i++) { if ($p == 2) { if ($i+1 == $row) echo "<tr bgcolor=$color1>"; else if ($i+1 == $pivot) echo "<tr bgcolor=$color2>"; } else if ($p == 3) { if ($i+1 == $row) echo "<tr bgcolor=$color1>"; } else if ($p == 4) { if ($i+1 == $row) echo "<tr bgcolor=$color1>"; else if ($i+1 == $row2) echo "<tr bgcolor=$color2>"; } else if ($p == 5) { if ($i == $m-1) echo "<tr bgcolor=$color1>"; } else echo "<tr>"; for ($j=0; $j<=$n; $j++) { $st = trim(fgets($fp, 1024)); echo "<td><center>$st</center></td>"; } echo "</tr>"; } echo "</table>"; echo "<img src='img/down-arrow.gif'>"; echo "</center>"; } echo "<br><center><img src='img/end-sign.jpg'></center>"; fclose($fp); ?> <hr> <center> 22
  • 23. <input type=button value="Back" onClick="history.go(-1)"> </center> </blockquote> </body> </html> 23