Monday, 19 November 2012

Pascal dan Contoh Grafik

Pascal adalah bahasa pemrograman yang pertama kali di buat oleh Profesor Niklaus Wirth, seorang anggota International Federation of Information Processing (IFIP) pada tahun 1971. Dengan mengambil nama dari matematikawan Perancis, Blaise Pascal, yang pertama kali menciptakan mesin penghitung, Profesor Niklaus Wirth membuat bahasa Pascal ini sebagai alat bantu untuk mengajarkan konsep pemrograman komputer kepada mahasiswanya. Selain itu, Profesor Niklaus Wirth membuat Pascal juga untuk melengkapi kekurangan-kekurangan bahasa pemrograman yang ada pada saat itu.

Kelebihan dari bahasa pemrograman Pascal adalah:

  • Tipe Data Standar, tipe-tipe data standar yang telah tersedia pada kebanyakan bahasa pemrograman. Pascal memiliki tipe data standar: boolean, integer, real, char, string,
  • User defined Data Types, programmer dapat membuat tipe data lain yang diturunkan dari tipe data standar.
  • Strongly-typed, programmer harus menentukan tipe data dari suatu variabel, dan variabel tersebut tidak dapat dipergunakan untuk menyimpan tipe data selain dari format yang ditentukan.
  • Terstruktur, memiliki sintaks yang memungkinkan penulisan program dipecah menjadi fungsi-fungsi kecil (procedure dan function) yang dapat dipergunakan berulang-ulang.
  • Sederhana dan Ekspresif, memiliki struktur yang sederhana dan sangat mendekati bahasa manusia (bahasa Inggris) sehingga mudah dipelajari dan dipahami.

Bahasa PASCAL juga merupakan bahasa yang digunakan sebagai standar bahasa pemrograman bagi tim nasional Olimpiade Komputer Indonesia (TOKI). Selain itu, Bahasa PASCAL masih digunakan dalam IOI (International Olympiad in Informatics).

Teknik pemrograman adalah cara mengubah suatu algoritma menjadi program yang sebenarnya dengan bahasa pemrograman tertentu. Konsep dan teknik pemrograman adalah dasar dari pemrograman komputer, dengan menguasai kedua hal tersebut maka mempelajari pemrograman menjadi lebih mudah.

Berikut salah satu contoh program grafik pada pascal :

program wave_string;

uses crt;

var i,nmax:integer;

y:array[1..100,1..100]of real;

c,dx,r2,dt:real;

begin

clrscr;

write(‘Masukkan nilai maksimumnya(nmax) : ‘);

readln(nmax);

write(‘Masukkan perubahan spasinya : ‘);

readln(dx);

write(‘Masukkan kecepatan gelombangnya : ‘);

readln(c);

{inisialisasi}

for i:=1 to nmax do

begin

y[i,1]:=0;y[i,2]:=0;y[i,3]:=0;

end;

dt:=dx/c;

for i:=2 to (nmax-1) do

begin

y[i,2]:=exp(-1000*sqr(i*dx-0.3*nmax*dx));

y[i,1]:=exp(-1000*sqr(i*dx-0.3*nmax*dx));

end;

{propagasi}

writeln(‘ y1 | y2 |

y3 ‘);

r2:=sqr(dt*c/dx);

for i:=1 to (nmax-1) do

begin

y[i,3]:=r2*(y[i+1,2]+y[i-1,2]+2*(1.0-r2)*y[i,2]-y[i,1]);

y[i,1]:=y[i,2];

y[i,2]:=y[i,3];

write(y[i,1]);

write(‘ ‘,y[i,2]);

writeln(‘ ‘,y[i,3]);

end;

readln;

end.

0 komentar: