text maarque kanan

INGATKAN DIRIMU UNTUK MENGATUR SEGALA SESUATU SUDAH DI ATUR ALLOH

salju

Tampilkan postingan dengan label Pemrograman Delphi. Tampilkan semua postingan
Tampilkan postingan dengan label Pemrograman Delphi. Tampilkan semua postingan

Selasa, 27 Desember 2011

bahasa delphi

Bahasa Pemrograman Delphi


Klik di bawah untuk langsung ke bagian tertentu:
Sejarah | Fitur Bahasa Signifikan | Contoh Program
Link Terkait | Ucapan Terima Kasih

Sejarah

Bahasa pemrograman Delphi dikembangkan oleh Borland dan merupakan keturunan dari Turbo Pascal. Delphi dirilis pada Februari 1995. Delphi adalah kompiler kode asli yang berjalan di bawah Window v3.1 atau Windows '95. Delphi adalah dasarnya objek pemrograman Pascal dengan alat serupa yang ditemukan dalam Microsoft Visual Basic 3.0.

Fitur Bahasa Signifikan

  • Alat Visual Programming - bahasa ini berisi alat untuk membuat pemrograman untuk Windows mudah.
  • Kode dikompilasi - Delphi kode dikompilasi, karena itu, kode dikompilasi berjalan cepat.
  • Berorientasi objek - objek tetap, yang diselenggarakan sederhana dan dilindungi.

Contoh Program

  • Halo dunia!

  • Bilangan rata-rata 10


Link Terkait


Ucapan Terima Kasih

Saya ingin berterima kasih kepada Kelly Knezek bantuan dalam mengajar saya tentang bahasa pemrograman Delphi dan membantu saya menulis program pertama saya.
[Prev] [Home] [Berikutnya]

Terakhir diubah: 1996/11/24 12:46 di

Senin, 12 Desember 2011

jam Delphi

Menampilkan jam pada title Bar PDF Print E-mail
User Rating: / 0
PoorBest 
Delphi - Tips dan Trik Delphi
unit Unit1;

interface

uses
  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
  Dialogs, ExtCtrls, StdCtrls;

type
  TForm1 = class(TForm)
    Timer1: TTimer;
    Label1: TLabel;
    Button1: TButton;
    procedure Timer1Timer(Sender: TObject);
    procedure FormCreate(Sender: TObject);
    procedure FormClose(Sender: TObject; var Action: TCloseAction);
    procedure Button1Click(Sender: TObject);
  private
    { Private declarations }
  public
    { Public declarations }
  end;

var
  Form1: TForm1;
  dc: hDC;

implementation

{$R *.dfm}

procedure TForm1.Timer1Timer(Sender: TObject);
var
  TheTime: array[0..80] of char;
begin
  StrPCopy(TheTime, TimeToStr(time));
  TextOut(dc, width DIV 2, 5, TheTime, StrLen(TheTime));
end;

procedure TForm1.FormCreate(Sender: TObject);
begin
  dc := GetWindowDC(handle);
end;

procedure TForm1.FormClose(Sender: TObject; var Action: TCloseAction);
begin
  ReleaseDC(handle, dc);
end;

procedure TForm1.Button1Click(Sender: TObject);
begin
close;
end;

end.

Tutor Membuat aplikasi

Tutor Membuat aplikasi kirim email smtp server dengan Powerbuilder 8.0. PDF Print E-mail
Powerbuilder - Tutorial Powerbuilder
Tutor ini membahas bagaimana caranya membuat aplikasi krim email ( Smtp-server).
Sebelum dilakukan pengiriman email dilakukan setting smtp server terlebih dahulu.
Pada tutor ini terdiri dari object-object  sebagai berikut :
1.       Non Visual Object : n_smtp  dan n_winsock
2.       Visual object : Window konfigurasi dan window email.
3.       File pendukung lainnya dapat di download dari forder source code.

 Source aplikasi dapat di download di sini.
Aplikasi Jadi dapat di download di sini.

A.             N-smtp dan w_winsock dapat diambil dari  source code aplikasi dan tambahkan pada project anda.
 
B.             Membuat Window Konfigurasi SMTP-server
 
1.       Buatkan desain seperti tampilan gambar di atas.
2.       Buat Variable :
-            Global Variable :  n_smtp gn_smtp
-            GlobalExternalFuntions : Function ULONG GetCurrentDirectoryA(ULONG nBufferLength, ref STRING lpBuffer) library "KERNEL32.dll"
Read more...
 
Fungsi Merubah Password-Password Encription PDF Print E-mail
Powerbuilder - Tips dan Trik Powerbuilder
Written by -   
int  i,j, li_panjang, li_huruf1, li_huruf2, li_jarak
string ls_huruf1,ls_huruf2, ls_tampung

//masuk = masuk

li_panjang = Len(masuk)
if li_panjang < 1 then return char(0)
  
For i = 1 to li_panjang
  
    ls_huruf1 = Mid(masuk,i,1)            // huruf yang akan dikonversikan
    j = i + 1
    IF j > li_panjang THEN j = 1
  
    ls_huruf2 = Mid(masuk,j,1)            //patokan huruf
  
    li_huruf1 = ASC(ls_huruf1)
    li_huruf2 = ASC(ls_huruf2)
  
    li_jarak = li_huruf2 - li_huruf1
  
    IF li_jarak = 0 THEN li_jarak = li_huruf1
  
    li_huruf1 = (li_jarak * 2) + li_huruf2   //ini algoritmanya
  
    IF li_huruf1 < 0 THEN
        li_huruf1 = 255 - li_huruf1
    ELSEIF li_huruf1 > 255 THEN            // lihat perkaliannya bisa terjadi li_huruf2 = 255
        li_huruf1 = li_huruf1 - 255        // li_huruf1 = 255
        IF li_huruf1 > 255 THEN                // maka jadinya maksimum li_huruf1 -> 255 * 3 = 765
            li_huruf1 = li_huruf1 - 255
        END IF  
    END IF  

    ls_huruf1 = char(li_huruf1)

    ls_tampung = ls_tampung + ls_huruf1
Next

//messagebox(ls_tampung,STRING(LI_PANJANG))

IF li_panjang < 15 Then
    ls_tampung = wf_rubah_pass(masuk + ls_tampung)
  
END IF

IF LEN(ls_tampung) > 15 THEN ls_tampung = Mid(ls_tampung,1,15)

//messagebox(ls_tampung,STRING(LI_PANJANG))



Return ls_tampung
    
 
Fungsi Tombol Tekan PDF Print E-mail
Powerbuilder - Tips dan Trik Powerbuilder
Written by -   
Sunday, 14 November 2010 09:26
int li_column_number,li_column_count
boolean lb_enter,lb_dwnrow,lb_keytab,lb_pagedwn
boolean lb_pageup, lb_uparrow

string setting

setting = dw.Object.DataWindow.Label.Sheet
setting = dw.Object.DataWindow.type
  

lb_enter     = keydown(keyenter!)
lb_dwnrow     = keydown(keydownarrow!)
lb_keytab     = keydown(keytab!)
lb_pagedwn     = keydown(keypagedown!)
lb_pageup     = keydown(keypageup!)
lb_uparrow    = keydown(keyuparrow!)

li_column_number = dw.getcolumn()
li_column_count = integer(dw.object.datawindow.column.count)
Read more...
 
Fungsi ini untuk mencari tanggal akhir dari suatu bulan PDF Print E-mail
Written by admin   
Sunday, 14 November 2010 09:23
//Powerbuilder Function
// Fungsi ini untuk mencari tanggal akhir dari suatu bulan  //
// Input  : String Tanggal                                                //  
// Output : Date Tanggal                                                //


// integer li_hari[12] = {31,28,31,30,31,30,31,31,30,31,30,31}
integer li_bulan,li_tahun  //li_tanggal,
//date ld_tanggal

//li_tanggal=integer(mid(tanggal,1,2))
li_bulan=integer(mid(tanggal,4,2))
li_tahun=integer(mid(tanggal,7,4))

IF li_bulan = 12 THEN
    li_bulan = 1
    li_tahun = li_tahun + 1
ELSE
    li_bulan = li_bulan + 1
END IF  

RETURN RelativeDate( Date ( li_tahun, li_bulan, 1) , - 1 )
 
mendisable menu close PDF Print E-mail
Delphi - Tips dan Trik Delphi
unit Unit1;

interface

uses
  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
  Dialogs, StdCtrls;

type
  TForm1 = class(TForm)
    Label1: TLabel;
    procedure FormCreate(Sender: TObject);
  private
    { Private declarations }
  public
    { Public declarations }
  end;

var
  Form1: TForm1;

implementation

{$R *.dfm}

procedure TForm1.FormCreate(Sender: TObject);
var
   hMenuHandle : HMENU;
begin
     hMenuHandle := GetSystemMenu(Form1.Handle, FALSE);
     if (hMenuHandle <> 0) then DeleteMenu(hMenuHandle, SC_CLOSE, MF_BYCOMMAND);
end;

end.
 
Mengambar pada title bar PDF Print E-mail
Delphi - Tips dan Trik Delphi
unit Unit1;

interface

uses
  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
  Dialogs;

type
  TForm1 = class(TForm)
  private
    procedure WMNCPaint(var Msg: TWMNCPaint); message WM_NCPAINT;
    { Private declarations }
  public
    { Public declarations }
  end;

var
  Form1: TForm1;

implementation

{$R *.dfm}

procedure TForm1.WMNCPaint(var Msg: TWMNCPaint);

var
  ACanvas : TCanvas;
begin
  inherited;
  ACanvas := TCanvas.Create;
  try
    ACanvas.Handle := GetWindowDC(Form1.Handle);
    with ACanvas do begin
      Brush.Color := clActiveCaption;
      Font.Name := 'Tahoma';
      Font.Size := 8;
      Font.Color := clYellow;
      Font.Style := [fsItalic, fsBold];
      TextOut(GetSystemMetrics(SM_CYMENU) + GetSystemMetrics(SM_CXBORDER),
              Round((GetSystemMetrics(SM_CYCAPTION) - Abs(Font.Height))/2) + 1,
              ' Teks pada Caption');
    end;
  finally
    ReleaseDC(Form1.Handle, ACanvas.Handle);
    ACanvas.Free;
  end;
end;

end.

Rabu, 30 November 2011

Delphi

I.   Berakit-rakit kehulu berenang ketepian
setelah Anda bersusah-payah dalam mempelajari Dasar Bahasa Pascal, sekarang tibalah waktunya saya membawa Anda ke Program yang Pokok yaitu mempelajari PEMROGRAMAN BAHASA DELPHI. Saya berharap bekal yang telah diberikan pada halaman 1 sampai 7 dapat memudahkan Anda dalam mempelajari PEMROGRAMAN BAHASA DELPHI ini.
Pada Tutorial Dasar-dasar BAHASA DELPHI ini saya menggunakan DELPHI versi 6. Jadi bagi Anda yang mempunyai versi yang lebih tinggi itu lebih baik, sedangkan bagi Anda yang mempunyai versi yang lebih rendah masih bisa digunakan hanya saja mungkin ada beberapa fasilitas yang belum tersedia pada versi-versi sebelumnya. Bagi yang belum punya diharapkan secepatnya membeli Delphi versi 6. ( Download Delphi ).
Mari kita mulai membuka program DELPHI. Ketika pertama kali Anda buka, Anda akan disuguhkan oleh sebuah form kosong tempat kita meletakan unit-unit yang disediakan secara GUI, berbeda dengan PASCAL yang mengandalkan Keyboard, sebaliknya delphi mengandalkan mouse untuk meletakkan unit-unit yang ada. Apa itu unit ?, masih ingatkan yang namanya unit di PASCAL?. Apa sudah lupa.?, uhhh percuma saya kasih keterangan di pengantar PASCAL, buka lagi lah !. .
Tampilan Delphi 6
Tampilan Delphi 6

Command Unit Delphi 6
Command Unit Delphi 6
Dibalik Form kosong yang disediakan oleh Delphi, ada sebuah unit tempat mengetikan event-event program. Coba Anda perhatikan perintah-perintah atau tag yang ada pada unit command delphi tersebut. Hmmm... saya rasa Anda sudah familiar dengan tag-tag tersebut. Ada tag dengan perintah unit standar USES dan ada procedure TYPE. Wow mirip sekali yah dengan PASCAL !. Pada Delphi Anda tidak perlu pusing-pusing menuliskan unit yang akan dipakai, dia akan secara otomatis dituliskan, tapi ingat jangan sok tahu merubah tag-tag yang otomatis dituliskan oleh Delphi, bisa-bisa program yang Anda buat tidak akan berfungsi. Saya perlihatkan itu agar Anda tahu kenapa saya mengenalkan Bahasa Pascal terlebih dahulu kepada Anda dalam mempelajari Delphi ini..
Kembali ke Form kosong. Sebagai perkenalan Anda dengan delphi sekarang coba letakkan unit apa saja terserah Anda. Ada ratusan unit yang disediakan oleh Delphi, sebagai latihan meletakkan unit, pakai saja UNIT STANDARD, disitu ada unit Frames , Main Menu , Pop Up Menu , Button , Edit , Label dan seterusnya. Klik dua kali unit yang akan diletakkan, misal Anda akan meletakkan Button , klik dua kali icon button, maka otomatis akan ditaruh pada form kosong. Rapihkan letak dari unit yang Anda taruh di form dengan DRAG AND DROP kemana saja terserah Anda, asal jangan diluar Form, sebab saya jamin Anda tidak akan bisa meletakkan unit diluar form, coba saja sendiri .
Setelah Anda letakkan unit-unit yang ada secara sembarangan, cobalah Anda klik RUN atau tekan tombol F9. Tidak akan terjadi apa-apa sekalipun Anda tekan tombol button yang Anda letakkan di form kosong dalam mode RUN berkali-kali, sebelum Anda memberikan event pada unit tersebut....! , Apa itu EVENT ?.
Event adalah suatu kejadian atau peristiwa yang memakai hukum sebab akibat, sebagai contoh misalkan saya menjitak kepala Anda.., misalkan..!. Tentunya Anda akan bereaksi dengan menendang saya misalnya atau mungkin Anda akan membalasnya dengan menjitak kepala saya lagi, atau setidaknya Anda akan marah kepada saya. Begitu juga Event dalam Delphi, unit-unit yang Anda letakkan pada form kosong tersebut tidak akan bereaksi sebelum Anda memberikan suatu kejadian yang membuat tombol tersebut bereaksi terhadap unit yang lainnya. Bagaimana caranya membuat EVENT ?, mudah saja sebab Anda sudah mempelajari Bahasa Pascal, hanya sedikit penyesuaian yang perlu Anda lakukan. OK sekarang kita mulai mencoba bagaimana caranya membuat event dalam Delphi, sebelumnya tutup form yang sudah diletakkan unit-unit sampah yang mungkin saja Anda mengikuti saya untuk meletakkan unit-unit tersebut secara tidak karuan. Caranya : Klik File -- Close All kemudian Delphi akan menanyakan kepada Anda Apakah proyek akan disimpan ?, jawab saja tidak. Kemudian klik lagi File -- New -- Pilih Aplication , maka form baru akan dibuatkan lagi oleh Delphi.
Setelah form baru dibuatkan oleh Delphi, sekarang Anda lihat window disebelah kiri. Disitu ada yang namanya OBJECT INSPECTOR. Kalau tidak ada klik View - klik object inspector atau tekan tombol F11. Pada OI Properties ( Selanjutnya saya akan menyebut Object Inspector ini dengan istilah OI, ingat baik-baik sebab cape ketiknya.) cari bacaan ClientHeight dan ClientWidth, rubah nilainya menjadi ClientHeight 200 dan ClientWidth 300 , maka ukuran form kosong yang dibuatkan oleh delphi akan berubah ukurannya menjadi 200 X 300 Pixel. Setelah itu cari di OI kata Caption rubah nama nya menjadi Latihan 1.
Setelah selesai dengan pengaturan ukuran form, sekarang letakkan Unit Label pada form tersebut, Atur posisinya agar berada diatas tapi jangan terlalu atas. Klik sekali unit label1, pada OI rubah Caption nya dengan : Hallo Delphi Saya datang..! , kemudian rubah ukuran font nya dengan cara mengklik FONT pada OI, setelah itu klik tanda ANCHOR yang berbentuk titik 3 ( ... ) disampingnya, maka akan dikeluarkan window untuk merubah ukuran font. Pilih jenis font nya Arial dengan ukuran 16. Masih di OI untuk label1, sekarang cari di OI kata Name, rubah namanya menjadi Teks1. Kemudian cari lagi di OI kata Visible , rubah menjadi False.
Setelah selesai dengan pengaturan Label, sekarang letakkan dua buah Unit Button pada form, atur letaknya secantik mungkin ganti caption untuk button1 menjadi Tampil dan button2 menjadi Sembunyi , setelah itu kita berikan event pada kedua tombol tersebut. Klik dua kali tombol Tampil, maka command event akan dikeluarkan, lalu ketik perintah berikut ini teks1.visible := True; , Kemudian klik tombol Shift+F12 pilih form1, untuk menampilkan form lagi bila terhalangi oleh command event. Setelah form ditampilkan lagi sekarang klik dua kali tombol Sembunyi , pada command event ketik perintah berikut : teks1.visible := False; . Setelah itu tekan tombol Shift+F12 lagi untuk menampilkan form. Perlu diingat, Anda hanya menambahkan perintah diatas saja, sedangkan perintah yang otomatis diberikan oleh delphi tidak perlu dirubah. Lihat cara penulisan event dibawah ini.
procedure Tform1.Button1Click(sender : TObject);   >> dibuat oleh delphi.
begin   >> dibuat oleh delphi.
Ketik disini perintah diatas
end;   >> dibuat oleh delphi.
Setelah semuanya diberi event, sekarang tekan tombol F9 untuk melihat hasil kerja Anda. Kalau Anda benar, maka tampilannya akan seperti gambar dibawah ini. Jika tombol tampil Anda klik maka teks Hallo Delphi saya datang akan ditampilkan, sebaliknya bila tombol sembunyi Anda klik maka teks tersebut akan hilang lagi.
Latihan1
Latihan 1, membuat Event
Nah.. itulah pelajaran membuat event pertama untuk Anda, bagaimana mudah bukan..?, sekarang tombol tersebut berfungsi, karena telah diberikan event untuk tombol tersebut. Simpanlah pekerjaan Anda dengan nama unit Latihan1.pas dan nama proyeknya adalah Latpro1.dpr , Ingat nama file Unit dan nama file proyek tidak boleh sama..
Terlalu mudah...!, Apa..!. OK setelah Anda simpan pekerjaan Anda, Klik file -- Close All. Setelah di close sekarang buka file project yang telah Anda buat, klik file -- open project -- pilih latpro1.dpr -- klik ok. Tambahkan unit-unit baru pada latpro1.dpr yang telah Anda buat dengan dua buah button dan satu buah memo, atur letaknya sehingga seperti gambar dibawah ini :
Latihan1
Modifikasi latihan 1
Rubah caption untuk button3 jadi Rubah Teks dan button4 dengan Selesai , berikan event pada button Rubah Teks dengan teks1.Caption := memo1.Text; dan button Selesai dengan form1.close; Jalankan lagi latpro1.dpr lihat hasilnya. Sekarang teks yang ada di atas yaitu Hallo Delphi saya datang , bisa Anda rubah dengan memasukan teks pada memo dan mengklik tombol Rubah Teks, sedangkan tombol selesai bila di klik maka program akan keluar. Latihlah kemampuan membuat event yang telah Anda pelajari disini dengan merubah-rubah value yang ada pada OI.
Berhubung jari jemari saya sudah pada pegal, selain itu saya juga harus mengatur sisa space yang disediakan oleh Web Hosting ( sisa 1 Mega Bytes ) , maka sampai disini dulu tutorial ini, Insya Allah disambung lagi minggu depan setelah saya membersihkan space di Web Hosting yang sudah tidak terpakai.
Kami juga memohon bantuan dari Anda untuk berpartisipasi menjalankan program Suryatekno, agar bisa memiliki Domain dan Web Hosting sendiri sehingga tidak terbatas lagi seperti saat ini. Untuk lebih jelasnya silahkan Anda menuju Halaman Donasi klik link ini.( Masuk Halaman Donasi ). Atas partisipasi Anda sebelum dan sesudahnya kami ucapkan banyak terima kasih.

DELPHI ADALAH PASCAL TAPI PASCAL BUKAN DELPHI

E. Operator Relasi (Relational Operator) - Operator ini digunakan untuk membandingkan dua buah variabel atau ekspresi yang berbeda antara satu dengan yang lainnya atau sama antara satu dengan yang lainnya. Operator ini mempunyai beberapa Tanda yaitu :
Tanda OperatorKeterangan
= Sama dengan  >>>  Jeruk = Buah
> Lebih besar dari  >>>  5 > 3
< Lebih kecil dari  >>>  3 < 5
< > Tidak sama dengan  >>>  Jeruk < > Komputer
< = Lebih kecil atau sama dengan  >>>  x = 15  ,  x < = 20
> = Lebih besar atau Sama dengan  >>>  x = 15  ,  x > = 10
F. Operator Logika (Logical Operator) - Operator ini digunakan dalam operasi logika yang hanya menghasilkan nilai TRUE atau FALSE. Berbeda dengan Operator Bitwise, operator ini justru membandingkan nilai dari operator Bitwise tersebut. Penggunaan nya sama dengan Operator Bitwise.
G. Operator Alamat (Address Operator) - Adalah operator yang mengakses alamat suatu variabel di memory. Operator ini banyak digunakan bila program yang kita buat berhubungan dengan sistem operasi. Hanya ada dua buah tanda operator yang disediakan oleh pascal untuk mengakses alamat di memory yaitu tanda ( ^ ) dan ( @ ).
Untuk Operator ini saya tugaskan kepada Anda untuk mencari dari media atau situs yang lain, sebab operator yang berhubungan dengan sistem terlalu panjang untuk di uraikan pada tutorial ini. Saya khawatir kapasitas hosting yang disediakan di Web Server yang gratisan ini habis untuk menjelaskan operator ini. Bantulah Kami
H. Operator Himpunan (Set Operator) - Operator ini digunakan untuk program yang bekerja dengan suatu himpunan yang berbentuk array atau larik. Himpunan yang diperbolehkan oleh pascal untuk dijadikan suatu array adalah 256 dengan range antara 0 sampai 255. Contoh penggunaan Set Operator seperti dibawah ini :

{ Program menghitung Huruf 
  by : Suryatekno@2008 }
  
uses crt;
type
  karakter = set of char;
var
  huruf      : karakter;
  teks       : string[255];
  jumlah, I  : word;
begin
  clrscr;
  writeLn('Ketiklah kata  Apa saja dibawah ini :');
  writeLn;
  readLn(teks);
  huruf := ['a'..'z','A'..'Z'];
  jumlah := 0;
   for I := 1 to ord(teks[0]) do
   if teks[I] in huruf then
  jumlah := jumlah+1;
 writeLn;
writeLn('Jumlah huruf yang anda masukan = ',jumlah,' huruf');
 writeLn('Kalau tidak percaya hitung saja sendiri !');
  writeLn;writeLn;
  writeLn('Tekan Enter untuk keluar');
 readLn;
