Sabtu, 24 Maret 2012

kombinasi faktorial

Program KOMBINASI;
uses wincrt;
var f1,f2,f3:longint;
n,r,nr:integer;
c: real;
Procedure fact( n:integer; var f:longint);
var i:integer;
begin
f:=1;
for i:=1 to n do
f:= f * i;
end;
Begin
gotoxy(33,3);
writeln('samsuri');
gotoxy(30,4);
writeln('rCn = n!/(r!(n-r)!)');
gotoxy(20,5);
writeln('Nilai r harus lebih kecil/sama dengan n');
gotoxy(20,6);
writeln;gotoxy(19,7);
writeln('-------------------------------------------');
write;gotoxy(28,8);
write('[1.Masukkan nilai n :',' ');readln(n);
writeln;gotoxy(28,9);
write('[2.Masukkan nilai r :',' ');readln(r);
fact(n,f1);
fact(r,f2);
nr:=(n-r);
fact(nr,f3);
c:= f1/(f2*f3);
gotoxy(19,10);
writeln('--------------------------------------------');
gotoxy(30,11);
write('Hasilnya :',' ',c:2:0);
readln;
end.

Sabtu, 10 Maret 2012

tugas program kembalian


program kembalian;
uses wincrt;
var
a,b:longint;
j,c,d,e,f,g,h,i,k:longint;
begin
writeln('---------------samsuri----------------+');
writeln('Masukkan Nilai Uang');readln(a);
writeln('+---------------------------------+');
writeln('Masukkan Nilai Harga Barang');readln(b);
writeln('+---------------------------------+');
j:=a-b;
writeln('kembalian=',j);
writeln('rinciannya adalah sebagai berikut:!!!!');
c:=j div 50000;
d:=(j mod 50000)div 10000;
e:=(j mod 10000)div 5000;
f:=(j mod 5000)div 2000;
g:=(j mod 2000)div 1000;
h:=(j mod 1000)div 500;
i:=(j mod 500)div 200;
k:=(j mod 200)div 100;
writeln('',c,'.LEMBAR=50000');
writeln('',d,'.LEMBAR=10000');
writeln('',e,'.LEMBAR=5000');
writeln('',f,'.LEMBAR=2000');
writeln('',g,'.LEMBAR=1000');
writeln('',h,'.LEMBAR=500');
writeln('',i,'.LEMBAR=200');
writeln('',k,'.LEMBAR=100');
writeln;
writeln('TERIMAKASIH BANYAK');
end.

Sabtu, 03 Maret 2012

TUGAS 2D NOMER 2


program identitas;
uses
wincrt;
var
c:array[1..10,1..10] of integer;
x,y:integer;
begin
for x:=1 to 5 do
begin
for y:=1 to 5 do
begin
c[x,y]:=0;
if x+y=6 then c[x,y]:=1;
write(c[x,y]:4);
end;
writeln
end;
end.

TUGAS 2D nomer 1


Program Perkalian_Matriks;
uses wincrt;
var
a,f,k:array[1..10,1..10] of integer;
b,c,i,j,l,z:integer;
m,n,d,e,g,h:byte;
begin
writeln('nama: samsuri');
write('banyaknya baris matriks pertama: '); readln(b);
write('banyaknya kolom matriks pertama: '); readln(c);
for d:= 1 to b do
begin
for e:= 1 to c do
begin
write('masukkan baris ke-',d,' kolom ke-',e,': '); readln(a[d,e]);
end;
end;
for d:= 1 to b do
begin
for e:= 1 to c do
begin
write(a[d,e]:7);
end;writeln;
end;writeln;
write('berapa banyak baris matriks kedua: '); readln(g);
write('berapa banyak kolom matriks kedua: '); readln(h);
for i:= 1 to g do
begin
for j:=1 to h do
begin
write('masukkan baris ke-',i,' kolom ke ',j,': '); readln(f[i,j]);
end;
end;
for i:= 1 to g do
begin
for j:= 1 to h do
begin
write(f[i,j]:7);
end;writeln;
end;writeln;
if c=i then begin
writeln('matrik1*matrik2:');writeln;
for d:= 1 to b do
begin
for l:=1 to h do
begin
for e:= 1 to c do
begin
for j:= l to h do
begin
for i:=e to g do
begin
k[d,j]:=k[d,j]+a[d,e]*f[i,j];
if c=e then
begin
write(k[d,j]:7);
end;
i:=g;
end;
j:=h;
end;
end;
end;
writeln;
end;
end else
begin
writeln('Maaf !!!perkalian tidak dapat dilakukan,');
writeln('ulangi lagi,karena matrik tidak memiliki ordo yang sama');
end;
readln end.