Selasa, 27 Desember 2011

Pengantar Turbo Pascal

Untuk mengetahui apa itu pascal, struktur pascal serta tipe-tipe data dalam pascal, baca selengkapnya di sini :D

A. Program Turbo Pascal

Pascal adalah salah satu bahasa pemrograman tingkat tinggi (high level language). Nama Pascal diambil dari nama seorang ahli matematika dan filosofi terkenal abad 17 dari Perancis, yaitu Blaise Pascal. Bahasa ini dirancang oleh Prof. Niklaus Wirth dari Technical University di Zurich, Switzerland. Turbo Pascal adalah salah satu versi Pascal yang paling popular dan banyak digunakan saat ini.

Menu Bar
Adalah fasilitas yang ada pada setiap aplikasi window. Ada delapan Menu Utama yang dapat dipanggil dengan menggunakan tombol Alt+[Huruf pertama dari menu]. Misal ingin memanggil menu File, tekan tombol Alt+F.
Toolbar
Adalah kumpulan tombol-tombol bergambar yang berfungsi untuk memberikan perintah pada komputer
Editor
Berfungsi untuk menulis dan menyunting program.

B. Struktur Bahasa Pascal

Program dalam bahasa pascal, ditulis dengan struktur sebagai berikut:

Program <Nama> (<Daftar parameter>)
USES <deklarasi unit>
LABEL <deklarasi label>
CONST <deklarasi konstanta>
TYPE <deklarasi tipe>
VAR <deklarasi variabel> <deklarasi fungsi dan prosedur>
BEGIN <Pernyataan>
END.

C. Tipe Data dalam Pascal

Ada beberapa macam tipe data dalam Pascal, diantaranya adalah :
  1. Integer, adalah susunan angka yang tidak mengandung koma. Disebut juga bilangan bulat. Nilainya terletak antara -32768 s/d 32767.
  2. Byte, adalah merupakan bagian dari integer. Nilainya terletak antara 0 s/d 255.
  3. Real, merupakan tipe bilangan yang mengandung pecahan. Nilainya terletak antara 1E-38 s/d 1E+38.
  4. Boolean, berhubungan dengan dua keadaan logika. Dapat bernilai True atau False.
  5. Char, merupakan tipe yang hanya terdiri dari sebuah simbol karakter ASCII.
  6. String, merupakan tipe yang terdiri dari sejumlah karakter.

Read More......

Pernyataan input dan output dalam turbo pascal adalah sebagai berikut:

A. Pernyataan Write dan Writeln

Bentuk pernyataan WRITE dan WRITELN:

WRITE (<argumen >);
Atau
WRITELN (<argumen>);

Jika pernyataan WRITELN yang digunakan, setelah menampilkan hasil maka kursor ganti baris. Sedangkan jika pernyataan WRITE yang digunakan, setelah menampilkan hasil maka kursor tidak ganti baris. Dalam format penulisan WRITE dan WRITELN jika yang akan ditampilkan adalah suatu kata/kalimat yang tidak disimpan dalam suatu variabel, maka kata/kalimat tersebut harus ditulis diantara tanda petik tunggal (’).

B. Pernyataan Read dan Readln

Bentuk pernyataan READ READLN:

READ (<variabel-1, variabel-2,.., variabel-n>) ;
Atau
READLN (<variabel-1, variabel-2,.., variabel-n>) ;
Tiap-tiap data yang dimasukkan harus sesuai dengan tipe variabelnya. Setelah data dimasukkan, tombol ENTER ditekan. Perbedaan antara READ dan READLN adalah pada sifat menangani kelebihan data yang diinputkan
  • READ : Jika ada kelebihan data, pernyataan ini tidak akan membuangnya. Kelebihan data tersebut akan diberikan pada pernyataan READ atau READLN berikutnya.
  • READLN : Jika ada kelebihan data, pernyataan ini akan membuangnya. Kelebihan data tersebut tidak akan diberikan pada pernyataan READ atau READLN berikutnya.

Read More......

Pernyataan bersyarat adalah pernyataan yang akan menjalankan pernyataan yang mengikutinya sesuai dengan syarat tertertentu. Ada 2 buah pernyataan bersyarat, yaitu IF dan CASE.


A. Pernyataan IF

Bentuk pernyataan IF:

IF <syarat logika> THEN <Pernyataan>;
IF <syarat logika> THEN <Pernyataan-1> ELSE <Pernyataan-2> ;
Jika syarat logika bernilai Benar maka yang akan dijalankan adalah pernyataan yang mengikuti THEN, dan sebaliknya jika syarat logika bernilai Salah maka yang akan dijalankan adalah pernyataan yang mengikuti ELSE. Jika pernyataan yang mengikuti THEN atau ELSE lebih dari satu maka harus diawali oleh Begin dan diakhiri oleh End. Statement End sebelum ELSE tidak boleh ada tanda titik koma (;).

IF <syarat logika> THEN begin
<Pernyataan-11>;
<Pernyataan-12>;
.
.
<Pernyataan-1n>;
end;
ELSE begin
<Pernyataan-21>;
<Pernyataan-22>;
.
.
<Pernyataan-2m>;
end;
end.

B. Pernyataan CASE

Bentuk pernyataan CASE:
CASE <variabel-pemilih> OF
<daftar-label-1> : <Pernyataan-1>;
<daftar-label-2> : <Pernyataan-2>;
.
.
<daftar-label-n> : <Pernyataan-n>;
ELSE <Pernyataan-lain> ;
End;
End.
Variabel pemilih tidak boleh bertipe real. Pernyataan yang akan dijalankan sesuai dengan daftar-label yang memuat nilai variabel pemilih. Jika nilai dari variabel pemilih tidak ada dalam semua daftar label, maka pernyataan yang akan dijalankan adalah pernyataan yang mengikuti ELSE. ELSE dalam pernyataan CASE boleh tidak ada. Sama halnya dengan pernyataan IF, Jika pernyataan yang mengikuti daftar-label lebih dari satu maka harus diawali oleh Begin dan diakhiri oleh End.

Read More......

Pernyataan perulangan adalah pernyataan yang akan menjalankan pernyataan yang mengikutinya secara berulang sampai syarat tertertentu terpenuhi. Ada 3 buah pernyataan perulangan, yaitu FOR, WHILE dan REPEAT.


A. Statement For
Statement FOR adalah suatu perintah yang berfungsi untuk melakukan proses pengulangan, dimana jumlah pengulangannya sudah diketahui. Bentuk dari statement FOR adalah:

FOR {Variabel} := {Nilai Awal} TO {Nilai Akhir} DO
BEGIN
{Statement 1}
{Statement 2}
....
{Statement n}
END;
FOR {Variabel} := {Nilai Awal} DOWNTO {Nilai Akhir}
DO
BEGIN
{Statement 1}
{Statement 2}
....
{Statement n}
END;

Jika Nilai Awal < Nilai Akhir gunakan statement FOR TO DO. Sedangkan jika Nilai Awal > Nilai Akhir gunakan statement FOR DOWNTO DO.

B. Statement While

Statement WHILE adalah suatu perintah yang berfungsi untuk melakukan proses pengulangan, dimana pengulangan akan terus dilakukan jika kondisi tertentu dipenuhi. Jika banyaknya pengulangan diketahui tapi kenaikan atau penurunan pengulangan tidak sebesar satu, statement IF tidak dapat digunakan, sehingga harus digunakan statement WHILE atau REPEAT. Bentuk dari statement WHILE adalah:

WHILE {Kondisi} DO
BEGIN
{Statement 1}
{Statement 2}
....
{Statement n}
END; 

C. Statement Repeat

Statement REPEAT adalah suatu perintah yang berfungsi untuk melakukan proses pengulangan, dimana pengulangan akan berhenti jika kondisi yang tertulis di akhir pengulangan dipenuhi. Sintak dari statement REPEAT adalah: 

