Minggu, 15 September 2013

Pemrograman Pascal



PROGRAM ALGORITMA FUNGSI DALAM PASCAL + CONTOH PROGRAM

Setelah sebelumnya menulis tentang PROGRAM ALGORITMA PROSEDUR DALAM PASCAL+ CONTOH PROGRAM dan PENGANTAR PEMPROGRAMAN MODULAR PASCAL & C+ maka kali ini saya akan mencoba menulis Function (Fungsi) secara garis besar sama dengan procedure yang membedakannya adalah nama fungsi harus dideklarasikan dengan type datanya. Fungsi adalah suatu bagian program yang mengerjakan satu tugas dan hasilnya biasanya hanya satu. Fungsi juga menerima parameter-paramter seperti procedure yaitu Parameter Nilai dan Parameter Variabel. Selain itu fungsi juga diperbolehkan memiliki deklarasi lokal tersendiri. Dan Cara memanggil fungsi adalah dengan menuliskan nama fungsi beserta parameter-parameter yang diperlukan.
Bentuk umum pendefinisian fungsi:
Function NamaFungsi(Parameter-Parameter) : Tipe Fungsi;
Tipe Lokal
Konstanta Lokal
Variabel Lokal
Sub Program Lokal (Fungsi/Prosedur)
Begin
    .................
End;
Contoh program:
Function Hitung (X, Y, Z : Byte): Byte;
Begin
    Z : = X + Y;
    Writeln (‘Nilai X = ‘, X);
    Writeln (‘Nilai Y = ‘, Y);
    Writeln (‘Nilai Z = ‘, Z);
End;

Var
    A, B, C : Byte;
Begin
    A := 5; B:= 7; C:=3;
    Hitung (A, B, C);
    Writeln (‘Nilai A = ‘,A,’Nilai B = ‘,B,’Nilai C = ‘,C);
    Readln;
End.


Fungsi Rekursif
fungsi yang memanggil dirinya sendiri disebut sebagai prosedur rekursif. Pemanggilan terhadap dirinya sendiri akan tetap dilakukan Prosedur Cetak karena tidak ada pernyataan yang menghentikan pemanggilan. Pemanggilan ini akan terus berlangsung terus-menerus (continues call). Untuk mengatasi masalah ini maka perlu dibuat suatu pernyataan yang membatasi pemanggilan prosedur. Misalkan kode program  seperti berikut ini:
Var
I : Byte;
function Cetak : sting;
      Begin
         IF (I<=5) Then
         begin
            writeln('Respati');
            {Prosedur Memanggil Dirinya Sendiri}
            Cetak;
            I:=I+1;
          end;
 End;
{Program Utama}
Begin
I:=1;
 {Panggil Prosedur}
 Cetak;
End.

Sumber : MyBlogger


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.

Sumber : Wikipedia