Jangan berhenti berupaya ketika menemui kegagalan. Karena kegagalan adalah cara Tuhan mengajari kita tentang arti kesungguhan.

Kamis, 15 Desember 2011

SEJARAH PASCAL

Turbo Pascal adalah sebuah sistem pengembangan perangkat lunak yang terdiri atas kompiler dan lingkungan pengembangan terintegrasi (dalam bahasa inggris: Integrated Development Environment - IDE) atas bahasa pemrograman pascal untuk sistem operasi CP/MCP/M-86, dan MS-DOS, yang dikembangkan oleh Borland pada masa kepemimpinan Philippe Kahn. Nama Borland Pascal umumnya digunakan untuk paket perangkat lunak tingkat lanjut (dengan kepustakaan yang lebih banyak dan pustaka kode sumber standar) sementara versi yang lebih murah dan paling luas digunakan dinamakan sebagai Turbo Pascal. Nama Borland Pascal juga digunakan sebagai dialek spesifik Pascal buatan Borland.
Borland telah menembangkan tiga versi lama dari Turbo Pascal secara gratis disebabkan karena sejarahnya yang panjang khusus untuk versi 1.0, 3.02, dan 5.5 yang berjalan pada sistem operasi MS-DOS.
Versi 1 hingga versi 3

Versi pertama dari Turbo Pascal, yang kemudian disebut sebagai versi 1, memiliki unjuk kerja yang sangat cepat dibandingkan kompiler pascal untuk komputer mikro lainnya. Kompiler tersebut tersedia untuk sistem operasi CP/M, CP/M-86, dan MS-DOS, dan penggunaannya sangat luas pada masa itu. Versi Turbo Pascal untuk CP/M saat itu bisa digunakan pada komputer Apple II yang sangat populer jika digunakan dengan sebuah Z-80 SoftCard, produk perangkat keras pertama yang ditembangkan microsoft di tahun 1980.

Pada saat itu CP/M menggunakan format berkas ''executable'' yang sederhana dengan menggunakan ekstensi .COM; sistem operasi MS-DOS bisa menggunakan baik .COM (tidak kompatibel dengan format yang terdapat pada CP/M) maupun format .EXE. Turbo Pascal pada saat itu hanya mendukung kode biner berformat .COM, pada masa itu hal tersebut tidak menjadi suatu bentuk keterbatasan. Perangkat lunak Turbo Pascal itu sendiri merupakan sebuah berkas berekstensi .COM dan berukuran sekitar 28 kilobita, termasuk editor, kompiler, dan ''linker'', dan rutin-rutin pustaka. Efisiensii proses edit/kompilasi/jalankan lebih cepat dibandingkan dengan implementasi paskal pada kompiler lainnya disebabkan semua elemen yang terkait dalam pengembangan program diletakkan pada [[memori|memori komputer]] (RAM), dan karena kompilernya sendiri merupakan kompiler berjenis ''single-pass compiler'' yang ditulis dengan bahasa [[assembler]]. Unjuk kerja proses kompilasi sangat cepat dibandingkan dengan produk lain (bahkan dibandingkan dengan kompiler [[C (bahasa pemrograman)|C]] milik Borland sendiri).

Ketika pertama kali versi Turbo Pascal muncul pada tanggal 20 November 1983, jenis IDE yang digunakannya masih terbilang baru. Pada debutnya terhadap pasar perangkat lunak di [[Amerika Serikat|Amerika]], perangkat lunak tersebut dibandrol dengan harga USD$49.99. Kualitas kompiler pascal terintegrasi terdapat dalam Turbo Pascal sangat baik dibandingkan kompetitor lain dan atas fitur-fitur tersebut ditawarkan dengan harga yang terjangkau.

Versi 2 dan 3 merupakan pengembangan lebih lanjut dari versi sebelumnya, mampu berkerja dalam memori, dan menghasilkan berkas biner berekstensi .COM/.CMD. Dukungan atas sistem operasi CP/M dan CP/M-86 dihentikan setelah versi 3.

Rabu, 14 Desember 2011

MATERI PASCAL

program deret angka;
uses wincrt;
var  i,n:integer;
begin
read(n);
if n=1 then write (1);
if n>1 then
begin
  for i:=n downto 2 do
  write (2*i-1,'+');
  write (1,'=');
  write (sqr(n));
  end;
  end.

MATERI PASCAL

program  angka;
uses wincrt;
var  i,n:integer;
begin
read(n);
if n=1 then write (1);
if n>1 then
begin
  for i:=n downto 2 do
  write (2*i-1,'+');
  write (1,'=');
  write (sqr(n));
  end;
  end.

Senin, 12 Desember 2011

Materi Pascal

program dua_dimensi;
uses wincrt;
var x: array [1..10,1..10] of real;
p,l,i,j:integer;
begin
write('Panjang = ');readln(p);
write('Lebar = ');readln(l);
writeln('Masukkan isi matriks!');
for i:=1 to l do
for j:=1 to p do
read(x[i,j]);
writeln;
writeln('Bentuk matriksnya');
for i:=1 to l do
begin
for j:=1 to p do
write(x[i,j]:3:0,' ');
writeln;
end;
writeln('Bentuk matriks transpose nya');
for j:=1 to p do
begin
for i:=1 to l do
write(x[i,j]:3:0,' ');
writeln;
end;
end.

Sabtu, 10 Desember 2011

MATERI PASCAL

program segitiga_pascal;
uses wincrt;
var input,i,j:word; isi:array[0..20,0..21] of word;
begin
writeln('Masukkan berapa tingkat segitiga pascal !');
readln(input);
isi[0,1]:=1;
for i:=1 to input do
begin
for j:=1 to i+1 do
begin
isi[i,j]:=isi[i-1,j]+isi[i-1,j-1];
write(isi[i,j],' ');
end;
writeln;
end;end.

MATERI PASCAL

program bintang;
uses winCrt;
procedure gb (brs,kol:integer);
var i,j:integer;
begin
for i:=1 to brs do
begin
for j:=1 to kol do
begin
if ((i=1)or(i=brs)or(j=1)or(j=kol))then
write ('*')
else write(' ');
end;
writeln;
end;                   
end;
var x,y:integer;
begin                 
write('banyak baris= ');readln(y);
write('banyak kolom= ');readln(x);
writeln('bentuknya:');
gb(y,x);
end.

MATERI PASCAL

program matrik;
uses wincrt;
var a:array[1..10,1..10] of real;
    i,j,baris,kolom:integer;
begin
write('ukuran matrik mxn ');
readln(baris,kolom);
writeln('memasukkan elemen matrik');
writeln(' ');
for i:=1 to baris do
begin
writeln('baris ke-',i);
for j:=1 to kolom do 
read(a[i,j]);
writeln;
end;
writeln('hasil matrik');
for i:=1 to baris do
begin
for j:=1 to kolom do
write(a[i,j]:0:0,' ');
writeln;
end;
end.

MATERI PASCAL

program penjumlahan;
uses wincrt;
var i,a,n,hasil,f:integer;
begin
writeln('masukkan angka');readln(n);
a:=n;
for i:=n downto 2 do
begin
hasil:=n*n;
write ((n-1)+a,'+');
a:=a-2;
 end;
 begin
   if n=0 then write ('')
  else if(n<=1) then write ('1')
else write(1,'=',hasil);
end;
end.

MATERI PASCAL

program deret_angka;
uses wincrt;
var f,i,j,n,a:integer;
begin
readln(n);
for i:=n downto 2 do
begin
j:=i+i-1;
write (j,'+');
end;
begin
a:= n*n;
write (1,'=',a);
end;
writeln;
end.

MATERI PASCAL

program deret angka;
uses wincrt;
var  i,n:integer;
begin
read(n);
if n=1 then write (1);
if n>1 then
begin
  for i:=n downto 2 do
  write (2*i-1,'+');
  write (1,'=');
  write (sqr(n));
  end;
  end.

MATERI PASCAL

program deret angka;
uses wincrt;
var i,j,n:integer;
begin
readln(n);
for i:=1 to n do
begin
for j:=1 to i do
write (j);
writeln;
end;
end.

MATERI PASCAL MODUS

program susunan;
uses wincrt;
var
x:array [1..100] of real;
i,n:integer;
begin
write('masukkan n banyaknya angka');readln(n);
for i:=1 to n do
begin
write(i,'=');readln(x[i]);
end;
write('panggil data ke- ');readln(i);
write(x[i]);
end.

Jumat, 09 Desember 2011

MATERI PASCAL

program dua_dimensi;
uses wincrt;
var x: array [1..10,1..10] of real;
p,l,i,j:integer;
begin
write('Panjang = ');readln(p);
write('Lebar = ');readln(l);
writeln('Masukkan isi matriks!');
for i:=1 to l do
for j:=1 to p do
read(x[i,j]);
writeln;
writeln('Bentuk matriksnya');
for i:=1 to l do
begin
for j:=1 to p do
write(x[i,j]:3:0,' ');
writeln;
end;
writeln('Bentuk matriks transpose nya');
for j:=1 to p do
begin
for i:=1 to l do
write(x[i,j]:3:0,' ');
writeln;
end;
end.

MATERI PASCAL

program ex;
uses wincrt;
var sum:real; j,x:integer;
function fac (n:integer): integer ;
var  i: integer ;
begin
fac:=1;
for i:=1 to n do
fac:=fac(n-1)*i;
end;
function power (a,b:integer):integer;
begin
if b=1 then power:=a
else power:=a*power(a,b-1);
end;
begin
readln(x);
sum:=1;
for j:=1 to 10 do
begin
sum:=sum+power (x,j)/ fac (j);
end;
writeln (sum);
end.

MATERI PASCAL

program laurin ;
uses wincrt;
var
x,y:array[1..1000] of real;
i,j,n:longint;
a,sum,p:real;
begin
readln(n);
readln(a);
sum:=0;
for i:=1 to n do
begin
x[i]:=-1/i;
p:=1;
for j:=1 to i do
p:=p*a;
y[i]:=p;
sum:=sum+x[i]*y[i];end;
writeln('hasil= ',sum:0:5);
writeln('asli= ',ln(1-a):0:5);
writeln('error= ',ln(1-a)-sum:0:5);
end.

PENJUMLAHAN

program matrik_penjumlahan;
uses wincrt;
var a,b,c: array[1..10,1..10] of integer;
    i,j,k1,k2,b1,b2,sum,r:integer;

begin
write('Masukkan baris Matrik A = ');readln(b1);
write('Masukkan kolom Matrik A = ');readln(k1);
write('Masukkan baris Matrik B = ');readln(b2);
write('Masukkan kolom Matrik B = ');readln(k2);
for i:=1 to b1 do
for j:=1 to k1 do
readln(a[i,j]);
writeln;
for i:=1 to b2 do
for j:=1 to k2 do
readln(b[i,j]);
writeln;
writeln('Matrik A');
writeln('==================');
for i:=1 to b1 do
begin
for j:=1 to k1 do
write(a[i,j],' ');
writeln;
end;
writeln;
writeln('Matrik B');
writeln('===================');
for i:=1 to b2 do
begin
for j:=1 to k2 do
write(b[i,j],' ');
writeln;

end;
writeln;
writeln('Matrik A*B');
writeln('================');
for i:=1 to b1 do
begin
for j:=1 to k2 do
begin
sum:=0;
for r:=1 to k1 do
sum:=sum+a[i,r]*b[r,j];
c[i,j]:=sum;
write(c[i,j]:2,' ');
end;
writeln;
end;
end.