REPEAT
{Statement 1}
{Statement 2}
....
{Statement n}
UNTIL {Kondisi};

Read More......

Array (larik) menyatakan tipe data terstruktur yang berupa kumpulan elemen-elemen dengan tipe data yang sama. Tipe Array dapat ditulis sebagai berikut:

Array [Indeks_1,…,Indeks_n] of Tipe_Dasar

• Array Dimensi Satu

Array berdimensi satu merupakan array dengan ciri memiliki tipe indeks hanya satu buah.
Contoh deklarasi variabel dengan tipe array berdimensi satu:

VAR X : ARRAY[1..10] of Integer;

Untuk menyimpan suatu nilai kedalam lokasi array, dapat dilakukan dengan instruksi :

D[i]:=nilai;
atau                                   
READLN(D[i]);

(dimana i adalah indeks array)

Sedangkan untuk menampilkan nilai yang ada di salah satu elemen array dapat dengan cara:

WRITELN(D[i]); 

(dimana i adalah indeks elemen array)

• Array Dimensi Dua

Array berdimensi dua merupakan array dengan ciri memiliki tipe indeks dua buah.
Contoh deklarasi variabel dengan tipe array berdimensi dua:

VAR Y : ARRAY[1..5,1..10] of Integer;

Untuk menyimpan suatu nilai kedalam lokasi array, dapat dilakukan dengan instruksi :

D[i,j]:=nilai;
atau                                      
READLN(D[i,j]); 

 (dimana i,j adalah indeks array)

Sedangkan untuk menampilkan nilai yang ada di salah satu elemen array dapat dengan cara:

WRITELN(D[i,j]); dimana i,j adalah indeks elemen array

Read More......

Beberapa program-program turbo pascal dapat kalian baca selengkapnya di sini :) =======================================================

program pelajar;
uses wincrt ;
var
   nrp :longint;

begin
     nrp := 1311123 ;
     writeln(nrp);
end.

=======================================================

program faktorial;
uses wincrt;
var
i, f : longint ;
n : real;
begin
     readln(n); f:=1; i:=0;
     repeat
           i:=i+1;
           f:=f*i;
           until i=n ;
           writeln (n,' faktorial= ',f);
           end.

=======================================================

program expo;
uses wincrt;
var i,n :integer;
e,f :real;
begin
     e:=1; i:=0; n:=10; f:=1;
repeat
     i:=i+1;
     f:=f*i;
     e:=e+1/f;   

until i=n;
writeln ('e= ',e:11:4);
end.

=======================================================

CASE OF

program huruf;
uses wincrt;
var
data:char;
begin
readln (data);

case data of
'A','I','U','E','O' :writeln ('huruf besar vokal');
'a','i','u','e','o' :writeln ('huruf kecil vokal');
else
writeln ('bukan huruf vokal');
end;
end.

=======================================================
 
WHILE

program faktorial;
uses wincrt;
var
i, f : longint ;
n : real;
begin
readln (n);f:=1;
while i<n do
begin
i:=i+1;
f:=f*i;
writeln (n,'faktorial=',f);
end;
end.

=======================================================

FOR

 
program faktorial;
uses wincrt;
var
i, n, f : integer;
begin
     readln(n); f:=1;
     for i:=1 to n do;
     begin f:=f*i;
     end;
     writeln(n,'faktorial=',f);
     end.

=======================================================

IF

program faktorial;
uses wincrt;
var
i, n : longint ;
f : real;
begin
     readln(n); f:=1; i:=0;
    if (n=0) then
    writeln (i);

    repeat
    i:=i+1;
    f:=f*i;
    until i=n;
    writeln (n, 'faktorial' ,f);
    end.

=======================================================

