Minggu, 30 Januari 2011

ARRAY

Array adalah sekelompok data sejenis yang disimpan ke dalam variabel dengan nama yang sama, dengan memberi indeks pada variabel untuk membedakan antara yang satu dengan yang lain.

VARIABEL ARRAY
nama_variabel[indeks]
ketentuan nama variabel arrray sama dengan nama variabel biasa. indeks menunjukkan nomor dari variabel .

DEKLARASI VARIABEL ARRAY

BU                   : tipe nama_variabel[indeks];
Contoh            : float bil[10];

deklarasi variabel array dengan nama bil yang akan menampung 10 data yang  bertipe  float.  Indeks  10  menunjukkan  variabel  bil  terdiri  dari  10 elemen, dimana setiap elemen akan menampung sebuah data.
Indeks array dimulai dari nol(0) , sedang nomor elemen biasanya dimulai dari satu(1). Nomor elemen dapat dibuat sama dengan nomor indeks untuk mempermudah pembuatan program yaitu dengan memberi indeks satu lebih banyak dari jumlah data yang dibutuhkan, sehingga menjadi : float bil[11]

INISIALISASI  ARRAY 1 DIMENSI
Inisialisasi  dapat dilakukan bersama dengan deklarasi atau tersendiri. Inisialisasi suatu array adalah dengan meletakkan elemen array di antara tanda kurung kurawal {}, antara elemen yang satu dengan lainnya dipisahkan koma.
            int bil[2] = {4,1,8}

            bil[0] = 4
            bil[1] = 1
            bil[2] = 8

AUTOMATIC ARRAY adalah Inisialisasi array dilakukan di dalam fungsi tertentu. Hanya  compiler C yang berstandar ANSI C yang dapat menginisialisasikan automatic array.
Cara menginisialisasikan  array dari compiler yg tidak mengikuti standar  ANSI C:
1. Diinisialisasikan di luar fungsi sebagai variabel GLOBAL/EXTERNAL ARRAY.
            int bil[2]={0,0,0};
            main()
