P. 1
Modul Pemrograman dasar

Modul Pemrograman dasar

|Views: 124|Likes:
Published by Tomi Wijaya Lauw
modul pemrograman dasar SMK dan Kuliah Semester awal
modul pemrograman dasar SMK dan Kuliah Semester awal

More info:

Published by: Tomi Wijaya Lauw on Jul 31, 2013
Copyright:Attribution Non-commercial

Availability:

Read on Scribd mobile: iPhone, iPad and Android.
download as PDF, TXT or read online from Scribd
See more
See less

12/09/2013

pdf

text

original

MODUL PEMROGRAMAN DASAR PASCAL dan DELPHI 7

Guru Mata Palajaran

HERUL HERDIANA

SMK HANDAYANI BANJARAN TEKNIK KOMPUTER JARINGAN – ADMINISTRASI PERKANTORAN BANDUNG 2010
1

KATA PENGANTAR

Bissmillahir’rahmanirrahim Puji dan syukur kita panjatkan ke hadirat Allah SWT, Shalawat serta salam senantiasa tercurah limpah kepada nabi besar kita Muhammad SAW, kepada sahabatnya dan sampai kepada kita selaku umatnya, Amin. Alhamdullilah, setelah melakukan pembelajarann dan praktik, akhirnya selesai juga modul Pemrograman Dasar Pascal dan Delphi, yang akan Kami gunakan di lingkungan SMK HANDAYANI Banjaran. Kedua mata pelajaran ini sengaja diperingkas agar siswa dapat memahami dasar dari pada kedua Pemrograman tersebut. Pada modul ini, Siswa ditekankan untuk lebih memperdalam tanpa menunggu Guru Mata Pelajaran yang memberikan materi pada Mata Pelajaran Pemrograman ini. Penulis menyadari bahwa isi modul ini jauh dari sempurna, oleh karena itu Penulis sangat menerima saran dan kritik untuk memperbaiki isi dari pada modul ini. Mudah-mudahan dengan mempelajari isi modul ini, dapat meningkatkan wawasan akan Pemrograman bagi Siswa yang baru memulai mempelajari

Pemrograman, terutama yang dibahas pada modul ini yang seyogyanya hanya didapatkan di Perguruan Tinggi saja. Akhir kata Penulis mengucapkan sekian dan terima kasih.

Arjasari,

Juni 2010

Penyusun,

Dadang Hermawan, S.Pd Kepala SMK HANDAYANI Banjaran

Herul Herdiana Mobile : 0857.2006.6481
2

MODUL 1 PENDAHULUAN Pascal merupakan suatu bahasa komputer tingkat tinggi yang dibuat sekitar tahun 1970 oleh Niklaus Wirth dan digunakan untuk pendidikan komputer. Nama Pascal diambil dari seorang ahli matematika yang bernama Blaise Pascal yang menemukan mesin hitung pertama. Bahasa Pascal dirancang untuk menyelesaikan masalah dari berbagai kalangan pemakai, mulai dari para mahasiswa, pendidik, dan ilmuwan. Salah satu kompiler pascal yang terkenal dan tercepat adalah Turbo PASCAL yang dibuat oleh perusahaan Borland. Adakah versi Turbo Pascal untuk pemrograman Visual ? Pada trend pemrograman Visual, perusahaan Borland mengeluarkan Borland Delphi yang menggunakan dasar dialek Pascal pada lingkungan pemrograman Visual. Apa artinya Pascal adalah bahasa pemrogram terstruktur ? Pascal adalah suatu bahasa pemrograman terstruktur. Hal tersebut berarti semua program yang anda buat harus terstruktur dan teratur, dalam hal ini ada pemakaian goto dan jump. Bagaimana Struktur program pascal yang paling sederhana ? Perintah Input : Perintah Pascal yang digunakan untuk memasukkan/menginputkan data. Bentuk perintah: Read dan Readln Struktur penulisan: Read(nama variabel); Readln(nama Variabel) Perintah Output: Perintah Pascal yang digunakan untuk menampilkan/mengoutputkan data. Bentuk perintah: Write : setelah menampilkan data atau teks, kursor berada tepat disamping kanan data yang ditampilkan. Write : setelah menampilkan data atau teks, kursor berada pada baris berikutnya. Struktur penulisan:
3

write(nama variabel); write(‘teks’); writeln(nama Variabel); writeln(‘teks’); Contoh: Buat program sederhana untuk Menghitung Luas Persegi Panjang: Program LuasPersegiPanjang; Var Luas, Panjang, Lebar : integer; Begin Readln(panjang); Readln(Lebar);Luas:= Panjang*Lebar; Writeln(‘Luas Persegi Panjang adalah:’,Luas); Readln; End. Tampilan pada lembar kerja Pascal, Menjalankan program dengan perintah: Ctrl+F9(tekan tombol Ctrl dan F9 bersama-sama). Struktur program pascal yang paling sederhana adalah : uses ...; var ...; begin .... {Your program is here} end. Adapun struktur dasar suatu program pascal adalah sebagai berikut : program ... ; { Program heading } uses label const type var ... ; { Uses clause } ... ; { Labels } ... ; { Constants } ... ; { Types } ... ; { Variables }

procedure ... ; { Procedures } function ... ; { Functions }
4

begin statement; ... end. Program heading Judul program dalam Turbo Pascal bersifat optional dan tidak ada pengaruhnya dalam program. Jika ditulis akan memberikan nama program dan suatu daftar parameter optional Contoh : Program Perhitungan (Input,Output); Uses Clause Bagian uses clause digunakan untuk menentukan library yang dibutuhkan saat proses program. LIBRARY merupakan file penyimpan subroutine yang secara berulang digunakan saat proses program. Library ini diistilahkan sebagai unit dalam Turbo PASCAL yang terdiri dari SYSTEM, OVERLAY, GRAPH, DOS, CRT yang ditempatkan dalam file TURBO.TPL. Contoh : Uses Crt; (*menggunakan Unit Crt *) Perhatian : Unit system merupakan unit yang secara otomatis akan disertakan dalam setiap program, unit inilah mengatur semua perintah dasar input dan output pada Pascal. Sedangkan unit-unit lain hanya akan disertakan bila kita pilih pada bagian uses. Declaration Bagian ini meliputi deklarasi untuk label, const, type, var, procedure dan function.Syarat terpenting dalam pembentukan suatu program adalah, bahwa setiap variabel, type non-standard, label, procedure non-standard, serta function non-standard yang dipakai didalamnya harus nyatakan (deklarasi) terlebih dahulu pada bagian deklarasi. Setiap deklarasi tersebut harus bersifat unik (tidak boleh serupa satu sama yang lain). Penulisan nama dalam deklarasi tersebut harus memenuhi syarat-syarat sebagai berikut : panjang nama maximum 63 character, diawali dengan alphabet tidak ada special character kecuali tanda garis bawah ("_")
5

{ Statements }

dimana program

itu berkomunikasi. Daftar itu terdiri

dari sederetan

indentifier yang diakhiri dengan tanda kurung dan dipisahkan dengan tanda koma.

. '3'.. Bagaimana membuat keterangan ? Untuk membuat program anda menjadi mudah dibaca dan dimengerti.. Statement Bagian ini merupakan inti dari program.. Segala yang ada pada bagian uses maupun deklarasi merupakan pendukung terhadap isi program. dan masih terbagi menjadi Integer Type variable yang beguna untuk pengolahan data yang bulat. type ini masih terbagi atas berberapa menurut jangkauan data dan ukurannya : Type Jangkuan Ukuran Shortint -128. Ordinal types Type data yang mempunyai urutan pasti.65535 16 bit Char Type variabel yang berguna untuk pengolahan character ASCII.255 8 bit Word 0. Seluruh perintah dan urutannya serta proses Input/Output dalam program perlu disusun secara teratur oleh penyusun program. Cara penulisan ini adalah : Var <nama var> : <type variable>. Type data apa saja yang disediakan Turbo Pascal ? Adapun type variable yang disediakan pada TURBO PASCAL : 1. type character ini penulisannya ditandai dengan dua buah petik tunggal seperti : 'A'.tidak boleh serupa dengan reserved word (kata tercadang) tidak boleh serupa dengan indentifier lainnya. Variabel Declaration Setiap variabel yang digunakan dalam program harus didefinisikan terlebih dahulu sebelum digunakan.127 8 bit Integer -32768.2147483647 32 bit Byte 0.32767 16 bit Longint -2147483648. atau (* ini adalah keterangan *).#7 untuk menyatakan ' harus ditulis '''' Boolean 6 .'*'. Untuk membuat keterangan gunakan tanda kurawal { ini adalah keterangan }. maka perlu diberi keterangan yang akan diabaikan oleh kompiler..