end.
I. Operator String (String Operator) - Operator string adalah suatu operator yang digunakan untuk memanipulasi suatu string atau karakter yang akan ditampilkan pada layar. Operator ini boleh dikatakan wajib untuk Anda kuasai. sebab semua program pascal yang membutuhkan tampilan dilayar menggunakan operator string. Karena wajib, Bantulah Kami ! jadi walaupun pembahasan nya agak panjang saya berusaha akan menjelaskannya seminimal dan sejelas mungkin, agar Anda paham mengenai operator string ini. (sungguh menyakitkan, karena keterbatasan hiik Bantulah Kami ! ). Kita lanjutkan, elemen-elemen Operator string ini antara lain :
  1. Str - Elemen str digunakan untuk merubah nilai numerik menjadi string. Struktur penulisan STR sebagai berikut :
    Str( X : Y : Z , V ) >>> X = nilai numerik , Y = banyaknya angka , Z = banyaknya angka dibelakang koma , dan V = nama variabel string perubahnya.

    uses crt;
    var
      x     : integer;
      z1,z2 : string[8];
    begin
     clrscr;
     x := 123;
     Str(x:3,z1);
     Str(x:3,z2);
     writeLn('Nilai x = ',x);
     writeLn('Operasi numerik x + x = ',x+x);
     write('Operasi string x + x = ');
     writeLn(z1+z2);
     readLn;
    end.
    
  2. Val - Elemen Val digunakan untuk merubah nilai string menjadi Numerik. Struktur penulisan Val sebagai berikut :
    Val( X , Y , Z ) >>> X = nilai string , Y = variabel perubahnya , Z = tanda error. Tanda Error diberikan bila kita ingin mengetahui dimana letak error atau kesalahan operasi Val dari suatu string. Bila terjadi error maka nilai numerik dianggap kosong atau nol, sekarang cobalah jalankan program dibawah ini kemudian lihat hasilnya, lalu Anda rubah nilai x := '123'; menjadi x := '123C' , maka operasi numerik akan menghasilkan angka 0 dan error ditunjukan dengan angka 4, berarti ada kesalahan pada karakter ke 4 yaitu karakter C.

    uses crt;
    var
      x     : string[8];
      z1,z2 : integer;
    begin
     clrscr;
     x := '123';
     Val(x,z1,z2);
     writeLn('nilai x = ',x);
     writeLn('Operasi numerik x + x = ',z1+z1);
     write('Operasi string x + x = ');
     writeLn(x+x);
     writeLn('Error berada pada angka ke : ',z2);
     readLn;
    end.
    
  3. DELETE - Elemen delete digunakan untuk membuang karakter-karakter yang di inginkan. Struktur penulisan DELETE sebagai berikut :
    DELETE(X,Y,Z) >>> X = String , Y = Urutan string yang akan dibuang , Z = Banyaknya string yang dibuang. Pada contoh program ini kata SURYATEKNO menjadi SURYANO, dengan membuang 3 karakter yang dimulai dari karakter ke 6

    uses crt;
    
    var
      nama    : string[10];
      buang   : integer;
    begin
      clrscr;
      nama := 'SURYATEKNO';
      buang := 6;
      delete(nama,buang,3);
      writeln(nama);
      readln;
    end.
    
  4. COPY - Elemen COPY digunakan untuk mengcopy sejumlah karakter string yang diinginkan. Struktur penulisan COPY sebagai berikut :
    COPY(X , Y , Z ) >>> X = String , Y = Urutan string , Z = Banyaknya string yang di Copy.

    uses crt;
    
    var
     kata  : string[10];
    begin
     clrscr;
     kata := 'SURYATEKNO';
     writeLn('Kata yang akan di copy : ',kata);
     writeLn;
     write('Copy 5 karakter pertama  : ');
     writeLn(copy(kata,1,5));
     writeLn;
     write('Copy 5 karakter terakhir : ');
     writeLn(copy(kata,6,5));
     writeLn;writeLn;
     writeLn('Tekan Enter untuk keluar');
     readLn;
    end.
    
  5. ConCat - Elemen ConCat digunakan untuk menambahkan suatu string pada string lainnya yang sudah ada. Struktur penulisan ConCat sebagai berikut :
    ConCat(X1,X2,X3,..,Xn) >>> X1 sampai Xn = String yang akan ditambahkan.

    uses crt;
    const
     x1 = 'Saya';
     X2 = 'belajar';
     x3 = 'Pascal';
     x4 = 'dari';
     x5 = 'http://www.suryascience.co.nr';
     xn = ' ';
    begin
     clrscr;
     writeLn(concat(x1,xn,x2,xn,x3,xn,x4,xn,x5));
     writeLn;
     writeLn('Enter untuk keluar..!');
     readLn;
    end.
    
  6. Pos - Elemen Pos digunakan untuk mencari posisi substring yang ada pada string yang lainnya. Elemen Pos ini menghasilkan nilai Integer dari suatu barisan string. Struktur penulisan elemen Pos sebagai berikut :
    Pos( X , Y ) >>> X = Substring yang dicari , Y = String yang mengandung Substring.

    uses crt;
    Var
     ketik   : string[255];
     huruf   : char;
     begin
      huruf := 'a';
       clrscr;
        write('Ketik kata apa saja yang mengandung ');
         writeLn('huruf a kecil dibawah ini :');
          readLn(ketik);
          writeLn;
         writeLn('Kata yang Anda Ketik : ',ketik);
        writeLn;writeLn;
       writeLn('Huruf a pertama  yang Anda ketik');
      write('berada pada urutan ke - ',Pos(huruf,ketik));
     writeLn(' dari kata yang Anda ketik');
    writeLn;
    readLn;
    end.
    
  7. Length - Elemen Length digunakan untuk menghitung jumlah substring dari string yang dikehendaki. Elemen Length ini menghasilkan nilai Integer dari suatu barisan string. Struktur penulisan elemen Length sebagai berikut :
    Length( X ) >>> X = Substring yang dihitung dari sebuah string. Contoh dibawah ini modifikasi dari elemen Pos diatas yang diganti dengan elemen Length.

    uses crt;
    Var
      ketik   : string[255];
    begin
     clrscr;
      writeLn('Ketik kata apa saja  dibawah ini :');
       readLn(ketik);
        writeLn;
         writeLn('Kata yang Anda Ketik : ',ketik);
         writeLn;writeLn;
        write('Jumlah Huruf  yang Anda ketik ada ');
       writeLn(Length(ketik),' huruf termasuk spasi.');
      writeLn;
     readLn;
    end.
    
  8. CHR - Elemen CHR digunakan untuk merubah nilai bytes menjadi karakter ASCII. Struktur penulisan elemen CHR sebagai berikut :
    CHR( X ) >>> X = angka dari 0 sampai 255.

    uses crt;
    var
     x    : byte;
     lagi : char;
    begin
     lagi := 'Y';
      while (upcase(lagi)='Y') do
       begin
       clrscr;
      write('Kode ASCII yang ingin ');
     write('Anda Lihat ! (0-255) : ');readLn(x);
     writeLn;
      writeLn('Kode ASCII nya adalah : ',CHR(x));
       writeLn;
        write('Mau lihat lagi ? (y/t) : ');
        readLn(lagi);
      end;
    end.
    
  9. ORD - Elemen ORD kebalikan dari CHR yaitu memasukan nilai ASCII untuk dirubah menjadi bentuk Integer. Struktur penulisan elemen ORD sebagai berikut :
    ORD( X ) >>> X = Karakter ASCII. Contoh kode ASCII untuk huruf kapital S adalah 83

    uses crt;
    var
     x    : char;
     lagi : char;
    begin
     lagi := 'Y';
     while (upcase(lagi)='Y') do
      begin
       clrscr;
        writeLn('Ketik huruf atau karakter yang ingin ');
      write('Anda lihat nilai kode ASCII nya ! : ');readLn(x);
     writeLn;
      writeLn('Nilai Kode ASCII ',x,'  adalah : ',ORD(x));
       writeLn;
        write('Mau lihat lagi ? (y/t) : ');
       readLn(lagi);
      end;
    end.
    
  10. UpCase - Elemen Upcase digunakan untuk merubah huruf kecil menjadi huruf besar. Struktur penulisan elemen UpCase sebagai berikut :
    UpCase( X ) >>> X = huruf yang akan dirubah.

    uses crt;
    var x : char;
    begin
     clrscr;
       write('Ketik satu Huruf kecil  : ');readLn(x);
       writeLn('Huruf yang diketik jadi : ',UpCase(x));
     readLn;
    end.
    
  11. Insert - Elemen Insert digunakan untuk menyisipkan sebuah karakter pada karakter yang sudah ada. Struktur penulisan elemen Insert sebagai berikut :
    Insert( X , Y , Z ) >>> X = String yang akan di sisipkan , Y = String yang disisipkan , Z = Urutan string tempat penyisipan string. Maksimum panjang string yang disisipkan dengan yang akan disisipkan berjumlah 255 karakter.

    uses crt;
    var str_asli : string[25];
    begin
     str_asli := 'Surya Putra Tenokindo';
     clrscr;
       write('String Asli sebelum disipkan : ');
       writeLn(str_asli);
       writeLn;
       writeLn('Menyisipkan huruf k pada kata Tenokindo.');
       writeLn;
       Insert('k', str_asli , 15);
       write('String yang sudah disisipkan jadi : ');
       writeLn(str_asli);
     readLn;
    end.
    

