Program Matriks: Nama: Charly Sianturi NIM: 0907055047
Program Matriks: Nama: Charly Sianturi NIM: 0907055047
NIM : 0907055047
PROGRAM MATRIKS
program matrik;
uses wincrt;
type Larik = array [1..25,1..25] of real;
var Pilihan : byte;
I,J,K,L,N,M : byte;
A,B,C : Larik;
pilih : integer;
Procedure Data;
begin
Clrscr;
Procedure lihat;
Begin
Clrscr;
Write('baris matrik pertama = ');readln(M);
Write('kolom matrik pertama / baris matrik kedua = ');readln(N);
Write('kolom matrik kedua = ');readln(L);
Writeln;
For I:=1 to M do
Begin
For J:=1 to N do
Begin
Write('nilai[',I,',',J,']=');Readln(A[I,J]);
End;
Writeln;
End;
ClrScr;
Writeln('Hasil Matrik:');
Writeln;
For I:=1 to M do
Begin
For J:= 1 To L do Write(A[I,J]:9:0);
Writeln;
End;
readln;
End;
Procedure tambah;
Begin
Clrscr;
Write('baris matrik pertama = ');readln(M);
Write('kolom matrik pertama / baris matrik kedua = ');readln(N);
Write('kolom matrik kedua = ');readln(L);
Writeln;
Writeln('matrik yang pertama:');
For I:=1 to M do
Begin
For J:=1 to N do
Begin
Write('nilai[',I,',',J,']= ');Readln(A[I,J]);
End;
Writeln;
End;
Writeln('matrik yang kedua:');
For I:=1 to N do
Begin
For J:=1 to L do
Begin
Write('nilai[',I,',',J,']= ');Readln(B[I,J]);
End;
Writeln;
End;
For I:= 1 to M do
Begin
For J := 1 To N do
Begin
C[I,J] := 0;
For K := 1 To L do
C[I,J] := A[I,J]+B[I,J]
End;
End;
ClrScr;
Writeln('Hasil dari penjumlahan matrik=');
Writeln;
For I:=1 to M do
Begin
For J:= 1 To L do Write(C[I,J]:9:0);
Writeln;
End;
readln;
End;
Procedure kurang;
Begin
Clrscr;
Write('baris matrik pertama = ');readln(M);
Write('kolom matrik pertama / baris matrik kedua = ');readln(N);
Write('kolom matrik kedua = ');readln(L);
Writeln;
Writeln('matrik yang pertama:');
For I:=1 to M do
Begin
For J:=1 to N do
Begin
Write('nilai[',I,',',J,']= ');Readln(A[I,J]);
End;
Writeln;
End;
Writeln('matrik yang kedua:');
For I:=1 to N do
Begin
For J:=1 to L do
Begin
Write('nilai[',I,',',J,']= ');Readln(B[I,J]);
End;
Writeln;
End;
For I:= 1 to M do
Begin
For J := 1 To N do
Begin
C[I,J] := 0;
For K := 1 To L do
C[I,J] := A[I,J]-B[I,J]
End;
End;
ClrScr;
Writeln('Hasil dari pengurangan matrik= ');
Writeln;
For I:=1 to M do
Begin
For J:= 1 To L do Write(C[I,J]:9:0);
Writeln;
End;
readln;
End;
Procedure kali;
Begin
Clrscr;
Write('baris matrik pertama = ');readln(M);
Write('kolom matrik pertama / baris matrik kedua = ');readln(N);
Write('kolom matrik kedua = ');readln(L);
Writeln;
Writeln('matrik yang pertama:');
For I:=1 to M do
Begin
For J:=1 to N do
Begin
Write('nilai[',I,',',J,']= ');Readln(A[I,J]);
End;
Writeln;
End;
Writeln('matrik yang kedua:');
For I:=1 to N do
Begin
For J:=1 to L do
Begin
Write('nilai[',I,',',J,']= ');readln(B[I,J]);
End;
Writeln;
End;
For I:= 1 to M do
Begin
For J := 1 To L do
Begin
C[I,J] := 0;
For K := 1 To L do
C[I,J] := C[I,J]+A[I,K]*B[K,J]
End;
End;
ClrScr;
Writeln('Hasil dari perkalian matrik = ');
Writeln;
For I:=1 to M do
Begin
For J:= 1 To L do Write(C[I,J]:9:0);
Writeln;
End;
readln;
End;
Procedure bagi;
Begin
Clrscr;
Write('baris matrik pertama = ');readln(M);
Write('kolom matrik pertama / baris matrik kedua = ');readln(N);
Write('kolom matrik kedua = ');readln(L);
Writeln;
Writeln('matrik yang pertama:');
For I:=1 to M do
Begin
For J:=1 to N do
Begin
Write('nilai[',I,',',J,']= ');Readln(A[I,J]);
End;
Writeln;
End;
Writeln('matrik yang kedua:');
For I:=1 to N do
Begin
For J:=1 to L do
Begin
Write('nilai[',I,',',J,']= ');Readln(B[I,J]);
End;
Writeln;
End;
For I:= 1 to M do
Begin
For J := 1 To N do
Begin
C[I,J] := 0;
For K := 1 To L do
C[I,J] := A[I,J]/B[I,J]
End;
End;
ClrScr;
Writeln('Hasil dari pembagian matrik = ');
Writeln;
For I:=1 to M do
Begin
For J:= 1 To L do Write(C[I,J]:9:0);
Writeln;
End;
readln;
End;
Begin
Repeat
Clrscr;
writeln('Menu Utama');
writeln;
Writeln('1. Menghitung Penjumlahan Matrik');
writeln('2. Menghitung Pengurangan Matrik');
Writeln('3. Menghitung Perkalian Matrik');
writeln('4. Menghitung Pembagian Matrik');
Writeln;
Write('masukkan pilihan : '); readln(pilih);
Case pilih of
1 : tambah;
2 : kurang;
3 : kali;
4 : bagi;
End;
Until pilih = 5;
End.