program pangkat;
uses wincrt;
function Pkt(x:real;n:integer):real;
var t :real;
m:integer;
begin
m:=abs(n);
if(x<>0)and (n=0)then pkt:=1
else if n>0 then
pkt:=x*pkt(x,n-1)
else if (n<0)then pkt:=1/(x*pkt(x,m-1));
end;
var x:real;
n:integer;
begin
write('bilangan yang dipangkatkan:');readln(x);
write('bilangan pangkat:');readln(n);
writeln(x:10:8,'pangkat',n,'=',Pkt(x,n):4:100);
end.

=======================================================

PROGRAM DERET ANGKA

1
1 2
1 2 3
1 2 3 4

program deret_angka;
uses wincrt ;
var
i,j : integer;
begin
for i:=1 to 5 do
begin
for j:=1 to i do
write (j,' ');
writeln;
end;
end.

-----------------------------------------------------------------------------------

1 2 3 4
1 2 3
1 2
1

 
program deret_angka;
uses wincrt ;
var
i,j : integer;
begin
for i:=5 downto 1 do
begin
for j:=1 to i do
write (j,' ');
writeln;
end;
end.
 

-----------------------------------------------------------------------------------

1
2 3
4 5 6
7 8 9 10

program deret_angka;
uses wincrt;
var n, i, j :integer;
 begin
 n:=1;
 for i:=1 to 4 do
 begin
 for j:=1 to i do
 begin
 write (n,' ');
 n:=n+1;
 end;
 writeln (' ');
 end;
 end.

=======================================================

ARRAY

 
Program Bilangan_Genap;
uses wincrt;
var genap : array[1..100] of integer;
    a, b, jum : integer;
begin
  a := 0;
  b := 2;
  write('Jumlah bilangan genap : ');readln(jum);

  while a <> jum do begin
    inc(a);
    genap[a] := b;
    b := b + 2;
  end;

  writeln;
  writeln('Hasil yang disimpan di array : ');
  for b := 1 to jum do
    writeln('Bilangan genap ke-',b,' : ',genap[b]);
end.

 
-----------------------------------------------------------------------------------

program data_sering_muncul;
uses wincrt;
var i,n,j,modus:integer;
A,frek:array[1..100] of integer;
begin
readln(n);
for i:=1 to n do
readln(A[i]);
writeln;
for i:=1 to n-1 do
begin
for j:=i+1 to n do
if A[i]=A[j] then
frek[i]:=frek[i]+1;
end;
modus:=1;
for i:=1 to n do
begin
write(frek[i],' ');
if frek[modus]<frek[i] then
modus:=i;
end;
write('modus: ',A[modus],' sebanyak ',frek[modus]+1);
end.

 
-----------------------------------------------------------------------------------

program dimensi;
uses wincrt;
var
x:array[1..100,1..100]of integer;
p,l,i,j:integer;
begin
write ('p=');readln (p);
write ('l=');readln (l);
for i :=1 to l do
for j:=1 to p do
readln (x[i , j]);
writeln ;
writeln('bentuk matriksnya') ;
for i:=1 to l do
begin
for j:=1 to p do
write (x[i , j]);
writeln;
end;
end.

-----------------------------------------------------------------------------------



MATRIK

program matrik;
uses wincrt;
type data = array[1..10,1..10] of integer;
var matrikI,matrikII : data;
baris,kolom,pil : integer;
procedure isimatrik;
var i,j : integer;
begin
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 kurangmatrik(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 Pengurangan 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;
begin
writeln(' M E N U');
writeln('(1) Penjumlahan Matrik');
writeln('(2) Pengurangan Matrik');
writeln('(3) Perkalian Matrik');
write('Pilihan = ');readln(pil);
clrscr;
case pil of
1 : begin
isimatrik;
jumlahmatrik(matrikI,matrikII);
end;
2 : begin
isimatrik;
kurangmatrik(matrikI,matrikII);
end;
3 : begin
isimatrik;
kalimatrik(matrikI,matrikII);
end;
end;
end.

=======================================================

Read More......

Mai PLaylist

 
Irma.nita-1311100132. Template Design By: SkinCorner