9...3. 2.Pengurangan Pengurangan * Perkalian Perkalian / Pembagian Pembagian DIV Hasil bagi MOD Sisa Bagi Operator Integer Type Boolean Type NOT Bitwise Negation Logical Negation AND Bitwise AND Logical AND OR Bitwise inclusive OR Logical inclusive OR XOR Bitwise exclusive OR Logical exclusive OR SHL Bitwise shift-left SHR Bitwise shift-right Operator relasi yang mengembalikan hasil Boolean Operator Fungsi := Menyatakan nilai = Sama dengan <> Tidak sama dengan < Lebih kecil > Lebih besar <= Lebih kecil atau sama dengan 7 ..4e-4932.7e38 11-12 digit 6 bit 7-8 digit 4 bit Single 1.1e4932 19-20 digit 10 bit Comp -9.5e-45.. Real types Type variable yang beguna untuk pengolahan data yang tidak bulat.1.1.Type varibale yang berguna untuk pengolahan hal yang hanya mempunyai dua ketentuan yaitu benar(TRUE) dan salah(FALSE) saja..2e18 19-20 digit 8 bit Untuk pengolahan type variabel diatas di sediakan berbagai jenis operator antara lain : Operator Integer Type Real Type + Penjumlahan Penjumlahan .1.9e-39. untuk type real ini juga terbagi atas beberapa : Type Jangkauan Ketelitian Ukuran Real 2.0e-324.7e308 15-16 digit 8 bit Extended 3.2e18.4e38 ³ 7-8 Double 5.

Perintah Readln dapat digunakan untuk membaca masukan dari pemakai dan menyimpannya ke suatu variabel. Melompati pemanggil subrutin. Kunci F1 F2 F3 F4 F5 F6 F7 F8 F9 F10 Alt + F1 Alt + F3 Alt + F5 Alt + F6 Alt + F9 Alt + B Alt + C Alt + D Alt + E Alt + F Alt + O Alt + R Fungsi Mengaktifkan jendela pertolongan. Melacak kedalam subrutin.>= Lebih besar atau sama dengan Bagaimana menampilkan tulisan ke layar ? Pascal menyediakan perintah Write dan Writeln yang dapat anda gunakan untuk menampilkan tulisan ke layar. Mengaktifkan menu run. Mengakaktifkan menu file. Mengeksekusi program sampai posisi kursor. Mengaktifkan menu debug. Memperbesar atau memperkecil jendela yang aktif. Mengganti jendela yang aktif. Mengganti isi jendela yang aktif. Mengaktifkan editor. Mengkompilasi program. Mengaktifkan menu Break / Watch. Memanggil program kedalam editor. 8 Ekivalen menu File / Save File / Load Run / Go to cursor Run / Trace into Compile / Make File / Pick File / user screen Compile Run / Program reset . Mengaktifkan menu compile. Memperlihatkan hasil eksekusi. Memanggil jendela pertolongan yang terakhir dibaca. Menyimpan berkas yang ada pada editor. Mengaktifkan perintah ‘Make’ Berpindah dari menu-menu ke jendela yang aktif. Mengaktifkan menu option. Memilih berkas untuk dimuat.

Submenu Load : Pilihan ini digunakan untuk memanggil program dari suatu folder atau directory ke dalam editor. Submenu Write to : pilihan ini digunakan untuk menggantikan program lama dengan program yang baru (istilah kerennya Overwrite…☺).. dan banyak lainnya. B / Add Watch B / Toggle breakpoint Run / Run Ctrl + F10 Menampilkan versi layar monitor. Atau anda juga bisa menekan tombol F2.PAS maka Turbo Pascal akan menanyakan pada anda.. Nah. Submenu Save [F2] : Pilihan ini digunakan untuk menyimpan suatu program yang sudah di edit ke dalam cakram atau folder..Alt + X Ctrl + F1 Ctrl + F2 Ctrl + F3 Ctrl + F4 Ctrl + F7 Ctrl + F8 Ctrl + F9 Keluar dari Turbo Pascal dan kembali ke DOS. Menjalankan program. Toggles Breakpoint. Menu File : Didalam menu File banyak submenu yang bisa dipilih misalkan saja perintah Load / F3 yang berfungsi untuk memanggil berkas yang sudah tersimpan.PAS. . 5. Debug / Call Stack Melakukan penghitungan atau mengubah nilai peubah. contohnya anda mau ke submenu New. Debug / Evaluate Menambahkan ungkapan pada jendela watch. Jika nama program anda sudah 9 . 3. Fungsi MenuBar Program Pascal 1. 4. itu tadi adalah beberapa hotkey yang ada pada Turbo Pascal. 6. Menampilkan isi tumpukan. jika nama program itu masih NONAME. 2. maka anda tinggal menekan huruf N. nama apa yang akan anda berikan pada program yang akan disimpan tersebut. Submenu New :Program yang ada di editor akan dihapus dan program yang akan anda tulis dianggap sebagai program yang baru dengan nama NONAME. nama ini bisa anda rubah ketika anda mau menyimpannya. Hal ini ditujukan agar kita tidak perlu repot-repot lagi mencarinya di submenu load. Didalam submenu ini anda juga bisa memilih submenu yang lain dengan hanya menekan tombol huruf depan dari submenu yang dituju. Menghentikan pembetulan. Menampilkan menu pertolongan bahasa. Submenu Pick : Pilihan yang satu ini digunakan untuk mengambil salah satu dari beberapa buah program yang sebelumnya telah dimuat ke dalam jendela Edit.

Submenu Program Reset [Ctrl + F2] : Pilihan ini digunakan untuk memberitahukan Turbo Pascal bahwa anda selesai dengan pembetulan-pembetulan dan menginisialisasi debugger untuk operasi yang lain. Submenu Quit [Alt + x] : Dari namanya sudah jelas. anda tinggal mengetikan “exit”. hanya saja jika statement adalah sebuah prosedur atau fungsi. 9. 13. Submenu OS shell : Perintah ini digunakan bagi anda yang ingin ke tampilan DOS tetapi tanpa mematikan Turbo Pascalnya. Submenu Go to Cursor [F4] : Pilihan ini digunakan untuk memulai / melanjutkan eksekusi program dimulai dari posisi saat eksekusi dimulai sampai tempat kursor berada. maka eksekusi akan dilanjutkan sampai statement yang bersifat executable. tetapi tidak merubah nilai-nilai perubah. tetapi biasanya ketika anda sedang membuat suatu program atau mengedit suatu program perintah ini tidak dapat dijalankan karena kurangnya kapasitas memory. 10.ada pada cakram atau folder maka ada verifikasi dari Turbo Pascal untuk penggantian nama. Pilihan ini sekaligus membebaskan pengingat yang telah dialokasikan dan menutup semua berkas. Jika kursor berada pada statement yang bersifat executable. Submenu Directory : pilihan ini digunakan untuk menampilkan direktori dan namanama file yang anda inginkan. Submenu Change Dir : Pilihan yang satu ini digunakan untuk menampilkan direktori yang sedang digunakan dan juga bisa digunakan untuk mengganti nama direktori yang baru. maka pelacakan akan dimulai dari statement pertama dari subrutin tersebut. Pilihan ini sangat berguna jika anda ingin menjalankan pilihan File / OS shell. 11. 8. jika ada pemanggilan ke suatu subrutin. maka 10 . seperti spasi atau baris komentar. 7. 14. Menu Edit : Perintah edit ini digunakan untuk mengaktifkan editor Turbo Pascal. Sekaligus juga akan memuat berkas-berkas atau unit Include jika dimungkinkan. Submenu Step Over : Step over ini memiliki cara kerja yang hampir sama dengan Trace Into. perintah ini digunakan untuk keluar dari Turbo Pascal dan kembali ke prompt DOS. 16. Anda juga bisa menggunakan pilihan Load. Anda juga bisa menekan Ctrl + F9 untuk mengeksekusi program anda. untuk kembali lagi ke Turbo Pascal. 15. 12. Submenu Trace Into [F7] :Perintah ini digunakan untuk mengeksekusi baris berikutnya. Menu Run [Ctrl + F9] : Perintah ini digunakan untuk mengeksekusi program yang sudah anda buat.

ukuran file . sedangkan perintah make hanya akan mengkompilasi file-file selain file yang digunakan. Submenu Primary File : Perintah ini digunakan untuk menyatakan bahwa file . Submenu Find Error : Dari namanya anda pasti sudah tahu. Menu Compile [Alt + F9] : Perintah ini digunakan untuk mengkompile program atau bisa juga kita bilang kalau program yang telah kita buat tadi dengan bahasa pascal di terjemahkan kedalam bahasa komputer agar si komputer ini mengerti apa-apa saja perintah kita. Submenu Get info : Tidak salah lagi. Jika anda terlanjur memindahkan kursor sembarangan maka anda bisa memindahkan kembali kursor ke tempat kesalahan dengan menekan Ctrl + Q + W. 24.TPU dalam byte dan data. 18. jika anda kembali ke IDE. Submenu Build : Perintah ini mirip dengan perintah make. 21. perintah ini digunakan untuk menampilkan jendela informasi dari program .EXE atau hanya di pengingat utama yang akan hilang pada saat anda keluar dari Turbo Pascal.PAS yang sedang anda gunakan. Perintah ini juga digunakan oleh File / OS shell Tampilan User Screen. Submenu User screen [Alt + F5] : Pada umumnya perintah ini digunakan untuk melihat hasil dari program yang telah compile dan kita run.keseluruhan subrutin akan dikerjakan sekaligus dan debugger akan berhenti pada statement sesudah pemanggilan ke subrutin.EXE atau . 20. yah perintah ini digunakan untuk menentukan lokasi kesalahan pada saat program dijalankan [run time error]. Lokasi kesalahan dinyatakan dengan format seg:off. 23. maka file ini akan dikompilasi. 17. Pilihan ini sangat berguna jika terdapat beberapa program yang secara fisik terpisah tetapi secara logikanya merupakan suatu kesatuan. Submenu Make : Pilihan ini digunakan untuk mengaktifkan perintah make. misalnya 2BE0:FFD4. Submenu Destination [Memory] : Perintah ini secara umumnya hanya berfungsi untuk memilih apakah hasil kompilasi akan disimpan dalam cakram atau folder sebagai file yang bertipe . 19. turbo pascal akan menempatkan kursor pada baris dimana terjadi kesalahan. 22. Pada tampilan ini IDE [Integrated Debugger Environment] berpindah-pindah pada saat anda menjalankan dan mendebug program. termasuk ukuran kode sumber [dalam sumber dan baris]. hanya saja perintah build ini sifatnya bebas..PAS akan dikompilasi pada saat make [F9] atau build [Alt + C + B] diaktifkan. jika tidak maka file yang terakhir yang sedang dimuat di editor akan dikompilasi. 11 . jika file yang primer telah diberi nama.