DELPHI ADALAH PASCAL TAPI PASCAL BUKAN DELPHI

3.    DEKLARASI TIPE (TYPE DECLARATION)
Deklarasi tipe biasanya digunakan bila kita bekerja dengan ARRAY atau larik. Deklarasi Tipe mempunyai banyak sekali jenis dan type yang ditanganinya, saya tidak bisa menjelaskannya satu persatu kepada Anda dikarenakan terbatasnya space atau ruang yang disediakan pada situs ini, disamping itu pokok bahasan tutorial ini adalah PEMROGRAMAN DELPHI, saya kuatir nantinya pokok bahasan tersebut tidak bisa dimuat karena keterbatasan ini. Untuk itu saya sekali lagi menugaskan kepada Anda untuk mencari dari situs atau media lain mengenai DEKLARASI TYPE ini.
Contoh Program yang menggunakan deklarasi tipe
{ Program   : Contoh penggunaan deklarasi tipe
  Design By : Suryatekno©2008 }

uses crt;

type J = array[1..8] of string[20];

const
   Jadwal : J=('Mandi','Sarapan','Meeting',
               'Menemui Pak Badrun','Pulang',
               'Mandi','Makan Malam','Istirahat');
   var
    I : word;

    begin
      clrscr;
      writeLn('Jadwal Hari ini');
      writeLn('===============');
      writeLn;
        for I:=1 to 8 do
          writeLn('  ',I,'. ',Jadwal[I]);
          writeLn('Tekan enter untuk Keluar.....');
     readLn;
  end.


4.    DEKLARASI LABEL (LABEL DECLARATION)
Deklarasi label adalah suatu deklarasi yang digunakan untuk memberi tanda (MARK) pada program agar program dapat berpindah atau meloncat pada tanda (MARK) yang ditentukan. Deklarasi ini mirip dengan bahasa PEMROGRAMAN BASIC yang menggunakan NOMOR BARIS untuk berpindah dari baris ke baris. Penulisan Deklarasi label ini harus menggunakan perintah LABEL yang dipisahkan dengan tanda koma ( , ).
Contoh program yang menggunakan deklarasi Label.
{ Program : Memilih dengan deklarasi Label
  Design By : Suryatekno©2008 }

uses crt;
label
 1,2,3,4,keluar; {Deklarasi label yang ditentukan}

var
ketik,ulang : char;

begin

1: { label ke - 1 sebagai pokok program }
 clrscr;
 writeLn('Menu Masakan Hari ini');
 writeLn('---------------------');
 writeLn;
 writeLn('a. Nasi Putih + Rendang');
 writeLn('b. Nasi Putih + Telur Dadar');
 writeLn('c. Nasi Putih + Tempe Goreng');
 writeLn;
 writeLn('Masukan Huruf a , b atau c untuk Pesanan Anda.');
 write('Pilihan Anda..? ');readLn(ketik);
      
{ Jika user memilih pilihan tersebut, maka program akan
  meng-eksekusi program sesuai dengan LABEL yang dituju }
 
    if ketik='a' then 
      begin            
       goto 2;
      end;
       if ketik='b' then
        begin
         goto 3;
        end;
         if ketik='c' then
          begin
           goto 4;
          end

