Pascal - Program Olah Matrik

Program ini adalah program sederhana yang digunakan untuk operasi matriks sederhana dengan ordo 2 x 2. Program ini dibuat untuk membantu yang ingin mempermudah untuk menghitung baik itu penjumlahan matriks, pengurangan matriks, perkalian matriks, dan juga transpose matriks yang tentu saja yang ber ordo 2 x 2.

Ada yang ingin program untuk menghitung olah matriks lebih dari 2 x 2 ? Anda kreatif ? Silakan copy saja program di bawah ini dan silahkan dikembangkan sendiri. ^_^ Semoga program ini ada manfaatnya.

Semua saran dan kritik tentang program sederhana ini juga masih saya tunggu. Mohon bila ada yang mempunyai cara yang lebih baik, lebih sederhana atau lebih lengkap untuk comment di sini. ^_^

program matrik;
uses crt;
var
  a    : array [1..2,1..2] of integer;
  b    : array [1..2,1..2] of integer;
  i,j  : integer;
  p    : char;
  nama : string[5];

procedure tambah;
begin
  gotoxy(7,12);write(a[1,1]:3,'  ',a[1,2]:3);
  gotoxy(18,12);write(b[1,1]:3,'  ',b[1,2]:3);
  gotoxy(31,12);writeln(a[1,1]+b[1,1]:3,'  ',a[1,2]+b[1,2]:3);
  gotoxy(17,13);write('+');gotoxy(29,13);writeln('=');
  gotoxy(7,14);write(a[2,1]:3,'  ',a[2,2]:3);
  gotoxy(18,14);write(b[2,1]:3,'  ',b[2,2]:3);
  gotoxy(31,14);writeln(a[2,1]+b[2,1]:3,'  ',a[2,2]+b[2,2]:3);
  gotoxy(10,22);write('Penjumlahan dari Matriks ',nama:5);
  readln;
end;

procedure kurang;
begin
  gotoxy(7,12);write(a[1,1]:3,'  ',a[1,2]:3);
  gotoxy(18,12);write(b[1,1]:3,'  ',b[1,2]:3);
  gotoxy(31,12);writeln(a[1,1]-b[1,1]:3,'  ',a[1,2]-b[1,2]:3);
  gotoxy(17,13);write('-');gotoxy(29,13);writeln('=');
  gotoxy(7,14);write(a[2,1]:3,'  ',a[2,2]:3);
  gotoxy(18,14);write(b[2,1]:3,'  ',b[2,2]:3);
  gotoxy(31,14);writeln(a[2,1]-b[2,1]:3,'  ',a[2,2]-b[2,2]:3);
  gotoxy(10,22);write('Pengurangan dari Matriks ',nama:5);
  readln;
end;

procedure trans;
begin
  gotoxy(7,12);writeln('Matriks Pertama');gotoxy(30,12);writeln('Matriks Kedua');
  gotoxy(7,14);writeln(a[1,1]:2,'  ',a[1,2]:2,'    ',a[1,1]:2,'  ',a[2,1]:2);
  gotoxy(30,14);writeln(b[1,1]:2,'  ',b[1,2]:2,'    ',b[1,1]:2,'  ',b[2,1]:2);
  gotoxy(15,15);writeln('=');gotoxy(38,15);writeln('=');
  gotoxy(7,16);writeln(a[2,1]:2,'  ',a[2,2]:2,'    ',a[1,2]:2,'  ',a[2,2]:2);
  gotoxy(30,16);writeln(b[2,1]:2,'  ',b[2,2]:2,'    ',b[1,2]:2,'  ',b[2,2]:2);
  gotoxy(10,22);write('Transpose dari Matriks ',nama:5);
  readln;
end;

procedure kali;
begin
  gotoxy(7,12);write(a[1,1]:3,'  ',a[1,2]:3);
  gotoxy(18,12);write(b[1,1]:3,'  ',b[1,2]:3);
  gotoxy(31,12);write((a[1,1]*b[1,1])+(a[1,2]*b[2,1]):3,'  ',(a[1,1]*b[1,2])+(a[1,2]*b[2,2]):3);
  gotoxy(17,13);write('x');gotoxy(29,13);writeln('=');
  gotoxy(7,14);write(a[2,1]:3,'  ',a[2,2]:3);
  gotoxy(18,14);write(b[2,1]:3,'  ',b[2,2]:3);
  gotoxy(31,14);writeln((a[2,1]*b[1,1])+(a[2,2]*b[2,1]):3,'  ',(a[2,1]*b[1,2])+(a[2,2]*b[2,2]):3);
  gotoxy(10,22);write('Perkalian dari Matriks ',nama:5);
  readln;