Pilihan ini sama dengan penunjuk kompiler {$B}. pengecekan tumpukan dll. Force far calls [Off]: Digunakan untuk memilih model pemanggilan terhadap prosedur atau fungsi yang telah dikompilasi. Range checking [Off]: Perintah ini digunakan untuk menghidupkan atau mematikan pengecekan batas. Boolean Evaluation [Short Circuit] : Digunakan untuk memilih pembangkitan kode pada saat operasi logika [operasi Boolean] dijalankan. Pilihan ini sama dengan penunjuk kompiler {$F}. seperti yang anda lihat pada gambar di atas. contohnya pengecekan batas [Range checking] adalah sama dengan {$R}. Pilihan ini juga sama dengan penunjuk kompiler {$N} 35. 30. 31. 33. Jika dimatikan. Stack checking [On]: Digunakan untuk menghidupkan atau mematikan pengecekan kesalahan operasi I/O. 32. Pilihan ini sama dengan penunjuk kompiler {$A}. Pilihan ini sama dengan penunjuk kompiler {$O}.25. Numeric Processing [Software] : Digunakan untuk memilih pembangkitn kode operasi titik mengambang [floating point] yang didukung oleh Turbo Pascal. 28. pilihan ini sama dengan penunjuk kompiler {$E} 12 . Jika dihidupkan. kode kesalahan akan tersimpan dalam fungsi IO Result. Overlay Allowed [Off] : Mengaktifkan atau menonaktifkan pembakitan kode Overlay. Model pemanggilan bisa secara far atau near. 29. Menu Options : Pilihan pada menu yang satu ini berfungsi mengkonfigurasi untuk mengoptimalkan penggunaan fasilitas-fasilitas pada turbo pascal. Var string checking [Strict] : Digunakan untuk mengendalikan cara pengecekan data string yang digunakan sebagai parameter berubah. Allign Data [Word] : Digunakan untuk mengatur cara penyimpanan perubah dan konstanta bertipe dari byte ke word atau sebaliknya. sekarang saya akan coba jelaskan satu persatu agar lebih jelas dari masing-masing penggunaan ini. 34. Jika dihidupkan pada saat terjadi kesalahan operasi I/O proses akan langsung dihentikan. Pilihan sama dengan penunjuk kompiler {$V}. kompiler akan membangkitkan kode yang akan mencek batas index pada array dan string dan juga nilai yang dihasilkan dalam suatu statement pemberian. Submenu Compiler : Pilihan ini didalamnya pun masih banyak perintah yang lainnya seperti pengecekan batas. Pilihan ini sama dengan petunjuk kompiler {$R}. Emulation [On] : Mengaktifkan atau menonaktifkan linking dengan run – time yang mengemulasikan ke prosessor numeric 8087. 26. Pilihan ini sama dengan penunjuk kompiler {$I}. 27.