{ User tidak memilih atau salah dalam memasukan pilihan
  selain yang ditentukan maka program akan meng-eksekusi
  program yang lainnya, dalam program ini akan ditampil
  kan kalimat "Anda tidak pesan apa-apa." lalu 
  meng-eksekusi LABEL keluar yang mengakhiri program }
   
          else
          begin
           clrscr;
           writeLn('Anda tidak pesan apa-apa.');
           writeLn('Mungkin Anda tidak Lapar..);
           writeLn;
           writeLn('Tekan Enter untuk keluar..');
           readLn;
           goto keluar;
          end;

2: { label ke - 2 bila user memilih pilihan a }
 clrscr;
 writeLn('Pesanan Anda Nasi Putih + Rendang, Terima Kasih.');
 writeLn;
 write('Pilih Lagi..(y/t) ? ');ReadLn(ulang);
       if (ulang='y') or (ulang='Y') then
          begin
            goto 1;
          end
       else
          begin
            goto keluar;
          end;

3: { label ke - 3 bila user memilih pilihan b }
 clrscr;
 writeLn('Pesanan Anda Nasi Putih + Telur Dadar,Terima Kasih.');
 writeLn;
 write('Pilih Lagi..(y/t) ? ');ReadLn(ulang);
      if (ulang='y') or (ulang='Y') then
         begin
           goto 1;
         end
      else
         begin
           goto keluar;
         end;

4: { label ke - 4 bila user memilih pilihan c }
 clrscr;
 writeLn('Pesanan Anda Nasi Putih + Tempe Goreng,Terima Kasih.');
 writeLn;
 write('Pilih Lagi..(y/t) ? ');ReadLn(ulang);
      if (ulang='y') or (ulang='Y') then
         begin
           goto 1;
         end
      else
         begin
           goto keluar;
         end;

keluar: { label keluar yang mengakhiri program }

end.
Penulisan label bebas sesuai dengan keinginan anda, bisa sebuah kata atau karakter, yang penting nama label tidak boleh sama dengan nama variabel, type, atau konstanta yang anda tetapkan. Bila itu terjadi maka kemungkinan akan terjadi konflik variabel dalam pengeksekuasian program. Contoh diatas akan terus dilakukan selama anda memilih pilihan yang di tetapkan. Ada cara yang lebih praktis ketimbang menggunakan LABEL yaitu dengan printah CASE - OF yang akan dibahas nanti.
4.    DEKLARASI PROSEDUR (PROCEDURE DECLARATION)
Deklarasi prosedur adalah sebuah deklarasi yang dibuat dalam program agar bisa digunakan lagi dalam program, jadi deklarasi prosedur merupakan sebuah SUB PROGRAM yang bisa dipanggil sewaktu-waktu dalam program bila dibutuhkan. Dalam sebuah program yang terstruktur, Deklarasi Prosedur ini sangat dibutuhkan agar program menjadi lebih simpel. Untuk mengerti arti dari PROSEDUR ini saya berikan contoh kasus sebagai berikut : misalkan ada sebuah proses yang yang harus dikerjakan berulang kali untuk menampilkan kata "SURYATEKNO" , maka dalam program yang terstruktur kata tersebut disimpan dalam sebuah prosedur yang dapat dipanggil lagi dimanapun kata tersebut diperlukan.
Contoh program yang menggunakan Deklarasi Prosedur.
uses crt;

{ini adalah prosedur dgn nama s
 yang akan menampilkan kata suryatekno}

Procedure s; 
 begin
  write('Suryatekno');
 end;

{akhir prosedur}

{program utama}

 begin
  clrscr;
  s;   { prosedur yang dipanggil }

  WriteLn(' adalah suatu organisasi yang menghimpun');
  writeLn('orang-orang yang mempunyai minat sama.');
  writeLn;

  s;   { prosedur yang dipanggil }

  writeLn(' juga merupakan sebuah kelompok belajar.');
  writeLn;
  writeLn('Tekan Enter untuk keluar...');
  readLn;
end.
{akhir program utama}
Prosedur mempunyai banyak jenisnya, disini saya hanya akan menjelaskan suatu prosedur yang mudah-mudah saja agar anda sebagai pemula mengerti dalam menggunakan prosedur ini.
Prosedur yang paling terkenal adalah Prosedur REKURSI (RECURSION PROCEDURE) . Prosedur ini adalah sebuah prosedur yang menggunakan sendiri prosedurnya, jadi prosedur ini adalah prosedur yang memakan prosedur . Contoh kasus proses rekursi yang rumit adalah sebagai berikut :
Anda diminta untuk memindahkan sebuah piringan yang berbeda satu dengan yang lainnya secara satu persatu dari sebuah tumpukan ke tumpukan yang lainnya, dengan syarat piringan yang lebih kecil tidak boleh berada dibawah piringan yang lebih besar, dan pemindahan nya harus satu persatu tidak boleh sekalian. Lihat gambar.
Menara Hanoi
Rekursi yang rumit, disebut juga sebagai MENARA HANOI
Anda harus memindahkan piringan yang berjumlah 20 buah piringan yang berbeda dari menara A ke menara C, untuk keperluan tersebut Anda diberikan sebuah menara lagi yaitu menara B. Yang menjadi pertanyaan adalah : Berapa kali Anda memindahkan sebuah piringan yang sama, dan berapa langkah yang Anda tempuh serta berapa lama Anda memindahkannya ?. Sebagai bantuan lagi Anda diberikan contoh untuk 2 buah piringan sebagai berikut : Pertama Anda pindahkan piringan yang ke 2 ke menara B lalu pindahkan piringan ke 1 ke menara C setelah itu pindahkan piringan ke 2 yang berada di menara B ke menara C selesai ( Ingat piringan yang lebih kecil tidak boleh berada dibawah piringan yang besar..! ). Sekarang cobalah untuk 20 piringan yang ditugaskan kepada anda !.
Pusing menghitung nya yah..?, kalau pusing berapa langkah yang Anda tempuh untuk tugas itu, dibawah ini saya berikan contoh program yang memakai prinsip REKURSI untuk menghitung langkah yang diperlukan. serta akan diperlihatkan piringan mana saja yang akan dipindahkan terlebih dahulu, Anda bisa saja memasukan 1000 piringan misalnya, tetapi Anda harus sabar menunggunya, sebab bila Anda memasukan waktu yang diinginkan sebesar 1 detik saja untuk setiap piringan, berarti Anda harus sabar menunggu program untuk menghitung dan memperagakan kepada Anda selama 3 Hari. Untuk contoh ini cobalah Anda masukan Tugas memindahkan piringan diatas dengan bantuan program ini..hehehe malas ni yeee .
Uses crt;
{ Awal Prosedur Rekursi }
procedure MenaraHanoi(Jumlah      : Integer;
          Sumber,Tujuan,Bantuan   : Char;
          var Langkah,Jumlah_A,
   Jumlah_B,Jumlah_C,Waktu : Integer);
Var
  Baris_Sumber,Kolom_Sumber,
  Baris_Tujuan,Kolom_Tujuan : Integer;
Begin
  if Jumlah > 0 Then
   Begin
    MenaraHanoi(Jumlah-1,Sumber,Bantuan,Tujuan,
                Langkah,Jumlah_A,Jumlah_B,Jumlah_C,Waktu);
    Langkah := Langkah+1;
     if Sumber = 'A' Then
      Begin
       Kolom_Sumber := 30;
       Baris_Sumber := 24-Jumlah_A;
       Jumlah_A     := Jumlah_A-1;
     End
     Else
      if Sumber = 'B' Then
       Begin
        Kolom_Sumber := 40;
        Baris_Sumber := 24-Jumlah_B;
        Jumlah_B     := Jumlah_B-1;
       End
     Else
      Begin
       Kolom_Sumber  := 50;
       Baris_Sumber  := 24-Jumlah_C;
       Jumlah_C      := Jumlah_C-1;
      End;

  if Tujuan = 'A' Then
  Begin
   Kolom_Tujuan := 30;
   Jumlah_A     := Jumlah_A+1;
   Baris_Tujuan := 24-Jumlah_A;
  End
  Else
   if Tujuan = 'B' Then
    Begin
     Kolom_Tujuan := 40;
     Jumlah_B     := Jumlah_B+1;
     Baris_Tujuan := 24-Jumlah_B;
    End
    Else
     Begin
      Kolom_Tujuan := 50;
      Jumlah_C     := Jumlah_C+1;
      Baris_Tujuan := 24-Jumlah_C;

     End;

Delay(Waktu*1000);
GotoXY(Kolom_Sumber,Baris_Sumber); Write(' ');
GotoXY(Kolom_Tujuan,Baris_Tujuan); Write(Jumlah);
GotoXY(18,24); Write(Langkah);

MenaraHanoi(Jumlah-1,Bantuan,Tujuan,Sumber,
            Langkah,Jumlah_A,Jumlah_B,Jumlah_C,Waktu);
 End;
End;
{Akhir Rekursi}

{Program Utama}
Var
  Jumlah, Langkah            : Integer;
  Sumber,Bantuan,Tujuan      : Char;
  I,Baris                    : Integer;
  Jumlah_A,Jumlah_B,Jumlah_C : Integer;
  Waktu                      : Integer;

  Begin
  ClrScr;
  Write('Berapa Piringan Yang akan dipindah ? ');
  ReadLn(Jumlah);
  Write('Waktu yang Anda inginkan (0-32) detik ? ');
  ReadLn(waktu);
   ClrScr;
   GotoXY(25,24); WriteLn(' Sumber  Bantuan   Tujuan');
   For I:=Jumlah DownTo 1 Do
    Begin
     Baris := 23-(Jumlah-I);
     GotoXY(30,Baris); WriteLn(I);
    End;

  Langkah  := 0;
  Sumber   :='A';
  Bantuan  :='B';
  Tujuan   :='C';
  Jumlah_A := Jumlah;
  Jumlah_B := 0;
  Jumlah_C := 0;

   GotoXY(1,24); Write('Jumlah Langkah = ');
    MenaraHanoi(Jumlah,Sumber,Tujuan,Bantuan,
                Langkah,Jumlah_A,Jumlah_B,Jumlah_C,Waktu);
   ReadLn;
  End.
{Akhir Program Utama}
5.    DEKLARASI FUNGSI (FUNCTION DECLARATE)
Deklarasi fungsi adalah deklarasi gabungan antara deklarasi Prosedur, type dan variabel. Kumpulan deklarasi ini disediakan oleh pascal untuk mempermudah dalam penyusunan program sehingga berbentuk sebuah fungsi. Pada sebuah fungsi komponen-komponen dari ketiga deklarasi tersebut dijadikan satu kesatuan yang dapat digunakan pada program yang majemuk. Adapun tata cara penulisan deklarasi fungsi adalah sebagai berikut :
Tata Cara Penulisan Deklarasi Prosedur
Tata Cara Penulisan Deklarasi Fungsi
Dari gambar diatas terlihat bahwa ketiga deklarasi yang telah diuraikan sebelumnya dijadikan satu kesatuan yang lebih simple dan praktis. Untuk lebih jelasnya cobalah Anda ketik di editor Pascal program dibawah ini, setelah itu Anda jalankan program tersebut dengan perintah RUN.
{ Program contoh Deklarasi fungsi
  create by : Suryatekno@2008 }

Function Hasil(A,B,C : longint) : longint;
  Begin
    Hasil  :=  A*A+B*B+C;
  end;
  
   Var X,Y,Z : longint;
    Begin
   WriteLn('Hasil dari X^2 + Y^2 + Z adalah..?');
   Write('Jika Nilai  X = ');ReadLn(X);
   Write('Dan Nilai   Y = ');ReadLn(Y);
   Write('Serta Nilai Z = ');ReadLn(Z);
   Write('Maka Hasil dari X^2 + Y^2 + Z');
   WriteLn(' adalah : ',Hasil(X,Y,Z); 
   {Hasil - adalah nama fungsi yang dipanggil}
   WriteLn;
   WriteLn('Tekan Enter untuk Keluar..');
   ReadLn;
 end.
Dari contoh program diatas, mungkin sebagian dari Anda ada yang bertanya mengapa fungsi yang dinyatakan dengan variabel-variabel A,B dan C bisa berhubungan dengan Variabel X,Y dan Z ?. Begini..,Fungsi yang dijabarkan dengan variabel A,B,C hanya merupakan operasi yang harus dikerjakan oleh fungsi Hasil := A*A+B*B+C; , jadi Variabel A,B dan C tidak bernilai atau kosong. Sedangkan Variabel X,Y dan Z adalah Variabel Identifier (Pengenal) yang Ada nilainya dan nilai ini harus dilaksanakan oleh fungsi seperti yang dikehendaki. Untuk lebih jelas lagi Sekarang cobalah Anda rubah baris program WriteLn(' adalah :,Hasil(X,Y,Z); dengan mengganti variabelnya dengan A,B dan C kemudian Anda RUN lagi, maka COMPILER PASCAL akan mengeluarkan peringatan bahwa variabel A,B,dan C tidak diketahui identitasnya (Unknow Identifier), sebab A,B dan C tidak bernilai. Bagian inilah yang harus Anda Pahami dan Perhatikan dengan serius tentang Tata Cara membuat Deklarasi Fungsi.
Kalau diterjemahkan dalam konteks bahasa manusia, perintah Hasil(X,Y,Z) adalah : Kerjakan Nilai yang ada dalam kurung, yang nilainya dimasukan melalui input keyboard dengan operasi Hasil , Dimana operasi tersebut adalah A*A+B*B+C dengan A sebesar X, B sebesar Y, dan C sebesar Z.. Paham..!!, Kalau belum paham juga saya menyerah.., tidak bisa menerangkan lagi kepada Anda secara detail mengenai fungsi ini, dan dapat membuat Anda mengerti.