end;

procedure masuk;
begin
  gotoxy(7,22);write('Menginput Matriks');
  gotoxy(7,12);writeln('Masukkan Matriks Pertama');
  for i:=1 to 2 do
    begin
    for j:=1 to 2 do
      begin
      gotoxy(7,14);write('Baris ke ',i,' Kolom ke ',j,' : ');
      readln(a[i,j]);
      end;
    end;
  gotoxy(7,16);writeln('Masukkan Matriks Kedua');
  for i:=1 to 2 do
    begin
    for j:=1 to 2 do
      begin
      gotoxy(7,18);write('Baris ke ',i,' Kolom ke ',j,' : ');
      readln(b[i,j]);
      end;
    end;
end;

procedure tampil;
begin
  gotoxy(7,12);writeln('Matriks Pertama');gotoxy(25,12);writeln('Matriks Kedua');
  gotoxy(7,15);writeln(a[1,1]:3,'  ',a[1,2]:3);
  gotoxy(25,15);writeln(b[1,1]:3,'  ',b[1,2]:3);
  gotoxy(7,17);writeln(a[2,1]:3,'  ',a[2,2]:3);
  gotoxy(25,17);writeln(b[2,1]:3,'  ',b[2,2]:3);
  gotoxy(7,22);writeln('Matriks yang telah ',nama,' inputkan.');
  readln;
end;

Procedure tabel;
begin
  clrscr;
    gotoxy(7,5); writeln('Selamat datang, ',nama:5);
    gotoxy(5,6); writeln('ÉÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍ»');
    gotoxy(5,7); writeln('º        PROGRAM OPERASI MATRIKS           º');
    gotoxy(5,8); writeln('º             OLEH AGUSTONO                º');
    gotoxy(5,9); writeln('º      STMIK DUTA BANGSA SURAKARTA         º');
    gotoxy(5,10);writeln('ÌÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍ͹');
    gotoxy(5,11);writeln('º                                          º');
    gotoxy(5,12);writeln('º                                          º');
    gotoxy(5,13);writeln('º                                          º');
    gotoxy(5,14);writeln('º                                          º');
    gotoxy(5,15);writeln('º                                          º');
    gotoxy(5,16);writeln('º                                          º');
    gotoxy(5,17);writeln('º                                          º');
    gotoxy(5,18);writeln('º                                          º');
    gotoxy(5,19);writeln('º                                          º');
    gotoxy(5,20);writeln('º                                          º');
    gotoxy(5,21);writeln('ÌÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍ͹');
    gotoxy(5,22);writeln('º                                          º');
    gotoxy(5,23);writeln('ÈÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍͼ');
end;

begin
  clrscr;
  gotoxy(5,5);writeln('ÉÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍ»');
  gotoxy(5,6);writeln('º                                          º');
  gotoxy(5,7);writeln('º                                          º');
  gotoxy(5,8);writeln('º                                          º');
  gotoxy(5,9);writeln('ÈÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍͼ');
  gotoxy(10,7);write('Masukkan nama anda : ');readln(nama);
  repeat
    tabel;
    gotoxy(7,12);writeln('1. Input bilangan Matriks');
    gotoxy(7,13);writeln('2. Penjumlahan Matriks');
    gotoxy(7,14);writeln('3. Pengurangan Matriks');
    gotoxy(7,15);writeln('4. Transpose Matriks');
    gotoxy(7,16);writeln('5. Perkalian Matriks');
    gotoxy(7,17);writeln('6. Keluar');
    gotoxy(7,18);writeln;
    gotoxy(7,22);write  ('Pilihan anda : ');readln(p);
    if p='1' then begin tabel; masuk; tabel; tampil end;
    if p='2' then begin tabel; tambah end;
    if p='3' then begin tabel; kurang end;
    if p='4' then begin tabel; trans end;
    if p='5' then begin tabel; kali end;
  until p='6';
end.

Gustono Sugastian

Phasellus facilisis convallis metus, ut imperdiet augue auctor nec. Duis at velit id augue lobortis porta. Sed varius, enim accumsan aliquam tincidunt, tortor urna vulputate quam, eget finibus urna est in augue.

Tidak ada komentar:

Posting Komentar

Kasih komentar yah friends....