Kamis, 28 Juni 2012

Matriks


program gabungan;
uses crt;
type data = array[1..10,1..10] of integer;
var matrikI,matrikII : data;
baris,kolom,pil : integer;
procedure isimatrik;
var i,j : integer;
begin
     clrscr;
     writeln('Penentuan ORDO MATRIK I');
     write('Masukan banyak baris matrik I = ');readln(baris);

     write('Masukan banyak kolom matrik I = ');readln(kolom);
     for i:=1 to baris do
     for j:=1 to kolom do
     begin
          gotoxy(j*10,i*5);
          readln(matrikI[i,j]);
     end;
clrscr;
       writeln('Penentuan ORDO MATRIK II');
       write('Masukan banyak baris matrik II = ');readln(baris);
       write('Masukan banyak kolom matrik II = ');readln(kolom);
       for i:=1 to baris do
       for j:=1 to kolom do
       begin
            gotoxy(j*10,i*5);
            readln(matrikII[i,j]);
       end;
end;

procedure jumlahmatrik(m1,m2 : data);
var hasil : data;
i,j : integer;
begin
     for i:=1 to baris do
     for j:=1 to kolom do
begin
     hasil[i,j]:=m1[i,j]+m2[i,j];
end;
clrscr;
       writeln('Hasil Penjumlahan MATRIK');
       for i:=1 to baris do
       for j:=1 to kolom do
       begin
            gotoxy(j*10,i*5);
            write(hasil[i,j]);
       end;
       end;
procedure kalimatrik(m1,m2 : data);
var hasil : data;
i,j,z : integer;
begin
     for i:=1 to baris do
     for j:=1 to kolom do
     begin
          hasil[i,j]:=0;
     for z:=1 to baris do
          hasil[i,j]:=hasil[i,j]+matrikI[i,z]*matrikII[z,j];
     end;
clrscr;
       writeln('Hasil Perkalian MATRIK');
       for i:=1 to baris do
       for j:=1 to kolom do
       begin
           gotoxy(j*10,i*5);
           write(hasil[i,j]);
       end;
end;

var n,z,r,i,b:longint;
procedure faktorial(var a:longint);
var
x:longint;
begin
     x:=1;
     for i := a downto 1 do
     x:=x*i;
     a:=x;
end;

procedure kombinasi(var l:longint);
begin
     faktorial(z);
     b:=r*z;
     l:=n div b;
     writeln('Hasil Kombinasi = ',l);
end;

procedure proses;
begin
clrscr;
       writeln ('Program menentukan kombinasi');
       writeln ('====================================');
       write('Masukan Banyaknya data (n) : '); readln(n);
       b:=n;
       faktorial(n);
       write('Masukan banyaknya kombinasi (r): '); readln(r);
       z:=b-r;
end;
begin
     clrscr;
     gotoxy(22,2); writeln ('---------- Tugas Final Pemkom ---------------');
     gotoxy(22,3); writeln ('               Disusun Oleh :                ');
     gotoxy(22,4); writeln ('=============  Lasupriadi  ==============');
     gotoxy(22,5); writeln ('             "  F1A1 11 087  "               ');
     gotoxy(22,6); writeln ('---------------------------------------------');
                   writeln ;

     gotoxy(30,8); writeln(' M E N U');
                   writeln;
     gotoxy(25,9); writeln('1. Penjumlahan Matrik');
     gotoxy(25,10); writeln('2. Perkalian Matrik');
     gotoxy(25,11); writeln('3. Kombinasi');
     gotoxy(25,12); write('Pilihan Anda = ');readln(pil);
   

clrscr;
case pil of
     1 : begin
     clrscr;
     isimatrik;
     jumlahmatrik(matrikI,matrikII);
     end;
     2 : begin
     clrscr;
     isimatrik;
     kalimatrik(matrikI,matrikII);
     end;
     3 : begin
     clrscr;
     proses;
     faktorial(r);
     kombinasi(r);
     end;
end;
readln;
end.

Tidak ada komentar:

Posting Komentar