2. Diinisialisasikan didlm fungsi sebagai variabel LOKAL/STATIC ARRAY.
            main()
            {
                        static int bil[2]={0,0,0};
                        .........

Pada automatic array yang tidak diinisialisasikan , elemen array akan memiliki nilai yang tidak beraturan. Bila global & static array tidak diinisialisasi maka semua elemen array secara otomatis akan diberi nilai nol(0).

Contoh :
main()
{
            int y;
            int hitung=0;
            int x[0];
            for(y=0;y<5;y++)
            {
                        hitung+=y;
                        x[y]=hitung;
                        printf("%3d - %3d\n",y,x[y]);
            }
}

OUTPUT:
0-  0
1-  1
2-  3
3-  6
4-  10

MENDEFINISIKAN JUMLAH ELEMEN ARRAY DALAM VARIABEL
Besarnya variabel indeks dapat ditentukan dengan menggunakan  preprocessor directives #define
#define N 40
main()
{
            int no[N],gaji[N],gol[N],status[N],juman[N];

Bila besari indeks akan diubah menjadi 50, cukup diganti dengan
#define N 50

ARRAY 2 DIMENSI
nama_variabel [indeks1][indeks2]
indeks1          : jumlah/nomor baris
indeks2          : jumlah/nomor kolom
Jumlah elemen yang dimiliki array 2 dimensi dapat ditentukan dari hasil perkalian    indeks1 * indeks2

misal : array A[2][3] akan memiliki 2*3 = 6 elemen.

main()
{
            float  bil [5] [5]
            .......

dapat dituliskan dengan #define
#define N 5
main()
{
            float bil [N]  [N]
            .......

INISIALISASI ARRAY 2 DIMENSI
main()
{
            float bil[2] [3] =
            { { 1,2,3},         /*baris 0*/
              { 4,5,6},         /*baris 1*/
            }

elemen bil [0] [0] = 1
elemen bil [0] [1] = 2
elemen bil [0] [2] = 3
elemen bil [1] [0] = 4
elemen bil [1] [1] = 5
elemen bil [1] [2] = 6

Contoh :
main()
{
            int x[3][5];
            int y,z;
            int hitung=0;
            for(y=0;y<3;y++)


            {
                        printf("y = %d\n",y);
for(z=0;z<5;z++)
                        {
                                    hitung+=z;
                                    x[y][z] = hitung;
                                    printf("%/t%3d - %3d\n",z,x[y][z]);
                        }
            }
}

OUTPUT:
y = 0
   0-  0
   1-  1
   2-  2
   3-  6
   4-  10
y = 1
   0-  10
   1-  11
   2-  13
   3-  16
   4-  20
y = 2
  0-  20
  1-  21
  2-  23
  3-  26
  4-  30

STRING dan ARRAY
1. Pada string   terdapat karakter null(\0) di akhir string
2. String sudah pasti array, array belum tentu string

CONTOH - CONTOH :
1. array dengan pengisian input melalui keyboard
            baca_input()
            {
                        float nilai[10];
                        for(i=0;i<10;i++)
                        scanf("%d",&nilai[i]);
            }

2. Fungsi yang mencetak isi array dari akhir ke awal
            cetak_array()
            {
float nilai[10];
                        for(i=9;i>=0;i--)
                        scanf("%3f",nilai[i]);
            }
3. Menghitung rata - rata isi array nilai
            rata_rata()
            {
                        float nilai[10],jum*rata;
                        for(i=0,jum=0;i<=9;i++)
                                    jum+=nilai[i];
                                    rata=jum/i;
            }

4. Mencari nilai terbesar
            besar()
            float temp,nilai[10];
            {
                        for(temp=nilai[0],i=1;i<=9;i++)
                        if(nilai[i] > temp)
                                    temp=nilai[i];
            }
            return(temp)

Jumat, 28 Januari 2011

ALGORITMA PENCARIAN

Proses pencarian adalah menemukan data tertentu di dalam sekumpulan data yang bertipe sama (tipe dasar atau tipe bentukan). jika kita ingin mengubah data atau menghapus data langkah pertama adalah mencari data jika data yang kita cari tentu data itu bisa dihapus atau diedit. 
Penggunaan Pencarian :
  1. Proses pencarian seringkali diperlukan pada saat program perlu mengubah atau menghapus nilai tertentu (sebelum bisa mengubah atau menghapus, perlu mencari dulu apakah nilai tersebut ada dalam kumpulan nilai tersebut).
  2. Penyisipan data ke dalam kumpulan data (perlu dimulai dengan pencarian apakah data tersebut telah ada sehingga terhindar dari duplikasi data). 
Berikut saya jelaskan metode pencarian yang saya pahami : 
  1. Pencarian Beruntun (Sequencial Search)
  2. Pencarian Bagi Dua ( Binary Search)
  • Pencarian Sekuensial : Proses membandingkan setiap elemen larik (array) satu persatu dengan nilai yang dicari secara beruntun, mulai dari elemen pertama sampai elemen yang dicari sudah ditemukan, atau sampai seluruh elemen sudah diperiksa .
  • Keunggulan :
  1. Algoritma pencarian sekuensial ini cocok untuk pencarian nilai tertentu pada sekumpulan data terurut maupun tidak. 
  2. Keunggulan algoritma ini adalah dalam mencari sebuah nilai dari sekumpulan kecil data.
  3. Termasuk algoritma yang sederhana dan cepat karena tidak memerlukan proses persiapan data (misalnya: pengurutan).
  • Pencarian Biner : Pencarian biner adalah proses mencari data dengan membagi data atas dua bagian secara terus menerus sampai elemen yang dicari sudah ditemukan, atau indeks kiri lebih besar dari indeks kanan .  
  • Keungggulan :Algoritma ini lebih efisien daripada algoritma pencarian sekuensial, tetapi pencarian ini mempunyai syarat yaitu bahwa kumpulan data yang harus dilakukan pencarian harus sudah terurut terlebih dahulu, baik terurut secara menaik (ascendant) atau menurun (descendant).
  • Penggunaan Pencarian Biner
Pencarian dalam data terurut bermanfaat misalnya pada penyimpanan data dengan beberapa komponen, program dapat mencari sebuah indeks terurut. Setelah menemukan indeks yang dicari, program dapat membaca data lain yang bersesuaian dengan indeks yang ditemukan tersebut.  

Catatan : Algoritma pencarian sequential dapat digunakan untuk data yang acak maupun terurut.
Jika dilihat dari sisi kinerja dan efisiensi : untuk kasus terburuk (data tidak ditemukan), algoritma pencarian sequential akan sebanding dengan jumlah data.

  • ALGORITMA PENCARIAN LAIN :

Pencarian sekuensial dan pencarian biner merupakan algoritma pencarian dasar yang termasuk dalam kelompok pencarian daftar (list search). Terdapat pula beberapa algoritma lain yang termasuk pula dalam kelompok pencarian daftar, antara lain:
  • Pencarian Interpolasi :
Melakuan pencarian lebih baik dari biner pada lirik berukuran besar dengan   distribusi seimbang, tapi waktu pencariannya buruk.Algoritma pencarian interpolasi memiliki kerumitan dalam hal perhitungan untuk menentukan posisi rekaman yang akan diperiksa berikutnya dibandingkan dengan pencarian biner tetapi algoritma pencarian interpolasi memiliki kinerja yang baik untuk rekaman-rekaman yang memiliki kunci yang mendekati seragam.
  • Pencarian Grover :
Melakukan pencarian dalam waktu singkat, yang merupakan pengembangan dari pencarian linier biasa pada lirik dengan elemen tidak berurut.
Pada persoalan pencarian dengan exhaustive search, diberikan suatu fungsi f(x),x=0,1...(N-1), dimana f(x)
adalah fungsi yang akan selalu menghasilkan 0 untuk semua x,kecuali satu nilai x yang akan menghasilkan 1. Tujuan dari persoalan ini adalah mencari nilai x sehingga f(x) = 1. Ide dasar dari algoritma pencarian kuantum (algoritma Grover) adalah misalkan ada N buah status yang berkorespondensi dengan N item dalam suatu daftar tak terurut. Peluang untuk setiap status, bahwa status tersebut adalah yang dicari dalam daftar tersebut adalah 1/N. Dengan prinsip mekanika kuantum, dimungkinkan untuk meningkatkan nilai peluang status yang dicari karena pengaruh status yang lain (status yang bukan status yang dicari), sehingga pada akhirnya status yang dicari akan memiliki nilai peluang tertinggi. Prinsip mekanika kuantum juga memungkinkan untuk berada dalam lebih dari satu status, dan melakukan lebih dari satu komputasi dalam waktu yang bersamaan. Pada pencarian dengan probabilitas pada komputer klasik, peluang untuk status yang dicari akan meningkat sebesar 1/N setiap kali iterasi pada kalang for, sehingga dengan iterasi sebanyak N kali, akan ditemukan solusi dengan nilai peluang tertinggi.
  • CONTOH PENCARIAN SEKUENSIAL
 {
int i = 0;
bool ditemukan = false;
while ((!ditemukan) && (i < Max))
{
if(Data[i] == x)
ditemukan = true;
else
i++;
}
if(ditemukan)
return i;
else
return -1;
}

  • CONTOH PENCARIAN BINER
Int data[10] = {1,3,4,7,12,25,40,65,78,90}; //variabel global

int binary_search(int cari)
{
int l,r,m;
int n = 10;
l = 0;
r = n-1;
int ketemu = 0;
while(l<=r && ketemu==0)
     { m = (l+r)/2;
if( data[m] == cari )
         ketemu = 1;
else if (cari < data[m])
         r = m-1;
else l = m+1; }
if(ketemu == 1)
        return 1;
else return 0; }
void main()
{ clrscr();
int cari,hasil;
cout<<"masukkan data yang ingin dicari = "; cin>>cari;
hasil = binary_search(cari);
if(hasil == 1)
{
cout<<"Data ada!"<
}
else
if(hasil == 0)
cout<<"Data Tidak ada!"<
getch();
}

Senin, 17 Januari 2011

ISTILAH - ISTILAH JARINGAN KOMPUTER

      NIC (network interface card ) atau juga network card adalah sebuah kartu yang berfungsi sebagai jembatan dari komputer ke sebuah jaringan komputer. Jenis NIC yang beredar, terbagi menjadi dua jenis, yakni NIC yang bersifat fisik, dan NIC yang bersifat logis. Contoh NIC yang bersifat fisik adalah NIC Ethernet, Token Ring, dan lainnya; sementara NIC yang bersifat logis adalah loopback adapter dan Dial-up Adapter.
Backbone adalah Bagian dari  jaringan yang berlaku sebagai jalur utama untuk lalu lintas data yang paling sering dilalui, dan memperuntukkan untuk menghubungkan dengan jaringan lain.

Bandwitdh adalah kapasitas transmisi dari  sambungan elektronik  seperti jaringan komunikasi, bus komputer dan komputer channel.

Bridge adalah Perangkat yang menghubungkan  jaringan secara fisik dengan cara menggandeng dua buah LAN yang menggunakan protokol sejenis. Bridge yang mempunyai kemampuan untuk mengawasi lalu lintas data sehingga dapat memberikan  informasi tentang  volume lalu lintas dan kesalahan jaringan.
DNS (Domain Name System) / Sistem Penamaan Domain adalah sebuah sistem yang menyimpan informasi tentang nama host maupun nama domain dalam bentuk basis data tersebar (distributed database) di dalam jaringan komputer
Fast Ethernet merupakan sebuah sebutan untuk teknologi jaringan Ethernet yang menawarkan kecepatan yang lebih tinggi dibandingkan dengan standar Ethernet biasa. Kecepatan yang ditawarkannya mencapai 100 megabit per detik.

Ethernet merupakan sebuah teknologi yang sudah dikenal oleh masyarakat luas sebagai interface yang digunakan untuk konektivitas perangkat komputer maupun laptop, hampir di setiap jaringan LAN (Local Area Network) di seluruh dunia.
Gateway adalah sebuah perangkat yang digunakan untuk menghubungkan satu jaringan komputer dengan satu atau lebih jaringan komputer yang menggunakan protokol komunikasi yang berbeda sehingga informasi dari satu jaringan computer dapat diberikan kepada jaringan komputer lain yang protokolnya berbeda.
GPS (Global Positioning System) adalah sistem satelit navigasi dan penentuan posisi yang dimiliki dan dikelola oleh Amerika Serikat. Sistem ini didesain untuk memberikan posisi dan kecepatan tiga-dimensi serta informasi mengenai waktu, secara kontinyu di seluruh dunia tanpa bergantung waktu dan cuaca, bagi banyak orang secara simultan. Saat ini GPS sudah banyak digunakan orang di seluruh dunia dalam berbagai bidang aplikasi yang menuntut informasi tentang posisi, kecepatan, percepatan ataupun waktu yang teliti. GPS dapat memberikan informasi posisi dengan ketelitian bervariasi dari beberapa millimeter (orde nol) sampai dengan puluhan meter.
Host adalah Istilah yang digunakan untuk menunjuk sebuah komputer yang memungkinkan penggunanya terhubung ke Internet.
ISP (Internet service provider) adalah perusahaan atau badan yang menyelenggarakan jasa sambungan Internet dan jasa lainnya yang berhubungan.
Internet merupakan jaringan global komputer dunia, besar dan sangat luas sekali dimana setiap komputer saling terhubung satu sama lainnya dari negara ke negara lainnya di seluruh dunia dan berisi berbagai macam informasi, mulai dari text, gambar, audio, video, dan lainnya.
ISDN (Integrated Services Digital Network) adalah suatu sistem telekomunikasi di mana layanan antara data, suara, dan gambar diintegrasikan ke dalam suatu jaringan, yang menyediakan konektivitas digital ujung ke ujung untuk menunjang suatu ruang lingkup pelayanan yang luas.
Protokol adalah sebuah aturan atau standar yang mengatur atau mengijinkan terjadinya hubungan, komunikasi, dan perpindahan data antara dua atau lebih titik komputer.
PPP (Point-to-Point Protocol) adalah sebuah protokol enkapsulasi paket jaringan yang banyak digunakan pada wide area network (WAN). Protokol ini merupakan standar industri yang berjalan pada lapisan data-link dan dikembangkan pada awal tahun 1990-an sebagai respons terhadap masalah-masalah yang terjadi pada protokol Serial Line Internet Protocol (SLIP), yang hanya mendukung pengalamatan IP statis kepada para kliennya.
Repeater adalah suatu alat yang berfungsi memperluas jangkauan sinyal WIFI yang belum tercover oleh sinyal dari server agar bisa menangkap sinyal WIFI.

Router adalah perangkat antara yang dapat digunakan untuk menghubungkan dua jaringan lokal yang mempunyai protokol yang berbeda pada lapisan fisik dan data link.
Routing adalah sebuah proses untuk meneruskan paket-paket jaringan dari satu jaringan ke jaringan lainnya melalui sebuah internetwork. Routing juga dapat merujuk kepada sebuah metode penggabungan beberapa jaringan sehingga paket-paket data dapat hinggap dari satu jaringan ke jaringan selanjutnya.
RJ-45 adalah konektor Ethernet yang biasa digunakan dalam topologi jaringan komputer LAN maupun jaringan komputer tipe lainnya. Konektor RJ-45 ini memiliki konfigurasi dua macam, sesuai dengan perangkat yang ingin dihubungkannya.

Server adalah Sebuah komputer di  Internet  atau di jaringan lainnya  yang  menyimpan  file dan membuat file tersebut tersedia untuk diambil jika dibutuhkan. Dan sebuah aplikasi jaringan komputer yang digunakan untuk melayani banyak pengguna dalam satu jaringan. 
TCP/IP ( Transmission Control Protocol/Internet Protocol) adalah sekelompok protokol yang mengatur komunikasi data komputer di internet. Dan standar komunikasi data yang digunakan oleh komunitas internet dalam proses tukar-menukar data dari satu computer ke computer lain di dalam jaringan internet.
Topologi adalah, hal yang menjelaskan hubungan geometris antara unsur-unsur dasar penyusun jaringan, yaitu node, link, dan station.

Unshielded twisted pair (UTP) adalah sebuah jenis kabel jaringan yang menggunakan bahan dasar tembaga, yang tidak dilengkapi dengan shield internal. UTP merupakan jenis kabel yang paling umum yang sering digunakan di dalam jaringan lokal (LAN),

VLAN merupakan suatu model jaringan yang tidak terbatas pada lokasi fisik seperti LAN , hal ini mengakibatkan suatu network dapat dikonfigurasi secara virtual tanpa harus menuruti lokasi fisik peralatan.

VPN (Virtual Private Network) adalah Suatu jaringan yang menggunakan fasilitas jaringan publik/umum tetapi mempunyai policy seperti pada jaringan  privat/pribadi. Pengguna dapat  menikmati fasilitas-fasilitas yang ada pada jaringan privat seperti tingkat security yang tinggi, quality of service (QoS), kemudahan manajemen dan tingkat kepercayaan yang tinggi.

VSAT (Very Small Aperture Terminal) adalah stasiun penerima sinyal dari satelit dengan antena penerima berbentuk piringan dengan diameter kurang dari tiga meter. Fungsi utama dari VSAT adalah untuk menerima dan mengirim data ke satelit.
WAN (Wide Area Network) merupakan jaringan komputer yang mencakup area yang besar sebagai contoh yaitu jaringan komputer antar wilayah, kota atau bahkan negara, atau dapat didefinisikan juga sebagai jaringan komputer yang membutuhkan router dan saluran komunikasi publik.
Workstation adalah komputer yang memanfaatkan jaringan untuk menghubungkan komputer tersebut dengan komputer lain atau komputer tersebut dengan server.

KONSEP DASAR BAHASA PASCAL


Pengertian

Pemrograman / programming  : adalah pekerjaan penulisan instruksi bagi komputer untuk menyelesaikan suatu masalah.

Program    : adalah himpunan instruksi yang diperuntukkan bagi komputer, untuk menyelesaikan masalah yang diberikan.

Interpreter  :  menerjemahkan perintah baris demi baris dan langsung melaksanakannya. contoh : BASIC.

Compiler     : menerjemahkan dulu seluruh perintah dalam bahasa mesin. Baru kemudian terjemahan tersebut dijalankan oleh komputer. Contoh : FORTRAN, C, PASCAL.


2.1. Sejarah Singkat Bahasa PASCAL

Bahasa PASCAL pertama kali dikembangkan pada awal tahun 70-an oleh NICLAUS WIRTH di Technical University, Zurich – Swiss.
Nama PASCAL diambil dari nama seorang ahli matematika bangsa Perancis, yaitu BLEISE PASCAL yang telah berjasa menemukan alat hitung mekanis pertama didunia pada abad ke-17.
Bahasa pemrograman ini termasuk kategori “High Level Language”. Instruksi-instruksi yang digunakan dalam bahasa pemrograman ini sangat sistematis dan terstruktur.
Pada Awalnya bahasa pemrograman ini diperkenalkan dengan tujuan untuk menjelaskan masalah pemrograman komputer bagi mahasiswa yang belajar pemrograman komputer.
Ternyata dalam waktu singkat, nahasa pemrograman ini menjadi salah satu bahasa yang sangat populer dikalangan universitas, sehingga menjadi julukan sebagai bahasa universitas.
Mulai dari awal perkembangannya hingga saat ini banyak sekali jenis bahasa pemrograman ini, masing-masing merupakan hasil pengembangannya, antara lain :
UCSD Pascal
Microsoft Pascal
Apple Pascal
Turbo Pascal
dsb

Diantara versi-versi yang ada, Turbo Pascal merupakan versi yang sangat populer saat ini.



2.2. Struktur Dan Komponen Dasar Program Pascal.

            Struktur dari suatu program Pascal terdiri dari sebuah judul program dan suatu blok program atau badan program. Blok program dibagi lagi menjadi dua bagian, yaitu bagian deklarasi dan bagian pernyataan (statement).

2.2.1. Struktur program :

Judul Program                          PROGRAM nama-program;
Blok Program  
Bagian deklarasi
- deklarasi label                                    LABEL nama-label;
- deklarasi konstanta                 CONST…………..;
- deklarasi tipe                          TYPE …………….;
- deklarasi variabel                               VAR ……………...;
- deklarasi prosedur                  PROCEDURE nama-prosedur;
                                                ……………………………….;
- deklarasi fungsi                                   FUNCTION nama-fungsi;
                                                ………………………….;
Bagian Pernyataan                   
Begin
      (statement)                        
      …………;
      …………;
end.


Contoh :  Menghitung luas bidang berbentuk empat persegi panjang dengan panjang P
     dan lebar L.

PROGRAM Luas;                                            {Judul}
VAR P,L,Luas : real;                            {Deklarasi variabel}
BEGIN
            Read (P,L);                                          {Statemant}
            Luas := P*L;                                        {Statement}
            Write (P,L,Luas);                                 {Statement}
END.


Judul program sifatnya adalah optional, dan bila ditulis, harus terletak pada awal dari program dan diakhiri dengan titik koma.
Bagian deklarasi digunakan bila di dalam program digunakan pengenal ( identifier). Identifier dapat berupa label, konstanta, tipe, variabel, prosedur dan fungsi. Kalau suatu program menggunakan identifier, Pascal menuntut supaya identifier tersebut diperkenalkan terlebih dahulu sebelum digunakan, yaitu dideklarasikan terlebih dahulu pada bagian ini.
Beberapa aturan dalam program Pascal :

·        Akhir sebuah program Pascal ditandai dengan tanda baca titik (.) setelah END yang  paling akhir.
·        Tanda titik koma (;) merupakan pemisah antar instruksi satu dengan lainnya.
·        Beberapa statement boleh ditulis menjadi satu baris dipisahkan dengan tanda baca titk koma (;)
Contoh : simpan  :=  akhir;   akhir := simpan + awal;
·        Baris komentar diletakkan diantara tanda (* dan *) atau diantara tanda { dan }
Contoh :     Var      rerata   : real;                (*nilai rata-rata*)
                              Nil1      : real;                {nilai ujian}      

Statement  (pernyataan)
            Adalah instruksi atau gabungan instruksi, yang menyebabkan komputer melakukan aksi.

Type statement dalam Pascal terdiri atas :

1.      Sederhana :
- menandai sebuah item data ke sebuah variabel (assigment statement)
            contoh : X := Y * 4.135
-         pemanggilan procedure dan goto statement

2.      Terstruktur:
- Compound Statement
            contoh : Begin
                                    read (x) ;
                                    y := x + 5;
                                    write (y)
                          End.
      - Repetitive Statement
            contoh :            For I := 1 to 100 do
                                    write (count);
     - Conditional Statement
            contoh :            If x > 100 then write (s)
                                                else write (p) ;


2.2.2. Komponen Dasar Program Pascal


Pola susun bahasa Pascal dibentuk dengan menggunakan komponen bahasa pemrograman yang umum, yaitu :
1.      Simbol Dasar
2.      Reserved Word (kata pasti)
3.      Identifier (penyebut)
1.      Simbol Dasar.
Simbol dasar terdiri atas :
1.      Simbol huruf, yaitu huruf A sampai dengan Z atau a sampai dengan z.
(huruf besar dan kecil).
2.      Simbol angka atau digit yaitu : 0,1,2,3,4,5,6,7,8,9.
3.      Simbol khusus, yaitu
+   -   *   /   ;   :=   ,   ‘   =   <   >   <=   >=   <>   :   {  }   ( )   [   ]

2.      Reserved Word (kata pasti)
Reserved Word adalah suatu kata yang secara mutlak tidak boleh diartikan lain dan harus digunakan sebagaimana yang telah didefinisikan atau ditentukan kegunaanya oleh bahasa Pascal. Reserved word ini tidak boleh didefinisikan ulang oleh pemakai, sehingga tidak dapat dipergunakan sebagai pengenal (identifier)
Reserved Word ini jumlahnya berbeda untuk masing-masing bahasa Pascal.


Contoh beberapa reserved word yang telah didefinisikan oleh bahasa pascal antara lain

      AND                ELSE                           LABEL                        SET
      ARRAY           END                            OF                               TYPE
      BEGIN            FUNCTION                OR                               UNTIL
      CASE              FOR                            PROCEDURE VAR
      CONST           GOTO                         PROGRAM                 WHILE
      DO                  IF                                 RECORD                    WITH
      DOWNTO      IN                                REPEAT                      dsb

3.      Identifier (sebutan/pengenal)
Identifier merupakan sebuah kata yang digunakan sebagai nama atau sebutan terhadap sesuatu didalam program. Pemakai dapat mendefinisikan sendiri suatu nama sebagai identifier.

Identifier ini terdiri atas :

1.      Identifier Standar, yaitu identifier yang telah didefinisikan oleh bahasa pascal.
Contoh dari Identifier standar ini antara lain:
ABS                             LN
ARCTAN                    ODB
BOOLEAN                 PRED
CHAR                         ROUND
CHR                            READ
COS                            READLN
EOF                             SQR
EOLN                          SQRT
EXP                             SUCC
            Dan masih banyak lagi.

2.      Identifier Non Standar; yaitu identifier yang didefinisikan oleh pemakai bahasa pascal; misalnya;
  1. nama suatu program
  2. nama suatu konstanta
  3. nama suatu variabel
  4. nama suatu procedure
Identifier ini bebas, tetapi dengan ketentuan-ketentuan sebagai berikut :
7.      terdiri dari gabungan huruf dan angka dengan karakter pertama harus berupa huruf. Huruf besar dan huruf kecil dianggap sama.
8.      Tidak boleh mengandung blank.
9.      Tidak boleh mengandung simbol-simbol khusus, kecuali garis bawah.
10.  Panjangnya bebas, tetapi hanya 63 karakter pertama yang dianggap signifikan.

Contoh :

Identifier
Keterangan
GajiKaryawan
Benar
No_Mhs
Benar
P3K
Benar
1X
Salah, karakter pertama harus huruf
A&B
Salah, tidak boleh mengandung simbol khusus
A B
Salah, tidak boleh mengandung blank


2.3. Jenis – jenis data

Jenis – jenis data yang dikenal dalam bahasa pascal antara lain yaitu:
1.      Jenis data sederhana
  1. Jenis data yang standar; yaitu :
·        Integer
·        Real
·        Karakter
·        Boolean
  1. Jenis data yang non standar (user defined), yaitu;
·        Enumerated
·        Sub-range
2.      Jenis data berstuktur, yaitu:
  1. Array
  2. Record
  3. Set
  4. File
3.      Jenis Data Pointer

INTEGER


            Jenis data ini terdiri atas integer positif, integer negatif dan nol. Merupakan nilai bilangan bulat.
Pada TURBO PASCAL jenis data ini di bagi atas beberapa bagian, yaitu :


Tipe
Ukuran memori
(dalam byte)
Jangkauan nilai
BYTE
1
0..255
SHORTINT
1
-128..127
INTEGER
2
-32768..32767
WORD
2
0..65535
LONGINT
4
-2147483648..2147483647

Operator Integer terdiri atas :  + , - , * , / , DIV dan MOD

Contoh :

Var
            Jumlah : byte;
Begin
            Jumlah := 200;
            WriteLn(‘Nilai JUMLAH = ‘,Jumlah);
End.

Hasilnya bila dijalankan :

            Nilai JUMLAH = 200

REAL



Penulisan untuk jenis data ini selalu menggunakan titik desimal. Nilai konstanta numerik real berkisar dari 1E-38 sampai dengan 1E+38 dengan mantissa yang signifikan sampai dengan 11 digit. E menunjukkan nilai 10 pangkat. Nilai konstanta numerik real menempati memori sebesar 6 byte.
Contoh :
123.45
12345.  ® salah, titik desimal tidak boleh dibelakang
12E5
12E+5
-12.34
.1234  ® salah, titik desimal tidak boleh dimuka

Pada TURBO PASCAL, jenis data ini dibedakan atas :

Tipe
Ukuran memori
(dalam byte)
Jangkauan nilai
Digit signifikan
SINGLE
4
1.5x10E-45 .. 3.4x10E38
7-8
DOUBLE
8
5.0x10E-324 .. 1.7x10E308
15-16
EXTENDED
10
1.9x10E-4951 .. 1.1x10E4932
19-20
COMP
8
-2E+63+1 .. 2E+63-1
19-20

Operator untuk jenis data ini terdiri atas : + , - , * dan /


KARAKTER


Yang dimaksud dengan jenis data ini adalah karakter tunggal atau sebuah karakter yang ditulis diantara tanda petik tunggal, seperti misalnya ‘A’,’a’,’!’,’5’ dsb.

Dasarnya adalah ASCII CHARACTER SET.

Misalnya : 032 pada tabel ASCII CHARACTER SET menunjukkan karakter.

                        Blank.
            033                              !
            048                               0
076                               L
            dst

STRING


Nilai data string merupakan urut-urutan dari karakter yang terletak di antara tanda petik tunggal. Nilai data string akan menenpati memori sebesar banyaknya karakter stringnya ditambah dengan 1 byte. Bila panjang dari suatu string di dalam deklarasi variabel tidak disebutkan, maka dianggap panjangnya adalah 255 karakter.

Contoh :

Var
            Kampus : string[10];
Begin
            Kampus := ‘Gunadarma’;
Write(Kampus);
End.



BOOLEAN


Jenis data ini mempunyai nilai TRUE atau FALSE.

Operator untuk jenis data ini adalah :
1.      Logical Operator, yaitu : NOT, AND dan OR
2.      Relational Operator, yaitu : >, <, >=, <=, <> dan =
\
JENIS DATA NON-STANDARD (USER DEFINED)

1.      ENUMERATED.
Jenis data ini terdiri atas barisan identifier yang terurut dimana setiap identifier tersebut dianggap sebagai suatu individual data item (elemen data yang berdiri sendiri).

Pada saat mendeklarasikan jenis data ini kita harus menuliskan semua elemen-elemennya.

Bentuk umum deklarasinya adalah :

TYPE nama = (data_item_1, data_item_2, ……., data_item_n);

Contoh :

TYPE hari = (sen,sel,rab,kam,jum,sab,ming);

TYPE warna = (red,blue,green,yellow,black,white);

Setelah jenis data ini dideklarasikan, maka selanjutnya kita dapat mendeklarasikan suatu variabel yang berjenis data sama dengan jenis data ini.

Misalnya :
                  TYPE nama_hari = (sen,sel,rab,kam,jum,sab,ming);
                  VAR libur : nama_hari;

Fungsi standar yang dapat digunakan pada jenis data ini adalah :

PRED, SUCC dan ORD

Misalnya :

      PRED (sel) = sen
      SUCC (sen) = sel
      ORD (sen) = 0
      ORD (sel) = 1

2.      SUB-RANGE.

Jenis data ini berupa range dari suatu kumpulan data yang mempunyai urutan..

Bentuk umum deklarasinya adalah :

      TYPE nama = data_item_pertama .. data_item_terakhir;

Contoh :

1.      TYPE         jam_kuliah = 1 .. 10;
tanggal = 1 .. 31;
abjad = ‘A’ .. ‘Z’;

2.      TYPE         bulan = (jan,feb,mar,apr,mei,jun,jul,agt,sep,okt,nov,des);
hari = (sen,sel,rab,kam,jum,sab,ming);
ata = agt .. jan;
pta = feb .. jun;
hari_kerja = sen .. jum;


TANDA OPERASI


Tanda operasi (operator) di dalam bahasa Pascal dikelompokkan ke dalam 9 kategori, yaitu

1.      Assignment operator.
2.      Binary operator.
3.      Unary operator.
4.      Bitwise operator.
5.      Relational operator.
6.      Logical operator.
7.      Address operator.
8.      Set operator.
9.      String operator.

Assignment operator

            Assignment operator (operator pengerjaan) menggunakan simbol titik dua diikuti oleh tanda sama dengan (:=).

Contoh :
                        A:=B;


Binary operator

            Digunakan untuk mengoperasikan dua buah operand. Operand dapat berbentuk konstanta ataupun variabel. Operator ini digunakan untuk operasi aritmatika yang berhubungan dengan nilai tipe data integer dan real.

Operator

Operasi
Tipe operand
Tipe hasil
*
Perkalian
real,real
integer,integer
real,integer
real
integer
real
DIV
Pembagian bulat
integer,integer
integer
/
Pembagian real
real,real
integer,integer
real,integer
real
real
real
MOD
Sisa pembagian
integer,integer
integer
+
Pertambahan
real,real
integer,integer
real,integer
real
integer
real
-
pengurangan
real,real
integer,integer
real,real
real
integer
real

Contoh :
                        15*5                hasilnya            75
                        20/3                 hasilnya            6.6666666667E+00
                        20 div 3            hasilnya            6
                        20 mod 3         hasilnya            2

Unary operator

            Operator ini hanya menggunakan sebuah operand saja. Dapat berupa unary minus dan unary plus. Unary minus digunakan untuk menunjukkan nilai negatif, baik pada operang numerik real maupun integer. Unaru plus adalah operator untuk memberai tanda plus.

Contoh :
                        -5         +7
                        -2.5      +2.5

Bitwise operator

            Digunakan untuk operasi bit per bit pada nilai integer. Terdiri dari operator NOT, AND, OR, XOR, Shl, Shr.

Relational operator

            Relational operator digunakan untuk  membandingkan hubungan antara dua buah operand dan akan didapatkan hasil tipe boolean, yaitu True atau False. Terdiri dari operator : =, <, >, <=, >=, <>


Logical operator

            Terdapat 4 buah logical operator yaitu : NOT, AND, OR dan XOR. Operator ini bekerja dengan nilai-nilai logika, yaitu True dan False.

Set operator

            Digunakan untuk operasi himpunan.

String operator

            Digunakan untuk operasi string. Hanya ada sebuah operator string saja, yaitu operator + yang digunakan untuk menggabungkan dua buah nilai string.

Contoh : 
                        Nama1 := ‘Arief ‘;
                        Nama2 := ‘Kurniawan’;
                        Nama3 := Nama1 + Nama2;


2.4. Konstanta, Variabel dan Ekspresi.

Konstanta.
Konstanta adalah suatu identifier non-standar yang nilainya telah ditetapkan dalam suatu program dan dideklarasikan pada bagian deklarasi.

Bagian umum deklarasinya adalah :

            CONST identifier = nilai;

Contoh :

            CONST           phi = 3.14;
                                    x= 2;
                                    y = ‘S’;


Variabel.
Variabel adalah suatu identifier non-standar yang nilainya tidak tetap atau nilainya merupakan hasil dari suatu proses.
(variabel yang dimaksudkan disini sama seperti halnya arti variabel pada aljabar).


Bentuk umum deklarasinya adalah :

1.      Jika hanya 1 (satu) variabel yang dideklarasikan :

VAR identifier : jenis data;

2.      Jika lebih dari 1 (satu) variabel dan masing-masing memiliki jenis data yang sama :

VAR id-1, id-2, …., id-3 : jenis data;

3.      Jika beberapa variabel yang berbeda jenis datanya :

VAR          identifier-1 : jenis data;
                  identifier-2 : jenis data;
                              .
                              .
                              .
                  identifier-n : jenis data;

4.      Jika variabel yang dideklarasikan berjenis data non-standar :

TYPE id = (data_item_1,data_item_2,…,data_item_n);
VAR id-v : id;

SUB-RANGE :

TYPE  id = data_item_pertama .. data_item_terakhir;
VAR    id-v : id;

Contoh :

1.      VAR    x          : integer;
2.      VAR    p,q,r     : real;
3.      VAR    a,b       : char;
m,n       : boolean;
4.      TYPE   warna = (merah,hitam,biru,putih,kuning);
      VAR    x1,x2    : warna;
5.      TYPE   tahun = 1900 .. 1993;
      VAR thn-1,thn-2,thn-3 : tahun;





Ekspresi.

Sebuah ekspresi merupakan kumpulan dari  operand-operand (seperti : bilangan, konstanta, variabel dll) yang bersama-sama dengan operator membentuk suatu bentuk aljabar dan menyatakan suatu nilai.

Ada 2 (dua) jenis ekspresi dalam bahasa Pascal, yaitu :
1.      Ekspresi numerik / aritmatika, yaitu suatu ekspresi yang menghasilkan nilai numerik / aritmatika.
2.      Ekspresi Boolean atau ekspresi logika, yaitu suatu ekspresi yang menghasilkan nilai boolean / logika (true/false).

Contoh :
1.      (b * b – 4 * a * c) / (2*a)  / (2 * a)  Þ  ekspresi numerik, jika a,b dan c adalah bilangan (variabel bernilai numerik).
2.      Upah < 1000.0  Þ  ekspresi boolean (“upah” adalah suatu variabel bernilai real).


2.5. Input dan output (Standar I/O).

Dalam bahasa Pascal untuk keperluan input (membaca input) digunakan identifier standar READ atau READLN.
Identifier standar ReadLn sedikit berbeda dengan Read. ReadLn digunakan untuk memasukkan data perbaris, artinya setelah tombol Enter ditekan, maka akan ganti baris, sedangkan Read tidak ganti baris, masih dalam baris yang sama.
Sedangkan untuk keperluan output (mencetak output) digunakan identifier standar WRITE atau WRITLN.
Perbedaan Write dengan WriteLn adalah bahwa Write menampilkan hasil tanpa ganti baris dan tampilan berikutnya akan disambung dalam baris yang sama. Sedang WriteLn digunakan untuk menampilkan tampilan perbaris, akan ganti baris untuk tampilan berikutnya.

Bentuk umum penulisannya :

1.      READ (variabel input) ;

Atau

READLN (variabel output);

2.      WRITE (variabel output);
WRITELN (variabel output);




Contoh :

Var      nama : string{15};
Begin    nama := ‘Dewi’;
            write(‘nama : ‘);
            write(nama);
End.

Hasilnya :
                        Nama : Dewi


Contoh :

Var      nama : string{15};
Begin    nama := ‘Dewi”;
            WriteLn(‘Nama : ‘);
            WriteLn(Nama);
End.

Hasilnya :
                        Nama :
                        Dewi