53. Config Auto Save [Off] : Digunakan untuk mencegah kehilangan setting komfigurasi yang telah anda lakukan. 43.MAP 45. Berkas peta akan ditempatkan dalam direktori . 42. 40. 48. Ukuran. semua nama-nama symbol dan alamatnya dan titik masukkan program. 50. Ukuran yang diperbolehkan adalah 2 sampai 16 dengan defaultnya 8. Watch. Pilihan ini sama dengan penunjuk kompiler {$D}. turbo pascal akan membangkitkan berkas backup pada saat anda menyimpan berkas. Dengan penunjuk kompiler{$M}. 49. 39. 46.EXE dengan akhiran .BAK 52. Awal dan Akhir segment dan kelasnya].36. 41. 37. Stack Size: ukuran segmen tumpukan maksimum 64 K dengan standart 16 K. Debug Information [On] : Digunakan untuk membangkitkan atau tidak membangkitkan informasi pada saat didalam program terjadi kesalahan. dan Output akan diperluas sampai satu layar penuh. Tab Size [2] : Digunakan untuk mengatur ukuran Tab pada editor. Low Heap limit: ukuran heap minimum standart adalah 0 K. Segment : Informasi segment [Nama. Yang biasa kita lihat dengan . Local Symbol [On] : Digunakan untuk mengaktifkan atau menonaktifkan symbol informasi local. informasi symbol dan titik masukkan program dan nomor barisnya dan tabel-tabel modul. High Heap limit: ukuran heap maksimum adalah 655360 byte. 47. Conditional defines: Digunakan untuk menyatakan penunjuk kompiler berkondisi. 13 . Zoom Windows [Off] : Jika di On kan maka. Submenu Linker Pilihan ini digunakan untuk mengatur konfigurasi built in linker. Detailed : segement. Backup Files [On] : Secara standard. Edit Auto Save [Off] : Digunakan untuk mencegah kehilangan berkas yang disebabkan oleh penyimpanan otomatis pada saat anda menggunakan Run / Step Over atau Run / Run 51. 44. Submenu Environment Pilihan ini digunakan untuk memberitahukan Turbo Pascal dimana bisa ditemukan berkas yang akan dikompilasi. Public : Informasi segment. di link dengan dilengkapi dengan menu-menu pertolongan. Memory sizes: Digunakan untuk mengkonfigurasi peta pengingat. Map File [Off] : Menentukan berapa banyak informasi dalam berkas peta map yang akan dihasilkan. 38. Jendela Edit.

TP] dan berkas pertolongan [Turbo. debugging dilakukan menggunakan IDE. Current pick file : Digunakan untuk menunjukkan nama dan lokasi pick file. 62.EXE dan . suatu jendela yang menunjukan daftar pemanggil prosedur dan fungsi akan terlihat.54. Menu Debug : Pilihan-pilihan yang ada dalam menu ini terutama digunakan untuk melacak nilai-nilai perubah. Submenu Save Option : Digunakan untuk menyimpan semua pengaturan dalam menu Compiler. Submenu Find Procedure : Memungkinkan anda untuk menuliskan nama prosedur dan fungsi dan kemudian mencari dalam program yang sedang anda aktifkan. 61. mencari letak suatu fungsi atau prosedur dan lain-lain.OBJ]. Dengan standard 25 baris. Object Directories : Digunakan untuk menentukan direktori yang berisi berkas [. Environment. 43 baris [EGA] atau 50 baris [VGA]. 66. menunjukan nilai perubah / ungkapan saat itu an memungkinkan anda untuk memberikan nilai yang baru untuk sembarang perubah. 67. Pilihan ini hanya bisa diaktifkan jika perangkat kerasnya mendukung. Submenu Call Stack [Ctrl + F3] : Pada saat anda melakukan debugging. 56. 70. 68. 69. Unit Directories : Digunakan untuk memberitahu TP dimana berkas-berkas unit berada. jika ada. Screen Size [25 line] : Digunakan untuk memilih ukuran layar. 60. 64.TP] 65. Submenu Retrieve Options :Digunakan untuk memuat berkas konfigurasi yang sebelumnya disimpan dengan pilihan save. 63. Pick file name : Digunakan untuk menentukan nama dan lokasi pick file. Submenu Integrated Debugging [On] Jika dipilih On. 59.HLP]. Turbo directory : Digunakan untuk menemukan berkas konfigurasi [. 14 . 55. Submenu Parameters : Digunakan untuk memberikan parameter baris perintah [Command Line parameters] pada program-program yang akan dijalankan.TPU. Submenu Evaluate [Ctrl + F4] : Dengan pilihan ini anda akan dibawa ke suatu jendela dengan 3 kotak yang memungkinkan anda untuk menuliskan sembarang nama perubah / ungkapan. 58. 57. dan Directories dalam berkas konfigurasi [standardnya adalah TURBO. EXE & TPU directory : Digunakan untuk menyimpan berkas . Submenu Directories : Pilihan menu ini digunakan untuk menunjukkan kepada Turbo Pascal lokasi setiap direktori yang diperlukan. Include Directories : Digunakan untuk menentukan direktori yang berisi Include File.

Submenu View Next Breakpoint : Digunakan untuk menggerakkan kursor ke posisi breakpoint berikutnya.EXE untuk digunakan oleh Turbo Debugger. Submenu Stand Alone Debugging [Off] Jika diset Off. Dalam editor breakpoint ditunjukkan dengan highlight text. Submenu Display Swapping [Smart] Penampilan pada layar bisa dipilih salah satu dari 3 pilihan. Menu Break / Watch 74. Submenu Delete Watch : Untuk menghapus ungkapan dalam jendela Watch pada saat jendela ini terlihat. Submenu Add Watch [Ctrl + F7] : Digunakan untuk menambahkan rinci data. Submenu Edit Watch : Pilihan ini akan membawa posisi watch ke kotak input sehingga anda bisa mengubahnya. Hal ini perlu. 78. 79. perubah atau ungkapan kedalam jendela watch 75. • • • Smart : debugger akan melihat kode yang sedang dieksekusi untuk melihat apakah perlu menampilkan hasilnya ke layar. Submenu Toggle Breakpoints [Ctrl + F8]: mengatur suatu baris sebagai breakpoint. terutama jika program anda merusak tampilan yang sudah ada dalam layar. Submenu Remove All Watches : Menghapus semua rinci dalam jendela watch sekaligus memperkecil ukurannya sampai minimum. Submenu Refresh Display : Pilihan ini digunakan untuk memanggil kembali layar IDE. Always atau Never. 15 . 72. Smart. Submenu Clear All Breakpoints: Menghapus semua breakpoint yang telah diset. 76. Never : pilihan ini akan memberitahukan debugger untuk tidak melakukan pemindahan layar. 73. dan compile / destination dipilih ke Disk debug information akan ditambahkan ke dalam berkas . Always : pilihan ini akan menyebabkan layar dipindah setiap kali suatu statement dieksekusi.71. 80. 77.

MODUL 2 UNSUR-UNSUR PEMROGRAMAN Turbo Pascal menyediakan suatu unit CRT. warna background. 3 (cyan). Menyimpan data ke dalam memori dengan struktur data yang sesuai. file atau sumber data lainnya). 2 (green). Unsur Program a. Baiklah. Contoh : TextColor(4 + 128). Writeln('Merah dan berkedip-kedip'). 10 (lightgreen). 7 (lightgray). 5 (magenta). 12 (lightred). Mendapatkan data dengan membaca data dari default input (key board. b. 14 (yellow). 6 (brown). 4 (red). 15 (White). 8 (darkgray). mengatur warna tulisan. 16 (9) lightblue. yang berisi perintah-perintah pengaturan layar seperti membersihkan layar. 11 (lightcyan). . 1 (blue). 13 (lightmagenta). berikut ini adalah nomor warna yang mewakili masing-masing warna: 0 (black).

{integer} ExitC = ‘Q’.. Memberikan nama konstanta sebagai identitas pengenal b. A & B. Gaji_Karyawan. dll. Unit adalah kumpulan 17 . Panjang nama. Deklarasi Variable adalah : Memberikan nama variabel sebagai identitas pengenal Menentukan tipe data variable Contoh deklarasi variabel: var X : integer. 9) atau kombinasi alphanumerik (huruf-numerik). Menentukan nilai konstanta Contoh deklarasi konstanta: conts MaxSize = 100. Tidak boleh menggunakan karakter istimewa: + – * / | \ = < > [ ] . {char} Reserved Words atau kata-kata cadangan pada Pascal adalah kata-kata yang sudah didefinisikan oleh Pascal yang mempunyai maksdu tertentu Suatu. Nama yang dipergunakan dalam program Pascal disebut dengan pengenal d. Konstanta adalah identifier yang berisi data yang nilainya tidak berubah di dalam program. C : char. Nama-nama ini digunakan untuk pemakaian dan pemanggilan dalam program. Sub-program (procedure dan function). Menyajikan atau mengirimkan hasil olahan data ke default output (monitor. Label. Constant. . . pada berbagai versi Pascal umumnya antara 32 – 63. : ( ) ^ @ { } $ # ~ ! % & ` ” ‘ dan ? Contoh penulisan: Penulisan yang benar: NamaMahasiswa. C Z dll. Variable adalah identifier yang berisi data yang dapat berubah-ubah nilainya di dalam program. Type. T : boolean. R : real. A sampai Z atau karakter ‘_’ (underscore – garis bawah) Karakter berikutnya boleh karakter numerik (0 . Deklarasi Konstanta adalah: a.c. nama: Variable. tujuan lainnya). PX4. Memproses data dengan instruksi yang tepat. file atau atau Identifier. Penulisan yang salah: 3X. Ketentuan penulisan identifier Nama identifier harus dimulai dengan karakter huruf alfabet: a sampai z. Identifier digunakan untuk nama: Program.

Color pada teks. Sintaks : Read/Readln(x). Unit standar pada Pascal yang bisa langsung digunakan adalah System. (ingat. Unit ini digunakan untuk memanipulasi layar teks (windowing. Perintah ini digunakan untuk membersihkan layar.]) Keterangan : x = variabel.dari konstanta. prosedur dan fungsi-fungsi. Akhir dari setiap statemen diakhiri dengan titik koma [ . tipe-tipe data. peletakan cursor di layar. diikuti oleh daftar nama unit yang digunakan. Statemen terletak di bagian deklarasi statemen dengan diawali oleh kata cadangan BEGIN dan diakhiri dengan kata cadangan END. Pada materi ini yang akan dibahas adalah unit Crt. # Write/Writeln [prosedur]. kode extended keyboard dan lain sebagainya. # Read/Readln [prosedur]. Untuk menggunakan suatu unit. Sintaks: Write/Writeln(x). maka kita harus meletakkan clausa atau anak kalimat Uses di awal blok program. Statemen statemen dalam bahasa Pascal terdiri dari pernyataan yang berupa fungsi dan prosedur yang telah disediakan sebagai perintah standar Turbo Pascal. Statemen-statemen yang digunakan untuk input/output. Beberapa Statemen Turbo Pascal Statemen adalah perintah untuk pengerjaan program pascal. Digunakan untuk menampilkan isi dari suatu nilai variable di layar. variabel. Statemen-statemen yang digunakan untuk pengaturan letak layar. Perintah ini digunakan untuk memasukkan [input] data lewat keyboard ke dalam suatu variabel. Printer Dos dan Graph. sintaks: ClrScr. Readln = pada statemen ini posisi kursor akan pindah ke baris selanjutnya setelah di input. # ClrScr [prosedur]. Keterangan : x = variabel. selalu diakhiri dengan titik koma [. [Clear screen] 18 . Write/Writeln= statement ini digunakan untuk mencetak variable ke dalam monitor 2. Crt. ]. 1. Read = pada statemen ini posisi kursor tidak pindah ke baris selanjutnya.

dan statement adalah perintah yang akan dijalankan. Untuk struktur pengambilan keputusan berikut. Pernyataan if (if statement) akan memeriksa suatu persyaratan dan menentukan apakah syarat tersebut benar atau salah. Dimana condition adalah sesuatu yang bernilai True atau False. pascal menyediakan . 19 keputusan seperti ini. Salah satu contoh pernyataan kendali yaitu pernyataan if. kemudian melakukan pekerjaan sesuai dengan nilai pernyataan tersebut. Struktur kendali aliran adalah suatu bentuk/struktur yang memiliki peranan khusus untuk mengatur aliran urutan pengerjaan operasi atau beberapa operasi tertentu.MODUL 3 STATEMENT IF CONDITIONAL Bagaimana penulisan perintah pengambilan keputusan pada Pascal ? Salah satu perintah struktur pengambilan keputusan adalah : If condition Then statement.

Readln(Bilangan). Begin Clrscr. Atau lebih baik ditulis sebagai If conditon Then Statement1 Else Statement2. Contoh : Uses Crt.Statement If condition Then Statement1 Else Statement2. If (Bilangan Mod 2) = 0 Then Writeln (‘Genap’) Else (pengecualisn) Writeln (‘Ganjil’). Write(‘Masukan Bilangan ? ‘). Berikut IF Statement lebih dari 2 pengecualian Statement : If condition1 Then Statement1 Else If condition2 Then Statement2 Else If condition3 Then Statement3 20 . Var Bilangan : Integer. akan di pilih jika statement pertama dipilih maka program tidak akan berlanjut ke pengecualian yang kedua. maka pengecualian kedua akan dipilih. Readln. akan tetapi apabila pengecualian pertama tidak memenuhi syarat. Dalam Statement ini. End.

adapun syntaxnya adalah sebagai berikut : Case variabel Of Range1 : Statement1. yang akan menjalankan statement berdasarkan range tertentu. Contoh : if mark>=80 then grade:='A' else { 79 or below goes here } if mark>=70 then grade:='B' else { 69 or below goes here } if mark>=60 then grade:='C' else { 59 or below goes here } if mark>=50 then grade:='D' else { 49 or below goes here } grade:='E'.Else Statement4. Sama seperti pengecualian IF 2 Statement. End. hanya saja bertambah pengecualiannya. Range2 : Statement2. Selain struktur kendali If. 21 . … Else StatementN. Range3 : Statement3. pascal juga menyediakan suatu struktur Case.

Atau For variabel := nilai awal DownTo nilai akhir Do Statement.MODUL 4 PENGULANGAN (LOOPING) Secara sederhana looping diartikan sebagai proses berulang terhadap statement maupun serangkaian statement lebih dari satu kali. Dimana variabel harus ordinal type satu struktur perintah 22 . For variabel := nilai awal To nilai akhir Do Statement.Salah perulangan pada pascal adalah yang menggunakan counter.

maka pengulangan itu akan terus berlanjut sampai variable terpenuhi. Logikanya.Contoh : Var I : Integer. Begin For I := 1 To 10 Do Writeln('PentaCOM'). MODUL 5 PROCEDURE DAN FUNCTION Sebuah program yang baik adalah program yang membagi permasalahan utama menjadi bagian-bagian kecil dimana setiap bagian kecil ditangani oleh sebuah subprogram. jika kata belum memenuhi akhir daripada variable yang telah ditentukan. cara ini disebut dengan modular programming (pemrograman terbagi/terpecah). Pascal telah menyediakan dua jenis subprogram. end. readln. End. 23 . var x : integer. Pengulangan pada program diatas adalah kata I LOVE U GIRL akan dicetak sebanyak 10 kali. yaitu procedure dan function (prosedur dan fungsi). Cara ini termasuk pemrograman terstruktur dan sangat didukung oleh bahasa Pascal. Program yang menggunakan pengulangan atau Looping : Program Pengulangan. Untuk itu. begin clrscr. uses crt. For x:= 1 to 10 do writeln ('I LOVE U GIRL').

begin . Prosedur Prosedur adalah subprogram yang menerima masukan tetapi tidak mempunyai keluaran secara langsung. begin . writeln('Hey.'). writeln('Press any key when ready . writeln('Press any key when ready . begin clrscr.... Contoh pemakaian procedure : uses crt. end... Function Nama_Fungsi. { Program utama } begin . tersendiri layaknya suatu program pascal. 24 .Dengan modular programming. Tujuan pemakaian procedure maupun function adalah untuk memecah program kita menjadi kesatuan logika yang lebih kecil (sub-sub program) untuk menghindari perulangan pengetikan dan memudahkan pembacaan. Selain itu. end.. readkey. b.. program lebih mudah dibaca dan dimengerti. a. Procedure dan function merupakan sub-program yang memiliki bagian deklarasi dan beginend.. writeln('ABC').').. Fungsi Fungsi adalah subprogram yang menerima masukan dan mempunyai keluaran secara langsung procedure Nama_Prosedur. end. pembenahan program dan penelusuran jalannya program (debugging) menjadi lebih mudah sebab dapat langsung diketahui subprogram mana yang berjalan tidak sesuai dengan yang diharapkan.. let''s pause !').

For I := 1 To 100 do If (Bil > 1 And Bil < 4) Then Write(I : 4) 25 . pause. end.').30). readkey. pause. procedure pause. writeln('Press any key when ready . Akar.'). Writeln(Replicate('-'. begin clrscr.. writeln('Hey.. Begin Writeln(Upper('Bilangan Prima dari 1 s/d 100'). end.readkey.. writeln('Pause again !'). pause. writeln('ABC').Bagi : Word. end. Contoh pemakaian function : Var I : Byte. readkey. writeln('Pause again !').. let''s pause !'). Dengan memecah program kita menjadi kesatuan yang lebih kecil : uses crt. begin writeln('Press any key when ready .

If Bagi > Akar Then Write(I : 4). Dan contoh berikut yang menggunakan function : Function IsPrime (Num : Longint) : Boolean. While (Dv <= Sq) And (Num Mod Dv <> 0) Do Dv := Dv + 1. While (Bagi <= Akar) And (Bil Mod Bagi <> 0) Do Bagi := Bagi + 1. End.Dv : Word. Pada prinsipnya function mengembalikan nilai. Pada deklarasi bagian deklarasi parameter kita menentukan parameter dan type data dari masing-masing parameter yang akan dikirim kedalam procedure maupun function. Bagi := 3. End. Var Sq . End. IsPrime := Dv > Sq. Begin If Num < 2 Then IsPrime := False Else If Num < 4 Then IsPrime := Bil > 1 Else Begin Sq := Round(Sqrt(Num)). (*local variable ) 26 . Dv := 3. End.Else Begin Akar := Round(Sqrt(Bil)).

MODUL 6 ARRAY Array adalah variabel yang dapat menampung sejumlah data yang ditandai dengan suatu index pada masing-masing elemennya. Contoh : Var 27 .

kita dapat juga membuat multi dimensi sesuai dengan kebutuhan. idx : Array['A'.3. Adakah hal-hal yang khusus dalam mendeklarasikan array pada Pascal ? Ada.. Cuma indexnya ditulis sebgai character.. Matrix[2.. Matrix[2.1]. anda bisa mendeklarasikan array seperti : x : Array[3. seperti contoh akan terpenuhi setelah jumlah ke 10. 4 Dimensi. Dapatkah kita buat 3 Dimensi. array yang telah kita sebutkan tersebut adalah array 1 dimensi.2]. Dan kalau pakai looping : For c:='A' to 'Z' do idx[c]:= 0. Adalah contoh array 2 dimensi.. { The same as array[0. x[5]..255] of integer. 28 Matrix[2.3]. Contoh Program Array : Program Nama_Bulan. Matrix[3. Nilai[10]. contoh: Idx['A'] = 100.2].1]. Matrix[3. x[4]. Dalam hal ini variabel Nilai adalah suatu array yang memiliki 10 element. bisa. Adakah bentuk array yang lain. a : Array['a'. Matrix[1. uses crt.'z'] of Byte. Jadi jumlah elemennya adalah 3 x 3 = 9 elemen.1].3]. yang terdiri dari elemen Matrix[1. Matrix [1. x[10]} . ….10] of Integer. n : Array[byte] of Integer..3]. dst ? Oh. Matrix[3.10] of Integer. contoh : Var Matrix : Array [1. Pada masing-masing elemennya dapat menampung satu nilai Integer. hal ini tergantung bagaimana kita mendeklarasikan variabel array tersebut..'Z'] of Integer. Nilai[3].Nilai : Array [1. dan {elemennya x[3]. } Cara pemakaiannya seperti array bisanya. …. Penjelasan dari contoh diatas adalah menyisakan ruang pada penyimpanan sebanyak array itu sendiri. yaitu Nilai[1]. selain yang anda sebutkan ? Ada.2].3] Of Integer.1. Nilai[2].

13] of string = ('Januari'.const Bulan :array[1.'Oktober'.NoBulan.'April'.'Maret'.'Juni'. bulan [NoBulan]).'Mei'. var NoBulan : integer.. write ('Masukan nomor bulan : ').'Nopember'. readln (NoBulan).'Desember'.'Februari'. Record lebih kompleks daripada array karena record merupakan kumpulan 29 . begin clrscr.' adalah '. 'Agustus'. readln. MODUL 7 RECORD Record adalah tipe data kompleks yang elemen-elemennya boleh mempunyai tipe data yang berbeda. end.'KIAMAT').'September'.'Juli'. write ('Nama bulan ke ' .

K2. Latihan Pascal 3 : Array dan Record'). : : ____________________'). procedure begin Writeln(' Writeln.X := 10. var K1. 30 = : : record integer. uses CRT. Cara pendeklarasian record adalah sebagai berikut : var B : record X : integer. Writeln('Nama Writeln('NIM Writeln. Di antara nama record dan nama variabel anggota dipisahkan tanda titik (. perhatikan contoh berikut ini : program Jumlah_Kompleks. Awal. integer. maksudnya adalah sebagai berikut : variabel B berupa record dengan dua elemen yaitu X bertipe integer dan Y bertipe real. Untuk lebih memahami penggunaan record dalam program. Type Kompleks bil_real bil_imaj end. Y : real. Cara mengakses elemen dari record dilakukan dengan menyebutkan nama variabel anggota setelah menyebutkan nama record yang akan diakses. Writeln('------------------------------------'). Pada pendeklarasian di atas.). end. H : kompleks.beberapa variabel dengan tipe data yang berbeda. . end. __________'). Untuk mengakses elemen dari variabel B seperti berikut : B. Berbeda dengan array yang tiap elemennya ditandai dengan nomer indeks maka record ditandai dengan nama variabel anggotanya.nama_variabel contoh : B.

Komp2.bil_real Komp1.bil_real KompHasil. Writeln. bilangan kompleks + = pertama dan kedua H).bil_imaj. KompHasil + + : : : : kompleks). '. Enter. :'). '). Awal.Komp. ').bil_real). begin ClrScr.' end. Writeln. '). end. Writeln. KompHasil. Writeln('Isi BacaData(K2).Komp.'). Write(' TulisKompleks(H).bil_real.bil_imaj:3.. '). TulisKompleks(var + Komp : kompleks). Write('Bilangan Readln(Komp.bil_imaj end. Writeln('Isi BacaData(K1)..procedure begin JumlahKompleks(var := := BacaData(var Komp1. Write('Tekan Komp1. procedure begin Write('Bilangan Readln(Komp. Write(' TulisKompleks(K2). K2.'i)'). 31 .bil_real:3. bilangan kompleks kedua :'). Writeln.bil_imaj). bilangan kompleks pertama :'). procedure begin Write('('. JumlahKompleks(K1. kompleks).bil_imaj Komp real imajiner Komp2. Writeln('Penjumlahan TulisKompleks(K1). Komp2.

32 . end. Untuk lebih jelasnya. Perhatikan program di atas. jalankan program dengan F7 sehingga akan terlihat urutan jalannya program. Perhatikan pula bagaimana cara mengakses elemen record seperti pada prosedur Jumlah Kompleks.Readln.

MODUL 8 DELPHI INTERFACE Tampilan Interface Delphi 7 MenuBar Speed Bar Component Palete Code Editor Form Design Object Inspector 1. Perintah penting pada Delphi F9 File | Close All F12 Ctrl+F11 Alt+F+V Ctrl+S Alt+F+A Berfungsi untuk melakukan proses RUN (menjalankan program) Berfungsi untuk menutup File project sekaligus Berfungsi untuk menghentikan program yang berjalan Berfungsi untuk berpindah dari Form editor dan sebaliknya Berfungsi untuk membuka File project(*.dpr) Berfungsi untuk menyimpan File project sekaligus Berfungsi menyimpan File dan yang belum didimpan Berfungsi untuk menyimpan nama file unit yang baru (sama dengan Ctrl+S) untuk menyimpan file unit yang berbeda nama 33 Run | Program Reset .

karena sangat serupa bahasa Pemrograman Delphi dengan bahasa Pemrograman Pascal. 5. property dapat dijelaskan sebagai data yang menentukan karakteristik komponen. kita bias memanggil atau menyimpan program.dpr) dengan nama yang berbeda 2. Dari menu ini. Delphi telah menuliskan semacam kerangka untuk kita. Componnent Pallete Pada komponen Pallete berisi kumpulan ikon yang melambangkan komponen-komponen pada VCL (Visual Component Library). Menu Menu pada Delphi memiliki kegunaan seperti menu pada aplikasi Windows lainnya. 3. Code Editor Code Editor merupakan tempat untuk menuliskan listing program yang dinyatakan dengan bahasa Pascal. kita tidak perlu menuliskan seluruh kode sumber.Alt+F+E Berfungsi untuk menyimpan nama file project (*. 34 . segala sesuatu yang berhubungan dengan IDE Delphi. Pada Tab event Kita dapat menyisipkan kode untuk menangani kejadian tertentu. 6. menjalankan dan melacak bug program. Object Inspector Pada object Inspector terdiri dari 2 menu : Propertis Event Pada tab Propertis Kita bias mengubah property dari komponen Kita. Speed Bar Speed bar atau toolbar yang berisi kumpulan tombol yang tidak lain adalah pengganti beberapa item menu yang sering digunakan. Yang perlu diperhatikan pada code editor adalah. 4. Singkatnya.

35 .

begin clrscr. Uses crt. writeln. end. writeln.B. writeln. Readln (A). writeln('A/B='. TextColor(4 + 128). write('Nilai B : '). Readln (B). var Nama.Minus). end.. write('Nilai A : '). uses crt. writeln('A-B='.. writeln('Hitungan Sederhana Pascal'). var A. writeln ('Masukan Nama dan NIS'). writeln('*************************').Kali:0:2). writeln. NIS : String. begin clrscr. Program Aritmatika. writeln('Hasilnya Adalah ???'). 36 . Bagi:=A/B. readln (Nama).Plus. uses crt.Bagi : Real.Minus : Integer. end. readln. write ('NIS Anda :').. writeln('A+B='. Plus:=A+B. writeln('A*B='.'). writeln ('____________________'). Kali. begin clrscr. readln (NIS).Bagi:0:2). Readln. Minus:=A-B.Plus). writeln. write ('Nama Anda :'). writeln('Press ENTER to Continue. Kali:=A*B.PROGRAM AJAR PEMROGRAMAN PASCAL Program Input_Nama. Writeln('Hai Nama Saya Udin'). Program Cetak_Data.

while x <= 1000 do begin write(x.Program BBM. Premium:0:0).' '). x := 1. end.jml : integer. Program Bilangan. write('Silahkan Masukan Jumlah Yang Anda Kehendaki:'). writeln('Harga Pertamax =Rp '. end. writeln('Harga Solar =Rp '.Pertamax : Real. Readln (Liter).Solar. readln. var Liter. Uses crt. uses crt.bar). write('Jumlah Baris : '). begin clrscr. begin clrscr.Premium. end. kol :=kol + 1. Premium:=Liter*4500. Solar:=Liter*4000. end. bar:=1. Pertamax:=Liter*5000. Program Bintang. Readln. Pertamax:0:0). readln. writeln. end. while kol <= (1 * bar . var bar. writeln('Harga Premium =Rp '.1) do begin write ('*'). kol:=1. begin clrscr. Solar:0:0). 37 .kol. while bar <= jml do begin write ('*' : jml + 1 . x:=x+1. var x : Integer. readln (jml). bar:=bar + 1. end. uses crt.

Program Luas_Balok. end else if (a >=50000) and (b>5) then begin write('Bonus Payung').l. writeln. begin clrscr. writeln. writeln('Penghitungan Luas Balok'). uses crt. writeln. begin clrscr. end else begin write('Maaf Anda Tidak Mendapat Bonus'). end. end else if (a >=400000) and (b>5) then begin write('Bonus Celana Jeans'). readln(p). end. var a : real.Program Bonus. Readln(b). uses crt. var p. readln. end else if (a >=300000) and (b>5) then begin write('Bonus T-Shirt'). end else if (a >=200000) and (b>5) then begin write('Bonus Kemeja Batik'). end else if (a >=100000) and (b>5)then begin write('Bonus Jam Dingding').t. if (a >= 500000) and (b>5) then begin write('Bonus Setrika'). write('panjang : ') . write('lebar : ') . readln(l). 38 . b : Integer. readln(a).luas : Integer. write('Jumlah Barang: '). write('Total Pembelian: ').

writeln('luasnya adalah : '. Uses crt.'. ss : longint. mm : longint. uses crt. end. writeln. x:=x+2.diskon : Real. uses crt. end.Diskon:0:2). Program Cetak_Angka.'). var a. begin clrscr. luas:=2*p*t + 2*p*l + 2*l*t.write('tinggi : ') . var J : Jam. readln. end else begin write('Maaf Anda Tidak Mendapat Diskon'). begin clrscr. 39 . readln(t). type Jam = Record hh : longint. end. luas). readln. while x <= 1000 do begin write(x. write('Nilai Kelipatan 2 = '). var x : integer. write('Diskon :Rp. Program Konfersi_Waktu. writeln. x := 0. Program Diskon_pembelian. ' '). write('Harga Pembelian :Rp. end. readln(a). end. readln. if a > 100000 then begin diskon:=a*(15/100). end.

hh*3600) + (J. var x : integer. Readln (Sis.Nama). end.Nama). write('Nama : '). Readln (Sis. end. readln(J.TotalDetik : longint.Kelamin).ss). Readln (Sis. writeln. 40 . readln(J. readln(J.Kelamin). end. Kelas : String. write('Menit : '). Var Sis : Siswa. uses crt. uses crt. writeln(Sis. writeln(Sis. Alamat : String.Kelas).Alamat). writeln(Sis.Kelas). write('Sekolah : '). Writeln.Alamat). Program LIST_SISWA.ss. Writeln. begin clrscr. writeln('Total Detik = '. Readln (Sis. write('Kelas : '). begin write('Jam : '). writeln(Sis.hh). Kelamin : String. begin clrscr. Program Pengulangan. readln. TotalDetik:= (J. type Siswa = Record Nama : String.Sekolah). readln.mm*60) + J. write('Alamat : '). write('Detik : '). writeln(Sis. Sekolah : String. TotalDetik). Writeln('Berikut Data Informasi Diri Anda :'). writeln('Masukan Data Diri Anda:'). write('Kelamin : '). Readln (Sis. For x:= 1 to 10 do writeln ('I LOVE U GIRL'). end.Sekolah).mm).

begin clrscr.'Desember'. const Bulan :array[1. case nilai of 80. readln. readln (Nilai).69 : writeln ('Nilai Kurang'). Program Nama_Bulan. 12 : Write('Bulan Desember'). 5 : Write('Bulan Mei'). readln (NoBulan).'KIAMAT'). begin clrscr.. 60. var NoBulan : integer. var Nilai : integer. var month : integer. write('Input Bulan Ke : '). write ('Nama bulan ke ' . 7 : Write('Bulan Julii'). Program Status_Nilai.NoBulan.'Februari'. 3 : Write('Bulan Maret').'April'.. 70..100 : writeln ('Nilai Sangat Baik'). readln. writeln. end. readln(month). 11 : Write('Bulan Oktober'). uses crt. 10 : Write('Bulan November'). 41 .'Juni'.79 : writeln ('Nilai Baik'). 'Agustus'. 6 : Write('Bulan Juni').. 8 : Write('Bulan Agustus').'Oktober'.Program Nama_Bulan.'Maret'.13] of string = ('Januari'.'September'. begin clrscr.'Juli'. bulan [NoBulan]). end. end. uses crt. else write('Yang Anda Masukan Salah').'Nopember'. write('Masukan Nilai Anda : '). 2 : Write('Bulan Februari'). write ('Masukan nomor bulan : '). 4 : Write('Bulan April'). case month of 1 : Write('Bulan Januari').'Mei'. uses crt.' adalah '. 9 : Write('Bulan Setpember').

var a.c : Integer. readln(b). Uses crt.n : integer. writeln. uses crt. Tugas. readln(a). end. begin clrscr. readln(c). UAS.j. end. var Nama : array [1. for j:= 1 to n do write(i*j:5). writeln. end. end.. var i. write('Input sisi a : '). else writeln ('Nilai Buruk !!! ').b. write('Input sisi b : '). uses crt. write('Input sisi c : ').20] of Integer.. UTS. for i:= 1 to n do begin write (i:5). end. readln. 42 . for i:= 1 to n do write(i:5).50. Program Jenis_SegiTiga. Persentasi : array [1. if (a=b) and (b=c) and (c=a) then writeln('Segitiga Sama Sisi') else if (a=b) and (a<>c) or (b=c) and (b<>a) or (c=a) and (c<>b) then writeln('Segitiga Sama Kaki') else if (a<>b) and (b<>c) and (c<>a) then writeln('Segitiga Sembarang'). Program Perkalian_Matrix. begin clrscr..59 : writeln ('Nilai Sangat Kurang'). Readln. Program Nilai_SISWA. writeln. write('Masukan Jumlah Perkalian : '). readln (n).20] of string. write('A' : 5).

if Suhu >100 Then writeln('Gas'). var a. var Suhu : Integer. write('Masukan Nama : '). if Suhu <=0 Then writeln('padat'). begin clrscr. clrscr. end. readln (UTS[a]). readln (Persentasi[a]). writeln ('--------------------------------'). readln (Tugas[a]). begin clrscr. For a:= 1 to 10 Do 43 . a.4*Persentasi[a]). uses crt. writeln ('--------------------------------'). write ('Input Suhu : ').c : integer. end. Program Pembuatan_Tabel. writeln('Rata-rata :'. write('Masukan Nilai UAS : '). end. for a := 1 to jd do begin writeln('PENILAIAN UJIAN SISWA').20] of real.. writeln('Nilai Tugas : '.Persentasi[a]). Readln. readln (Nama[a]). if (Suhu>0) and (Suhu<100) Then write('Cair').rata : array [1. write('Masukan Nilai Persentasi: ').3*UAS[a]) + (0. begin clrscr. rata[a]:1:2). Readln (Suhu).Tugas[a]).jd :byte.1*Tugas[a]) + (0.2*UTS[a]) + (0. writeln('Nilai UAS : '. Program Perubahan_Zat. Readln. writeln('Nama : '. writeln('Persentasi : '.UTS[a]). writeln('Masukan Jumlah Data Nilai'). writeln (' a a*a a*b*c '). writeln('Nilai UTS : '. write('Masukan Nilai UTS : '). rata[a]:=(0. uses crt. write('Masukan Nilai Tugas : ').UAS[a]).b.Nama[a]). WRITELN. readln (UAS[a]).

d. writeln('Rp. a:= a-(b*1000).b. Readln (l).c.1000 = '. Program Tukat_Uang. writeln('Rp. c:= a div 500.f.'buah'). writeln('Rp. writeln (a:4.begin b:=a*a. Var a. b:10.'buah'). readln (a).200 = '. writeln('Rp.f : word. uses crt. begin clrscr. a:= a-(c*500). end. writeln ('--------------------------------').500 = '.c.100 = '. readln. f:= a div 50. write('panjang : '). Program Persegi.b.'buah'). e:= a div 100. c:10). var p. 44 . Luas). b:= a div 1000. writeln.luas : integer.'buah'). d:= a div 200.50 = '. a:= a-(e*100). writeln('Rp. write('lebar : '). Readln (p). writeln.e. end. end. readln. a:= a-(d*200).d. readln. begin clrscr.'buah'). a:= a-(f*50). c:=a*a*a. write('Masukan Jumlah Uang Yang Akan Ditukarkan: ').l.e. end. luas:=p*l. writeln('Luasnya Adalah : '. writeln('Penghitungan Luas Persegi Panjang'). Uses crt.

readln. data.NoBulan .Umur).' . writeln ('Umur : ' .'April'. uas. begin 45 . Program data_mhs. for a := 1 to jd do. tugas. write ('Umur : ' ).Nama). writeln ('Nama : ' .Nim). readln(jd). Bulan [NoBulan]).'Februari'.12] of string = ('Januari'. program penilaian_MHS uses wincrt. writeln.20] of integer. begin clrScr.'Juli'.'Desember'). write ('Masukkan nomor bulan: ' ). end. readln . const Bulan :array[1. writeln ('Nim : ' .. data. uses wincrt. writeln ('Masukkan data diri Anda : ' ). begin clrScr.'Juni'. write ('Nama bulan ke. uts..Nim). umur : integer.readln(data.20] of real. type mahasiswa = record nim : string[8]. 'Agustus'.. write ('Nama : ' ).'Maret'.Program Contoh_Bulan. end. write ('Nim : ' ).20] of string.readln(data.Nama).Umur).readln(data. ' adalah '. uses wincrt. a. {Memasukkan baris kosong} {Menampilkan data yang telah dimasukan} writeln ('Beikut ini informasi data diri yang telah anda masukkan : '). begin clrscr. write('Masukkan Jumlah Data Nilai: ').'September'.'Oktober'. nama : string[25].. data.'November'. end. var data:mahasiswa. rata : array[1. var NoBulan:integer. presensi : array[1.jd : byte.'Mei'. readln (NoBulan). var nama : array[1.

gaji_kotor: 2 : 0 ) . writeln('Nilai Tugas : '. writeln (‘ jumlah pembelian : ‘ . write ( ‘ Nama : ‘ ) . write ( ‘ Tunjangan : ‘ ) . write('Masukkan Nilai UAS : '). end. begin writeln('PENILAIAN UJIAN MAHASISWA'). Program Gaji . gaji_pokok.2*uts[a])+(0. readln(uts[a]).uas[a]). write('Masukkan Presensi : '). 46 .potongan) .pajak.pembelian – potongan) . writeln('Nama : '. writeln ( ‘ Gaji Kotor : ‘ . readln ( Nama ) . readln ( gaji_pokok ) . readln (Nip) . var Nama.writeln('PENILAIAN UJIAN MAHASISWA').presensi[a]). for a := 1 to jd do.tunjangan. readln(tugas[a]). writeln ( ‘ Pajak : ‘ . end. write('Masukkan Nilai UTS : '). uses wincrt. write ( ‘ Nip : ‘) . write ( ‘ jumlah bayar : ‘ .tugas[a]).pembelian) . writeln. {untuk menampilkan semua data yang sudah dimasukkan di awal} writeln('Rata-rata : '. end. readln ( tunjangan ) .potongan : integer .1*tugas[a])+(0. pajak := 0.Nip : char .4*presensi[a]). write('Masukkan Nama : '). clrscr. writeln (‘ potongan : ‘ . end. begin writeln (‘ Gaji Pegawai ‘) . write ( ‘ Gaji Pokok : ‘ ) . uses crt . writeln('Nilai UTS : '.uts[a]).nama[a]). begin write (‘ total pembelian ‘ ). writeln('Presensi : '.1 * gaji_pokok .gaji_kotor. =100000 : potongan := 10000.{untuk menampilkan rata-rata} end. readln(nama[a]). readln . Rata[a]:=(0.gaji_bersih :real. var pembelian. write('Masukkan Nilai Tugas : '). gaji_kotor := gaji_pokok + tunjangan . readln (pembelian).3*uas[a])+(0. pajak : 2 : 0 ) . readln(presensi[a]).rata[a]:1:2). case pemotongan of =10000 : potongan := 1000. writeln('Nilai UAS : '. readln(uas[a]). Program_penjualan .

if ( jawab = '-') then begin hasil:= x-y end. write ('masukan angka ke-2:').i. Program Berat_badan .d. readln . var x.'kamis'. begin write ('masukan angka ke-1:').6] of string[9] = ('minggu'. uses crt .readln (x).gaji_bersih := gaji_kotor + pajak . gaji_bersih : 2 : 0 ) . var operator. begin write ( ‘ masukkan berat badan : ‘ ). if ( jawab = '*') then begin hasil:= x*y end. end. if berat > 37 then writeln (‘berat’). readln . const days : array [0. if ( jawab= '+') then begin hasil:= x+y end.'selasa'. write ('pilih operator: (+)/(-)/(*)/(/)'). else writeln ( ‘ kurus ‘ ) . readln (berat) .'sabtu'). end.readln (jawab).readln (y).(hasil):5:2). uses crt.. end.u. write ('hasilnya: '. 47 .hasil:real.'jumat'. uses crt.'rabu'.j. var berat : integer . Program Kalkulator_Sederhana. writeln ( ‘ Gaji Bersih: ‘ . label awal. Program Counter_Pulsa. if (jawab='/') then begin hasil:= x/y end. jawab:char.dow : integer.y.'senin'.y.m.

writeln('v 15 ===== 18. simpati1: writeln('daftar harga SIMPATI'). end. begin clrscr . writeln('v 50 ===== 50.000'). end. begin hitung:= b-a end.000').b : longint):longint. 20 : pulsa := 21000. pulsa. 10 : pulsa := 12000. readln (nominal).000').000'). tulis nominal'). : longint.harga. writeln('v 100 ===== 108. writeln. else begin pulsa := 0. writeln('v 20 ===== 21.000'). writeln.pilihan. procedure as(var pulsa:longint). writeln('v 25 ===== 29. readln (nominal). 100: pulsa := 98000. var nominal : longint. case nominal of 5 : pulsa := 6000. end. 48 . writeln('v 5 ===== 6. goto simpati1. writeln('v 10 ===== 12.uang. writeln('masukkan nominal pulsa'). label as1.000'). var nominal : longint. writeln('masukkan nominal pulsa').c hp : string. writeln('v 100 ===== 98. writeln('v 5 ===== 6.000').000'). 50 : pulsa := 50000. writeln('v 50 ===== 54.000'). begin as1: writeln('daftar harga Kartu As'). writeln ('salah. procedure simpati(var pulsa:longint).000'). label simpati1. {pernghitungan uang-harga} function hitung(a.

writeln('v 50 ===== 48. 49 . goto as1. begin im31: writeln('daftar harga MENTARI').000'). 50 : pulsa := 54000. end. 50 : pulsa := 50000. var nominal : longint. end. procedure MENTARI(var pulsa:longint). 25 : pulsa := 29000.000'). begin im32: writeln('daftar harga im3'). writeln('v 20 ===== 21. 100: pulsa := 98000. var nominal : longint. end. writeln('v 10 ===== 11.000'). writeln ('salah.000').000'). 100: pulsa := 108000. 20 : pulsa := 21000. tulis nominal').000'). else begin pulsa := 0. label im31. 15 : pulsa := 18000. writeln('masukkan nominal pulsa'). goto im31. tulis nominal').000'). writeln('v 100 ===== 98. case nominal of 5 : pulsa := 6000. readln (nominal).case nominal of 5 : pulsa := 6000. writeln('v 20 ===== 20. writeln ('salah. writeln('v 10 ===== 11. writeln('v 5 ===== 6. writeln('v 50 ===== 50. end. label im32. else begin pulsa := 0.000').000'). end. writeln. procedure im3(var pulsa:longint). end. 10 : pulsa := 11000. writeln('v 5 ===== 6.

10 : pulsa := 11000.. readln (nominal). 20 : pulsa := 20000. writeln('masukkan nominal pulsa'). writeln ('salah.000'). 20 : pulsa := 21000. procedure XL(var pulsa:longint). writeln('v 50 ===== 47.dow : word).. 100: pulsa := 95000. writeln('masukkan nominal pulsa'). 100: pulsa := 95000. else begin pulsa := 0. tulis nominal'). tulis nominal').. end. label xl1. end.writeln('v 100 ===== 95. goto im32. end. case nominal of 5 : pulsa := 6000. writeln('v 10 ===== 11. readln (nominal). bantuin dounk masss. goto xl1. end. writeln('v 20 ===== 21. case nominal of 5 : pulsa := 6000.. var nominal : longint.m.000'). } {program untuk menampilkan date belum bisa keluar. else begin pulsa := 0. 50 : pulsa := 47000. end. writeln ('salah. end.} 50 .000'). writeln('v 5 ===== 6.000'). writeln. writeln.. 10 : pulsa := 11000. writeln('v 100 ===== 95.d.000'). {program utama} begin {GetDate(y.000'). 50 : pulsa := 48000. begin xl1: writeln('daftar harga XL').

{memanggil procedure simpati} 51 . writeln(' '). writeln('silahkan pilih operator anda'). readln. writeln('********************************'). readln (operator). writeln('********************************'). writeln('================================ '). writeln('================================'). writeln. writeln('tekan enter untuk memulai '). clrscr. writeln('2. end. writeln(' '). clrscr. writeln('================================'). Kartu As'). case operator of 1: begin writeln('1. writeln(' kami ada untuk anda '). writeln('================================ '). XL'). writeln('3. clrscr. writeln('selamat datang di counter digital'). writeln('transaksi anda'). clrscr. Simpati'). writeln('1. Indosat'). case pilihan of 1 : simpati(pilihan). writeln('********************************').awal: for j:=7 to 11 do begin for i:=1 to j do write('='). writeln. writeln. for j:=11 downto 7 do begin for i:=1 to j do write('='). writeln(' '). writeln('2. readln. Telkomsel'). end. writeln('********************************'). writeln. writeln(' zen design'). readln (pilihan).

case pilihan of 1 : MENTARI(pilihan). {6000 adalah harga minimal voucher} while harga > 6000 do begin {supaya pelanggan dapat melakukan trakdaksi lagi} writeln('saldo anda masih bisa untuk melanjutkan transaksi'). end else begin writeln ('maaf anda salah pilih').harga). bantuin dounk mass} end else begin writeln('========================='). end. end. if uang > pilihan then begin harga:=hitung(pilihan. end. 2 : im3(pilihan).2 : as(pilihan).y:0). end. clrscr. end. writeln('2. readln(u). readln(hp). 3: begin readln (pilihan). goto awal. im3'). writeln ('masukkan uang anda').'. writeln('============================'). {mamanggil procedure as} end.d:0. 2: begin writeln('1. {input nomer hape} clrscr. 52 . readln (pilihan). {yang ini belum bisa ditampilkan. MENTARI'). writeln('saldo anda tidak mencukupi'). writeln(' TRANSAKSI GAGAL').'/'.'. clrscr. writeln(days[dow].'/'. writeln('transaksi ke nomor '. clrscr. {input uang} clrscr.hp). { memanggil fungsi hitung} writeln('=============================').uang).'. writeln ('masukan nomer hepe').m:0. {mengembalikan program ke label awal} end. writeln(''). XL(pilihan). writeln(' BERHASIL '). writeln('sisa uang anda Rp. readln (uang). goto awal.. writeln.

edit4. var x. end.z:real. end. end. y:=strTOfloat(edit2.Text). z:=x-y.Text:=floatTOstr(z).Button2Click(Sender: TObject).Text:=floatTOstr(z). end. writeln. z:=x/y. z:=x*y.Text:=floatTOstr(z). edit3. edit6. writeln(' TERIMA KASIH').y. 53 . z:=x+y.Text:=floatTOstr(z). edit5. begin x:=strTOfloat(edit1.writeln('==========================').Button1Click(Sender: TObject). end. PROGRAM AJAR PEMROGRAMAN DELPHI Kalkulator Sederhana Delphi procedure TForm1. begin Close.Text). procedure TForm1.

Items.Items. laporan.Items.add('').Items. laporan.add('-'+A2.Text). if K1.Items.Items.add('GOL : '+gol.Text).add('').Items. if A2.checked then Laporan.Items.add('KELAMIN : '+K1.Text).Items.Items.add('-'+A1.Text).Items.add ('ADMINISTRASI : '). end.Caption) else Laporan.add('Laporan Data Pegawai'). laporan.Caption).add('KELAMIN : '+K2.add('LAHIR : '+dateTOstr(lahir.Caption).clear.date)). if A1.Caption). if A3. 54 .checked then Laporan.Text).checked then Laporan. laporan. Laporan. laporan.add('ALAMAT : '+alamat. laporan.add('-'+A3.Caption).Input Data procedure TForm1.Items.add('NAMA : '+nama.add('STATUS : '+status.Items. begin laporan.checked then Laporan.add('NIP : '+nip. laporan.Items. Laporan. Laporan.Items.Button1Click(Sender: TObject).

Text:=''.Clear.Button2Click(Sender: TObject). end.SetFocus. status. A1. nip.Text:=''. lahir.Checked:=false.Checked:=false. begin Laporan.Button3Click(Sender: TObject).Text:=''. A3. gol. procedure TForm1. end. alamat. nip. end. Data Base Buku (DB Access) 55 .Text:=''.Checked:=True.date:=Now. nama.Checked:=false. begin Close. A2. K1.procedure TForm1.Text:=''.

Text. ADOTable1['Tahun Terbit']:=edit5.text.Text.Text:=''. end. end. begin ADOTable1. edit2.Button5Click(Sender: TObject). edit5.Text:=''.Text:=''. edit4.Locate('Nama Buku'.Text:=''.Text. begin if not ADOTable1. end. begin edit1.Text:=''. procedure TForm1. ADOTable1['Pengarang']:=edit3.Text:=''. procedure TForm1.Post. ADOTable1.[loPartialKey])then ShowMessage('Maaf Buku Tidak ditemukan'). edit5.edit6.locate('Nama Buku'.Text. procedure TForm1.Text:=''. edit3.Text:=''.SetFocus. edit2. end. edit3.Text:=''.Button4Click(Sender: TObject). ADOTable1['Kode Buku']:=edit1. ADOTable1['Nama Buku']:=edit2.Button3Click(Sender: TObject). procedure TForm1. ADOTable1['Penerbit']:=edit4. begin ADOTable1.Append.Text.[loPartialKey]). edit6. end.edit6. begin Close. edit1. edit4.procedure TForm1.Text.Delete. end. 56 .Button1Click(Sender: TObject).Text:=''.Text:=''. begin ADOTable1. end.Button2Click(Sender: TObject). edit1.

You're Reading a Free Preview

Download
scribd
/*********** DO NOT ALTER ANYTHING BELOW THIS LINE ! ************/ var s_code=s.t();if(s_code)document.write(s_code)//-->