BAB 1 PENDAHULUAN 1.1 Latar Belakang

dokumen-dokumen yang mirip
Pengenalan Borland Delphi 7.0

URAIAN POKOK PERKULIAHAN. (1) Nilai akar-akar, x 1 dan x 2, dapat ditentukan dengan menggunakan rumus:

Minggu ke : 4 Penyusun : Dian Usdiyana Rini Marwati Materi : 4. Pernyataan Kondisional 4.1 If then. 4.2 If. then.else..

URAIAN POKOK PERKULIAHAN

Borland Delphi 7. Created By 1

LABORATORIUM KOMPUTER TEKNIK INFORMATIKA STT DHARMA ISWARA MADIUN PRAKTIKUM PEMROGRAMAN BERORIENTASI OBJEK-1 TIPE DATA DAN VARIABEL

URAIAN POKOK PERKULIAHAN

LABORATORIUM KOMPUTER TEKNIK INFORMATIKA STT DHARMA ISWARA MADIUN PRAKTIKUM PEMROGRAMAN BERORIENTASI OBJEK-1 PROCEDURE DAN FUNCTION

Minggu ke : 7. Bentuk umum : While <kondisi> do <Pernyataan>

4.1 Struktur Rancangan Puncak-Turun dengan Procedure

LABORATORIUM KOMPUTER TEKNIK INFORMATIKA STT DHARMA ISWARA MADIUN PRAKTIKUM PEMROGRAMAN BERORIENTASI OBJEK-1 LOGIKA PERULANGAN-1

PRAKTIKUM 3 BERBAGAI MACAM TIPE DATA (Integer dan Real)

BAB II LANDASAN TEORI

Algoritma Pemrograman A

PRAKTIKUM 3 BERBAGAI MACAM TIPE DATA

ALGORITMA PENCARIAN. c. Hasil pencarian berupa nilai Boolean yang menyatakan status hasil pencarian.

PROSEDUR. Mahasiswa dapat memahami penggunaan prosedur. Mahasiswa dapat membuat prosedur. Mahasiswa dapat memahami variabel lokal dan variabel global

LABORATORIUM KOMPUTER TEKNIK INFORMATIKA STT DHARMA ISWARA MADIUN PRAKTIKUM PEMROGRAMAN BERORIENTASI OBJEK-1 STRUKTUR KEPUTUSAN-1

1 Latihan 6 Ketentuan Soal:

For <pencacah> := <nilaiawal> to <nilaiakhir> do <pernyataan>

PRAKTIKUM 1 2 MENGENAL DELPHI

Bahasa Pemrograman (TD22093)

Praktikum Pemrograman 1. Mengenal Delphi

FieldName DataType FieldSize Status UserPass Text 40 Primary Key Nama_User Text 30 Password Text 10

MODUL I. A. Landasan Teori. Modul Praktimum Pemrograman Visual II D3 Manajemen Informatika UNIJOYO

Modul I Mengenal Pemrograman Delphi

PEMROGRAMAN DASAR XI TKJ SMK NEGERI 1 KUPANG

Kontrol Data Set dan Navigasi Tabel

PEMROGRAMAN DATABASE DENGAN DELPHI DAN MICROSOFT ACCESS

1. Menggambar ANAK PANAH. Setelah kita RUN dan saya klik button ANAK PANAH maka akan muncul gambar anak panah seperti nampak pada gambar dibawah ini

PROSEDUR DENGAN PARAMETER. Mahasiswa dapat memahami penggunaan prosedur dengan parameter. Mahasiswa dapat membuat prosedur dengan parameter.

MODUL 2 EVEN, VARIABEL DAN FUNGSI KONVERSI

Lampiran 1. Form 01. unit Skripsi; interface. uses Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, Dialogs, StdCtrls, math;

PERCOBAAN I STATEMENT

Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, Dialogs, StdCtrls, ExtCtrls, ComCtrls, ExtDlgs, TeeProcs, TeEngine, Chart,

SILABUS. 1. Menguasai IDE Borland Delphi 7 untuk pembuatan project. 2. Mengenali file yang diperlukan dalam project. 3. Melakukan desain form.

PERCOBAAN 4 GRAFIKA KOMPUTER DENGAN DELPHI

STRUCTURED QUERY LANGUAGE (SQL)

RENCANA PELAKSANAAN PEMBELAJARAN

ANGKA TERBILANG. Program ini terdiri dari beberapa komponen yaitu:

Pengenalan Lingkungan Delphi

Delphi 7. Merencang Program dengan Fungsi IF. Ketentuan Soal : 1. Jabatan : JABATAN GAJI POKOK Direktur Manager Staff

DAFTAR PUSTAKA. Choiron, Moch. Agus. (tanpa tahun). Interpolasi. Malang.

Membuat Add In Terbilang Untuk Microsoft Excel

MODUL I. A. Instalasi Borland Delphi Buka file instalasi Borland Delphi Klik Run Program. 3. Klik Next

Modul I Mengenal Pemrograman Delphi

LAMPIRAN. Universitas Sumatera Utara

SATUAN ACARA PERKULIAHAN UNIVERSITAS GUNADARMA

MODUL I Pengenalan IDE Visual Basic 6.0

PEMROGRAMAN DELPHI 7.0

Pemrograman Visual (Borland Delphi 7.0)

Dasar-Dasar Pemrograman Dengan Delphi 7. Janner Simarmata

Pengenalan IDE Delphi. 1 By : Eko Budi Setiawan

SATUAN ACARA PERKULIAHAN UNIVERSITAS GUNADARMA PROSES BELAJAR MENGAJAR

Array merupakan sekumpulan elemen berindeks yang memiliki tipe yang sama (base type). Pendefinisian array ditunjukkan dengan format:

Visual Delphi 7 D3 TI FMIPA UNS Sakroni

SATUAN ACARA PERKULIAHAN UNIVERSITAS GUNADARMA PROSES BELAJAR MENGAJAR

Elga Lesmana

Daftar Pustaka. Supriyadi, Moh Pemrograman Sistem Pengendali dengan Delphi.

FAKULTAS TEKNIK UNIVERSITAS NEGERI YOGYAKARTA LAB SHEET (KOMUNIKASI DATA)

Object Name Caption. RadioButton1 rpria Pria RadioButton2 rwanita Wanita. ComboBox1 ckode - Edit1 enapar - Edit2 ehrg - Edit3 ejumbel - Edit4 etotal -

& PEMROGRAMAN. Alex De Kweldju, S.Kom D3 Teknik Komputer Fakultas Teknik Universitas Negeri Papua

LANJUTAN APLIKASI DATABASE

BAB I PENDAHULUAN. Perkembangan industri komunikasi tanpa kabel secara global telah tumbuh

LAMPIRAN A: LISTING PROGRAM

Modul Praktikum 6 Dasar-Dasar Teknologi Informasi dan Komunikasi. Aplikasi Spreadsheet Microsoft Excel (2) Validasi Data & Fungsi Terbilang

BAB II TINJAUAN PUSTAKA

Pemrogram Pem a rogram n Visual Delphi 7

Pemrograman dengan C++ Builder 2004 Taryana S Pendahuluan C++ Builder adalah sebuah aplikasi yang digunakan untuk pengembangan dengan

BAB II LANDASAN TEORI Konsep Dasar Sistem Informasi Manajemen (SIM) umum semua manajer dalam organisasi atau dalam tingkatan manajemen.

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

MEMBUAT LAPORAN (DATA REPORT)

Program Studi Teknik Mesin S1

Membuat File Dynamic Link Library (*.DLL) Menggunakan Borland Delphi

DAFTAR PUSTAKA. Abdia, Gunaidi Away.2008.The Shortcut Of Delphi For ACCOUNTING.Bandung : Informatika.

Pengenalan Visual Basic

BAB II TINJAUAN PUSTAKA

BAB 2 LANDASAN TEORI

1.1 Mengenal Visual Basic (VB) 1.2 Mengenal Integrated Development Environment (IDE) VB 6

BAB IV. adalah tahap implementasi dan penyempurnaan. Berikut ini akan dijelaskan. implementasi dari aplikasi permainan komputer game knight s tour

[Year] SILABUS: Kode Mata Kuliah MI09KB33 Mata Kuliah Pemrograman Visual II Prasyarat - Cosyarat

Kodingan untuk Membuat Grafik dari Persamaan Garis Lurus dan Kuadrat Menggunakan Delphi 7

FAKULTAS TEKNIK UNIVERSITAS NEGERI YOGYAKARTA LAB SHEET (KOMUNIKASI DATA)

PENERAPAN ALGORITMA FUNGSI TERBILANG PADA APLIKASI PERKANTORAN

1. MENGENAL VISUAL BASIC

BAB 2 LANDASAN TEORI. Data adalah fakta atau bagian dari fakta yang digambarkan dengan simbol-simbol,

BAB-2 : TIPE DATA, VARIABEL DAN OPERATOR

B. Kompetensi Mahasiswa dapat memahami tentang kendali kesalahan dengan paritas serta dapat melakukan penghitungan paritas.

LAMPIRAN. A. Flowchart 1. Contoh Flowchart Penempatan Subjek. Gambar 185. Flowchart Penempatan Subjek AB

Pertemuan -1 BORLAND DELPHI

LANJUTAN APLIKASI DATABASE

PENGENALAN DELPHI A. PENGENALAN DELPHI

BAB III ANALISIS DAN DESAIN SISTEM

BAB II LANDASAN TEORI

PROGRAM STUDI S1 SISTEM KOMPUTER UNIVERSITAS DIPONEGORO. Dasar Algoritma. Oky Dwi Nurhayati, ST, MT

Aplikasi Pembelajaran Konversi Ekspresi Matematika Dalam Bahasa Mandarin

SEKOLAH TINGGI MANAJEMEN INFORMATIKA & KOMPUTER JAKARTA STI&K SATUAN ACARA PERKULIAHAN

Borland Delphi 3.0. Pengenalan Delphi dan Lingkungan Kerjanya

SATUAN ACARA PERKULIAHAN

[Type the company name] [Type the document title] [Type the document subtitle] Gilang Abdul Aziz [Pick the date]

Transkripsi:

BAB 1 PENDAHULUAN 1.1 Latar Belakang Seiring dengan perkembangan teknologi informasi dan komunikasi yang semakin pesat dewasa ini, telah membuat bola dunia terasa semakin kecil dan ruang seakan menjadi tak berjarak lagi dan hampir semua aspek kehidupan menggunakan komputer. Mulai dari wahana teknologi informasi dan komunikasi yang paling sederhana berupa perangkat radio dan televisi hingga internet dan telepon genggam dengan protokol aplikasi tanpa kabel. Tentu saja teknologi informasi tidak akan berarti apa-apa tanpa didukung oleh sistem informasi yang dalam hal ini adalah aplikasi-aplikasi yang ditanam dalam perangkat teknologi tersebut. Penggunaan dari perangkat lunak (software) dalam personal computer (PC) dapat dikembangkan ke berbagai kebutuhan sesuai dengan permintaan pemakai. Dalam penelitian ini akan dikembangkan salah satu pemakaian dari perangkat lunak dalam PC yaitu sebagai pelafalan dan konversi bilangan menjadi kalimat dengan menggunakan Borland Delphi Versi 6.0, dimana penelitian ini dimaksudkan untuk melihat sejauh mana penggunaan aplikasi ini dapat berguna bagi para pemakai yang berkecimpung dalam bidang keuangan dan atau yang melakukan kegiatan keuangan. Misalnya dalam penulisan kwitansi yang menggunakan penulisan kalimat dari nilai suatu bilangan tertentu. Kecenderungan yang terjadi adalah bahwa penulisan pembilangan nilai tersebut kurang teliti terutama apabila memuat bilangan yang terdiri dari banyak digit. Komputerisasi pelafalan dan konversi bilangan menjadi kalimat dengan menggunakan Borland Delphi 6.0 akan memiliki keunggulan / kelebihan dari pelafalan dan konversi bilangan menjadi kalimat secara manual. Beberapa keunggulan tersebut selain mengoptimalkan fungsi komputer sebagai PC adalah mengolah data secara cepat dan menampilkan hasil yang lebih teliti. 1

1.2 Perumusan Masalah Berdasarkan latar belakang yang telah diuraikan, masalah utama yang dihadapi adalah bagaimana mengurangi kekurangtelitian dalam penulisan pembilangan suatu nilai bilangan menjadi kalimat. 1.3 Batasan Masalah Dalam penelitian ini, agar penelitian tidak menjadi melebar, peneliti lebih menekankan pada pembahasan yang juga merupakan pembatasan masalah yaitu pelafalan dan konversi bilangan menjadi kalimat dengan menggunakan Borland Delphi 6.0. Sedangkan penelitian yang dilakukan adalah dalam bentuk rekayasa perangkat lunak. 1.4 Tujuan Penelitian 1. Memberikan gambaran secara umum mengenai sistem kerja dari pelafalan dan konversi bilangan menjadi kalimat dengan menggunakan Borland Delphi 6.0 2. Menunjukkan seberapa optimalnya kinerja dari komputerisasi pelafalan dan konversi bilangan menjadi kalimat dengan menggunakan Borland Delphi 6.0 3. Mengaplikasikan perangkat lunak ( software ) untuk membuat pelafalan dan konversi bilangan menjadi kalimat sehingga mengurangi kekurang telitian dalam pembilangan nilai bilangan 1.5 Manfaat Penelitian Diharapkan setelah selesainya penelitian ini bisa bermanfaat bagi 1. Masyarakat Memberikan informasi dan pandangan kepada masyarakat tentang pemanfaatan tools pada Borland Delphi 6.0 untuk pelafalan konversi bilangan menjadi kalimat. 2. Peneliti Dapat mengembangkan kemampuan dalam ilmu pengetahuan dan teknologi dibidang aplikasi IT dalam wacana intelektualitas yang dimiliki. 2

3. Akademis Dapat mengembangkan permasalahan lebih luas dan kompleks berdasarkan konsep-konsep yang sudah ada. Hasil penelitian yang diusulkan ini dapat bermanfaat untuk pengembangan IPTEK terutama dalam bidang keuangan untuk mengurangi kekurang telitian dalam pembilangan nilai bilangan menjadi kalimat. 1.6 Metodologi Penelitian Agar penelitian ini dapat memberikan hasil yang baik, maka penulisan laporannya menggunakan berbagai macam data, keterangan data, serta informasi penting yang diperoleh dari berbagai sumber, didasarkan pada 1.6.1 Jenis Data 1. Data Primer, yaitu data yang diperoleh secara langsung dari obyek penelitian 2. Data Sekunder, yaitu data yang diperoleh dari buku-buku, literatur sebagai pelengkap dalam penyusunan proposal penelitian ini. 1.6.2 Metode Pengumpulan Data 1. Metode Studi Pustaka, yaitu metode pengumpulan data melalui pemahaman literatur maupun buku dan juga browsing internet sebagai acuan untuk menentukan landasan teori. 2. Metode Observasi atau pengamatan, yaitu pengumpulan data dengan melakukan pengamatan dan pencatatan secara langsung mengenai hal-hal yang diselidiki. 1.7 Sistematika Penulisan Untuk penulisan laporan penelitian ini, peneliti menggunakan tahapan penulisan sebagai berikut BAB I PENDAHULUAN Berisi latar belakang, perumusan masalah, batasan masalah, tujuan penelitian, manfaat penelitian, metodologi penelitian dan sistematika penulisan. 3

BAB II LANDASAN TEORI Berisi tentang teori-teori dasar pelafalan dan konversi bilangan menjadi kalimat serta gambaran umum tentang Borland Delphi 6.0 BAB III IMPLEMENTASI PROGRAM Berisi tentang implementasi dari program pelafalan dan konversi bilangan menjadi kalimat dengan menggunakan Borland Delphi 6.0. BAB IV PENUTUP Berisi tentang kesimpulan dan saran-saran dari hasil penelitian. DAFTAR PUSTAKA LAMPIRAN 4

BAB 2 LANDASAN TEORI 2.1 Pelafalan Menurut Kamus Besar Bahasa Indonesia, lafal berarti cara pembacaan atau cara pengejaan dari sebuah kata atau kalimat. Dalam penelitian ini berarti dari sebuah bilangan yang dimasukkan, akan diberikan cara pembacaannya dalam Bahasa Indonesia. Masalah yang akan diutarakan dalam penelitian ini adalah tingkat kesalahan dalam membuat kalimat dari pelafalan bilangan, penyebab terjadinya kesalahan dan cara mengatasi kesalahan yang terjadi. 2.2 Konversi Kata konversi dalam Kamus Besar Bahasa Indonesia diartikan sebagai perubahan bentuk dari satu bentuk ke bentuk yang lain. Dalam hal ini, dimaksudkan sebagai perubahan dari penulisan berupa angka menjadi penulisan dalam kata kata atau kalimat. 2.3 Borland Delphi 6.0 Seperti telah disebutkan sebelumnya, peneliti akan menggunakan Borland Delphi 6.0 sebagai bahasa penyusun software-nya. Bahasa pemrograman ini merupakan bentuk pengembangan teknologi visual dari Bahasa Pascal yang telah beredar sebelumnya. Adapun beberapa alasan penggunaan program ini adalah sebagai berikut Borland Delphi menyediakan kemudahan dalam penyusunan layout aplikasi berbasis Windows 9x. Borland Delphi mendukung tampilan berbasis grafis. Borland Delphi dilengkapi berbagai macam objek yang secara umum dapat dikatakan lengkap, baik dalam hal komponen visual maupun dalam hal fungsi-fungsi yang tersedia di dalamnya. (Anthony Pranata, Pemrograman Borland Delphi 3, Andi Yogyakarta) 5

Dengan memandang beberapa alasan tersebut, maka penulis bermaksud menggunakan berbagai kelebihan tersebut untuk menyusun suatu aplikasi yang ideal. Mengenal IDE Delphi IDE (Integrated Development Environment) Delphi merupakan tampilan awal yang kita lihat pada saat pertama kali kita menjalankan program Delphi. Speed Bar Menu Component Palette Object Inspector Form Designer Code Editor Gambar 2.1. Bagian bagian IDE Delphi Pada dasarnya IDE Delphi dibagi menjadi enam bagian utama, yaitu Menu, Speed Bar, Component Palette, Form Designer, Code Editor, dan Object Inspector. (Madcoms, Pemrograman Borland Delphi 6, Jilid 1, Andi Yogyakarta) 6

BAB 3 IMPLEMENTASI PROGRAM 3.1 Penjelasan Singkat Banyak program, terutama yang berhubungan dengan keuangan membutuhkan fungsi untuk menyebutkan nilai sebuah angka. Seperti dapat dilihat dalam sebuah kuitansi, faktur, atau yang lainnya. Disini akan diuraikan sebuah program sederhana yang berguna untuk menghasilkan kalimat dari sebuah angka. Dalam penelitian ini digunakan aplikasi Borland Delphi. Dan fitur yang dimiliki amatlah sederhana. Sebagai nilai tambah, program yang dibuat dalam penelitian ini dapat menyebutkan / melafalkan hasil pengkonversian angka yang dimasukkan menjadi kalimat yang terbaca. Adapun program yang dibuat ini hanya bisa menyebutkan bilangan maksimal sepanjang 14 angka bilangan bulat. Tidak bisa menyebutkan negatif. Dan angka yang dimasukkan ke dalam program tidak dilakukan pengujian apapun, kecuali panjang angka. Jadi dianggap angka yang digunakan terhadap fungsi ini berupa angka bulat sederhana, tanpa format apapun. Cara yang ditempuh untuk menyebut sebuah bilangan adalah dengan membuat sebuah tabel kata dari angka 1 sampai 9. Satu buah tabel tingkat bilangan (ribu, juta, milyar, triliun). Tabel ini dibuat dalam bentuk array. Ketika melakukan proses penyebutan angka, bilangan yang akan disebutkan, akan diurai menjadi array angka. Misalnya 6745, akan diurai menjadi array, angka[1] = 5 angka[2] = 4 angka[3] = 7 angka[4] = 6 Selanjutnya, dilakukan iterasi untuk menyebut angka. Iterasi dilakukan terhadap sebuah blok yang terdiri dari 3 angka, mulai dari kanan, atau dari larik angka terkecil. Untuk contoh di atas, pada iterasi pertama, akan diambil tiga buah elemen array, yaitu angka[1], angka[2], dan angka[3]. Tiga buah angka ini "diterjemahkan" menggunakan tabel yang sudah dibuat terlebih dahulu. Diperhatikan juga posisi angka untuk ratusan, puluhan, 7

dan satuan. Selesai menterjemahkan satu blok, diperiksa, dan diberi kata untuk tingkatan, yaitu ribu, atau juta, atau milyar, atau triliun. Setelah itu dilanjutkan ke blok berikutnya, yaitu angka[4], angka[5], dan angka[6]. Tampilan Program Tampilan dari program yang dibuat dalam penelitian ini adalah seperti yang dapat dilihat berikut ini Gambar 3.1. Tampilan Program Secara umum, dapat dilihat bahwa pada program ini memiliki tampilan yang sederhana serta fungsi fungsi yang sederhana pula. Terdapat inputan bilangan yang ingin dikonversikan / dilafalkan. Selain itu terdapat tombol Konversi yang digunakan untuk mengkonversikan bilangan yang sudah diinputkan menjadi kalimat. Sedangkan tombol Lafalkan digunakan apabila dari bilangan yang dimasukkan hanya akan didengarkan suara pelafalannya. Hasil pengkonversian akan ditampilkan di sebelah label Terbilang. Dan terdapat tombol Reset untuk mengosongkan kotak isian bilangan serta mereset semua nilai variabel yang digunakan dalam program. Dan tombol terakhir yaitu Exit digunakan untuk mengakhiri jalannya program. Alur Jalannya Program Jika dijelaskan dengan kalimat, maka alur jalannya program ini dapat diurutkan sebagai berikut 1. Masukkan bilangan yang akan dikonversi / dilafalkan. 2. Jika tombol Konversi yang dipilih, maka akan dijalankan prosedur untuk mengubah angka yang diinputkan tersebut menjadi kalimat. Prosedur ini akan dijelaskan lebih lanjut pada bagian berikutnya. 8

3. Jika tombol Lafalkan yang dipilih, maka prosesnya sama dengan tombol Konversi namun ditambah dengan pengucapan kalimat hasil konversi tersebut. Adapun data suara yang akan dimainkan, telah disimpan dalam sebuah tabel database tertentu yang akan dimuat oleh komponen media player dari program. 4. Hasil konversi akan ditampilkan pada bagian Terbilang 5. Tombol Reset digunakan untuk membersihkan kotak inputan bilangan serta mereset ulang semua variabel yang digunakan dalam prosedur prosedur program ini. 6. Tombol Exit digunakan untuk mengakhiri jalannya program. Struktur Tabel yang Digunakan Pada program ini digunakan sebuah tabel database yang berfungsi sebagai tempat penyimpanan data suara yang nantinya akan dimainkan pada saat hasil konversi bilangan akan dilafalkan. Tabel yang digunakan adalah bertipe paradox, yang merupakan bawaan dari Borland Delphi. Adapun struktur tabel yang digunakan adalah sebagai berikut Gambar 3.2. Struktur Tabel yang Digunakan 9

Sedangkan isi tabel adalah semua data kata yang dapat digunakan untuk membentuk kalimat hasil konversi bilangan, beserta lokasi file suara yang akan dimainkan jika akan dilafalkan. Isi tabel dapat dilihat pada gambar berikut ini Gambar 3.3. Isi Tabel yang Digunakan Dari tabel dapat dilihat bahwa sebenarnya ada 21 (dua puluh satu) kata yang dapat digunakan sebagai kombinasi pembentukan kalimat hasil konversi bilangan. Kata kata tersebutlah yang digunakan sebagai pembentuk kalimat hasil konversi bilangan. Penjelasan Prosedur Utama dalam Program Perlu diketahui bahwa Borland Delphi memposisikan semua komponen dalam program sebagai objek yang mandiri. Dalam objek tersebut terdapat properti serta kejadian yang dapat ditangani. Prosedur yang dimaksud sebelumnya, terletak pada penanganan kejadian masing masing objek. Misalnya tombol Konversi akan menjalankan prosedur tertentu yang dipicu oleh adanya penekanan tombol tersebut. 10

a. Prosedur Penekanan Tombol Konversi atau Lafalkan Prosedur ini akan dijalankan pada saat tombol Konversi atau Lafalkan ditekan. Pada prinsipnya kedua tombol ini akan menjalankan prosedur yang sama, namun yang berbeda adalah pada bagian penampilan kalimat hasil konversi serta pada saat memperdengarkan kalimat hasil pelafalan. Untuk lebih jelasnya, dapat dilihat pada penjelasan berikut ini procedure Tfbil.konversiClick(Sender TObject); var angka array[1..14] of integer; {penyimpanan bilangan} kata array[0..9] of string; {pelafalan bilangan} basis array[0..4] of string; {basis bilangan} panjang integer; {panjang bilangan} loop1,loop2,tingkat,delay,res integer; {counter} subkalimat,kata1,kata2,kata3 string; {menampung hasil terbilang} Bagian tersebut memuat deklarasi variabel yang digunakan dalam prosedur ini. Variabel angka nantinya akan digunakan sebagai penampung bilangan yang dimasukkan berdasarkan posisi keberadaan angka tersebut. Misalnya 6745, akan diurai menjadi array, angka[1] = 5 angka[2] = 4 angka[3] = 7 angka[4] = 6 Variabel kata digunakan untuk menampung kata kata hasil konversi bilangan dari nol hingga sembilan. Variabel basis digunakan untuk menampung kata kata yang merupakan basis bilangan yaitu ribu, juta, dan seterusnya. Variabel panjang digunakan untuk mengetahui panjang bilangan yang dimasukkan. Selain itu diperlukan variabel lain yang dipergunakan sebagai counter serta untuk menampung kalimat hasil konversi. {inisialisasi data array} kata[0]=' '; kata[1]=' satu '; kata[2]=' dua '; kata[3]=' tiga '; kata[4]=' empat '; kata[5]=' lima '; kata[6]=' enam '; kata[7]=' tujuh '; kata[8]=' delapan '; kata[9]=' sembilan '; for loop1=1 to 14 do angka[loop1]=0; 11

basis[0]=' '; basis[1]=' ribu '; basis[2]=' juta '; basis[3]=' milyar '; basis[4]=' triliun '; Bagian ini digunakan untuk memberikan nilai awal kepada tiap tiap variabel array yang digunakan. {menghitung panjang bilangan} panjang=strlen(pchar(inbil.text)); Bagian ini digunakan untuk menghitung panjang karakter dari bilangan yang telah dimasukkan. {memasukkan angka-angka dalam bilangan ke dalam array} for loop1= 1 to panjang do angka[loop1]=strtoint(copy(inbil.text,panjang-loop1+1,1)); Bagian ini digunakan untuk memasukkan satu per satu bilangan pada posisi tertentu di array seperti yang telah dijelaskan sebelumnya. loop1=1; {digunakan untuk indeks bilangan} tingkat=0; {digunakan untuk indeks basis} kalimat=''; {inisialisasi variabel penampung hasil terbilang} Bagian ini digunakan untuk memberikan nilai awal kepada tiap tiap variabel loop1, tingkat dan kalimat yang digunakan. Potongan program berikut ini adalah bagian iterasi yang digunakan untuk mengubah bilangan yang dimasukkan menjadi kalimat. Iterasi akan dilakukan sejumlah panjang bilangan yang dimasukkan. while (loop1<=panjang) do subkalimat=''; kata1=''; kata2=''; kata3=''; Bagian ini digunakan untuk memberikan nilai awal kepada tiap tiap variabel yang digunakan nantinya untuk menampung kalimat hasil konversi bilangan. Perlu diketahui bahwa sebenarnya skema konversi bilangan akan berulang setiap tiga digit bilangan dari belakang, yaitu satuan, puluhan, dan ratusan. Baru setelah itu terdapat basis bilangan yaitu ribuan, jutaan, dan seterusnya. Oleh karena itu proses pembacaan bilangan yang akan dikonversikan, dibuat untuk menangani ratusan, puluhan, dan satuan, seperti yang dapat dilihat pada potongan program berikut ini 12

{ratusan} if (angka[loop1+2]<>0) then if (angka[loop1+2]=1) then kata1=' seratus ' else kata1=kata[angka[loop1+2]]+' ratus '; Bagian tersebut menangani digit untuk ratusan. Jika digit ratusan adalah 1 maka kata hasil konversinya adalah seratus. Sedangkan apabila ternyata digit ratusan adalah bilangan yang lain, maka hasil konversinya adalah pembacaan digit tersebut ditambah dengan kata ratus. {puluhan atau belasan} if (angka[loop1+1]<>0) then if (angka[loop1+1]=1) then if (angka[loop1]=0) then kata2='sepuluh' else if (angka[loop1]=1) then kata2='sebelas' else kata2=kata[angka[loop1]]+' belas ' else kata2=kata[angka[loop1+1]]+' puluh '; Bagian tersebut menangani digit untuk puluhan atau belasan. Jika digit ratusan adalah 1 maka kata hasil konversinya adalah belasan. Namun jika digit di belakangnya adalah 0 maka hasil konversinya adalah sepuluh. Sedangkan apabila ternyata digit puluhan adalah bilangan yang lain, maka hasil konversinya adalah pembacaan digit tersebut ditambah dengan kata puluh. {satuan} if (angka[loop1]<>0) then if (angka[loop1+1]<>1) then kata3=kata[angka[loop1]]; Bagian tersebut menangani digit untuk satuan. Bagian ini hanya melakukan pembacaan digit tersebut saja. {pengujian bila 0 semua dan penambahan basis} if ((angka[loop1]<>0) or (angka[loop1+1]<>0) or (angka[loop1+2]<>0)) then subkalimat=kata1+kata2+kata3+basis[tingkat]; {menggabungkan sub kalimat ke kalimat utuh} kalimat=subkalimat+kalimat; loop1=loop1 + 3; tingkat=tingkat + 1; 13

Bagian terakhir dalam iterasi adalah penggabungan kalimat hasil konversi sehingga nantinya dapat dilakukan pembacaan yang utuh dari hasil konversi bilangan tersebut. {mengganti satu ribu menjadi seribu jika diperlukan} kalimat=stringreplace(kalimat,'satu ribu','seribu',[rfreplaceall,rfignorecase]); {apabila inputan bilangan hanya nol} if inbil.text='0' then kalimat='nol'; Bagian tersebut menangani pengecualian yang mungkin terjadi pada saat konversi yaitu apabila ada kemungkinan hasil konversi adalah satu ribu, maka akan diganti dengan seribu. Selain itu juga dilakukan pengecualian jika ternyata bilangan yang dimasukkan adalah 0, maka hasil konversinya adalah nol. Bagian berikut ini digunakan untuk membedakan penekanan tombol mana yang dilakukan. Apabila tombol Konversi yang ditekan, maka hanya akan ditampilkan kalimat hasil konversi, namun jika ternyata tombol Lafalkan yang ditekan, maka akan dimainkan suara yang memperdengarkan cara pelafalan kalimat tersebut. case (sender as TButton).Tag of 1 {tombol KONVERSI} {menampilkan kalimat pada terbilang} terbilang.caption=kalimat; 2 {tombol LAFALKAN} {parsing kalimat untuk nantinya dilafalkan} parsing(kalimat); for loop2=1 to jmlkata do tdata.findkey([subkal[loop2]]); mainsuara.filename=tdata.fieldvalues['suara']; mainsuara.open; mainsuara.play; for delay=1 to 70000000 do application.processmessages; mainsuara.stop; mainsuara.close; jmlkata=0; for res=1 to 30 do subkal[res]=''; {delay} Ketika tombol Lafalkan yang ditekan, maka kalimat hasil konversi sebelumnya akan dicari datanya per kata dari tabel. Dari data tabel itu pula, dimainkan 14

file suara yang akan menyuarakan hasil pelafalan kalimat tersebut melalui komponen media player. b. Prosedur Penekanan Tombol Reset Berikut adalah potongan prosedur yang akan dijalankan pada saat tombol Reset ditekan. Prosedur ini digunakan untuk menghapus tampilan kalimat hasil konversi yang mungkin sebelumnya telah dilakukan. Selain itu, prosedur ini juga akan menghapus inputan bilangan yang mungkin telah dimasukkan sebelumnya. Procedure Tfbil.resetClick(Sender Tobject); {digunakan untuk mengeset ulang tampilan} terbilang.caption= ; inbil.clear; kalimat= ; c. Prosedur Penekanan Tombol Exit Prosedur terakhir yang dilakukan adalah pada saat tombol Exit ditekan. Tombol ini digunakan untuk mengakhiri jalannya program. procedure Tfbil.exitClick(Sender TObject); Application.Terminate; {menghentikan aplikasi} 15

BAB 4 KESIMPULAN DAN SARAN 4.1 Kesimpulan Berdasarkan pembahasan dari bab-bab sebelumnya, kita dapat mengetahui konsep dasar dari pelafalan dan konversi dari bilangan menjadi kalimat serta sistem kerja dari aplikasi Borland Delphi 6.0, sehingga dapat disimpulkan sebagai berikut 1. Pelafalan ini dapat digunakan untuk angka-angka dengan digit yang panjang ( terutama di sektor ekonomi ). 2. Dapat digunakan sebagai pembelajaran bagi anak-anak dengan tampilan yang lebih menarik dalam pembelajaran interaktif. 3. Pelafalan ini tidak hanya bisa dilihat dalam bentuk tampilan tetapi juga bisa dengan audio, sehingga bisa dikembangkan dalam bentuk pembelajaran multimedia pelafalan. 4.2 Saran 1. Dalam penelitian selanjutnya, diharapkan bisa dikembangkan dengan bilangan pecahan dan bilangan negatif. 2. Jumlah digit yang ada bisa dikembangkan lagi dengan digit yang lebih panjang ( lebih dari 14 digit ). 3. Pelafalan dapat dibuat dengan bahasa pemrograman lain yang nantinya dapat dikonversikan atau di-load ke Web. 4. Aplikasi ini dapat juga diterapkan untuk pembelajaran interaktif bagi anakanak karena cara kerjanya sama dengan pelafalan bilangan untuk anak-anak. 16

DAFTAR PUSTAKA 1. Kamus Besar Bahasa Indonesia 2. Abdul Kadir, Dasar pemrograman Delphi 5, Jilid 1 dan 2, Andi Yogyakarta 3. Anthony Pranata, Pemrograman Borland Delphi 3, Andi Yogyakarta 4. Madcoms, Pemrograman Borland Delphi 6, Jilid 1, Andi Yogyakarta 5. Reky (admin@endok.org ), Fungsi Terbilang, 23 Juni 2007 17

JADWAL PELAKSANAAN PENELITIAN No Kegiatan 1 Persiapan Proposal 2 Review dan Revisi 3 Studi Pustaka & Analisa 4 Desain & Implementasi 5 Pengujian & Evaluasi 6 Penyusunan Laporan Hasil Penelitian 7 Seminar 8 Revisi Bulan Jan-08 Feb-08 Mar-08 Apr-08 Mei-08 Jun-08 Jul-08 3 4 5 1 2 3 4 5 1 2 3 4 5 1 2 3 4 5 1 2 3 4 1 2 3 4 5 1 2 3 4 5 18

PERSONALIA PENELITIAN 1. Ketua Peneliti Nama lengkap dan gelar Vensy Vydia, S. Kom NIS 06557003102081 Pangkat / Gol Penata Muda / IIIa Jabatan Dosen Sifat Penelitian Tidak Berkelanjutan Fakultas Teknologi Informasi & Komunikasi Jurusan Teknologi Informasi Bidang Keahlian Teknologi Informasi Alamat Kantor Universitas Semarang 2. Anggota Peneliti I Nama lengkap dan gelar Desi Purwanti K, S. Kom, M. Kom NIS 06557003102112 Pangkat / Gol Penata Muda / IIIa Jabatan Dosen Sifat Penelitian Tidak Berkelanjutan Fakultas Teknologi Informasi & Komunikasi Jurusan Teknologi Informasi Bidang Keahlian Teknologi Informasi Alamat Kantor Universitas Semarang 3. Anggota Peneliti II Nama lengkap dan gelar Robby Kurniawan Budhi, S. Kom NIS 06557003102113 Pangkat / Gol Penata Muda / IIIa Jabatan Dosen Sifat Penelitian Tidak Berkelanjutan Fakultas Teknologi Informasi & Komunikasi Jurusan Teknologi Informasi Bidang Keahlian Teknologi Informasi Alamat Kantor Universitas Semarang 19

LAMPIRAN 1 SURAT PERJANJIAN PELAKSANAAN PENELITIAN DOSEN MUDA Nomor 09 / LPPM USM / I / 2008 20

LAMPIRAN 2 Kode Program unit ulafal; interface uses Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, Dialogs, StdCtrls, ExtCtrls, MPlayer, DB, DBTables; type Tfbil = class(tform) Label1 TLabel; inbil TEdit; Label2 TLabel; konversi TButton; lafal TButton; terbilang TLabel; reset TButton; exit TButton; mainsuara TMediaPlayer; tdata TTable; procedure konversiclick(sender TObject); procedure resetclick(sender TObject); procedure exitclick(sender TObject); procedure parsing(kal string); procedure FormShow(Sender TObject); procedure FormClose(Sender TObject; var Action TCloseAction); private { Private declarations } public { Public declarations } var fbil Tfbil; kalimat string; {kalimat hasil terbilang} subkal array[1..30] of string; {potongan kata} jmlkata integer; {jumlah potongan kata} implementation {$R *.dfm} procedure Tfbil.konversiClick(Sender TObject); var angka array[1..14] of integer;{penyimpanan bilangan} kata array[0..9] of string; {pelafalan bilangan} basis array[0..4] of string; {basis bilangan} panjang integer; {panjang bilangan} 21

loop1,loop2,tingkat,delay,res integer; {counter} subkalimat,kata1,kata2,kata3 string; {menampung hasil terbilang} {inisialisasi data array} kata[0]=' '; kata[1]=' satu '; kata[2]=' dua '; kata[3]=' tiga '; kata[4]=' empat '; kata[5]=' lima '; kata[6]=' enam '; kata[7]=' tujuh '; kata[8]=' delapan '; kata[9]=' sembilan '; for loop1=1 to 14 do angka[loop1]=0; basis[0]=' '; basis[1]=' ribu '; basis[2]=' juta '; basis[3]=' milyar '; basis[4]=' triliun '; {menghitung panjang bilangan} panjang=strlen(pchar(inbil.text)); {memasukkan angka-angka dalam bilangan ke dalam array} for loop1= 1 to panjang do angka[loop1]=strtoint(copy(inbil.text,panjang-loop1+1,1)); loop1=1; {digunakan untuk indeks bilangan} tingkat=0; {digunakan untuk indeks basis} kalimat=''; {inisialisasi variabel penampung hasil terbilang} while (loop1<=panjang) do subkalimat=''; kata1=''; kata2=''; kata3=''; {ratusan} if (angka[loop1+2]<>0) then if (angka[loop1+2]=1) then kata1=' seratus ' else kata1=kata[angka[loop1+2]]+' ratus '; {puluhan atau belasan} if (angka[loop1+1]<>0) then if (angka[loop1+1]=1) then if (angka[loop1]=0) then kata2='sepuluh' 22

else if (angka[loop1]=1) then kata2='sebelas' else kata2=kata[angka[loop1]]+' belas ' else kata2=kata[angka[loop1+1]]+' puluh '; {satuan} if (angka[loop1]<>0) then if (angka[loop1+1]<>1) then kata3=kata[angka[loop1]]; {pengujian bila 0 semua dan penambahan basis} if ((angka[loop1]<>0) or (angka[loop1+1]<>0) or (angka[loop1+2]<>0)) then subkalimat=kata1+kata2+kata3+basis[tingkat]; {menggabungkan sub kalimat ke kalimat utuh} kalimat=subkalimat+kalimat; loop1=loop1 + 3; tingkat=tingkat + 1; {mengganti satu ribu menjadi seribu jika diperlukan} kalimat=stringreplace(kalimat,'satu ribu','seribu',[rfreplaceall,rfignorecase]); {apabila inputan bilangan hanya nol} if inbil.text='0' then kalimat='nol'; {mengetahui tombol mana yang ditekan} case (sender as TButton).Tag of 1 {tombol KONVERSI} {menampilkan kalimat pada terbilang} terbilang.caption=kalimat; 2 {tombol LAFALKAN} {parsing kalimat untuk nantinya dilafalkan} parsing(kalimat); for loop2=1 to jmlkata do tdata.findkey([subkal[loop2]]); pada tabel} mainsuara.filename=tdata.fieldvalues['suara']; {mencari data {menentukan file yang dibuka} mainsuara.open; {membuka komponen media player} mainsuara.play; {memainkan suara media player} for delay=1 to 70000000 do application.processmessages; {delay} mainsuara.stop; {menghentikan suara media player} mainsuara.close; {menutup komponen media player} 23

jmlkata=0; {mengosongkan jumlah kata} for res=1 to 30 do subkal[res]=''; {mengosongkan potongan kalimat} procedure Tfbil.resetClick(Sender TObject); {digunakan untuk mengeset ulang tampilan} terbilang.caption=''; {membersihkan tampilan hasil terbilang} inbil.clear; {membersihkan inputan bilangan yang diinputkan} kalimat=''; {mengosongkan hasil terbilang} procedure Tfbil.exitClick(Sender TObject); Application.Terminate; {menghentikan aplikasi} procedure Tfbil.parsing(kal string); var tanda integer; {penanda spasi antar kata} panjangkal integer; {panjang kalimat hasil terbilang} huruf string; {karakter yang terbaca} kata string; {potongan kata} panjangkal=strlen(pchar(kalimat)); jmlkata=0; tanda=1; kata=''; while tanda<=panjangkal do huruf=copy(kalimat,tanda,1); if huruf<>' ' then inc(jmlkata); while (huruf<>' ') do huruf=copy(kalimat,tanda,1); subkal[jmlkata]=subkal[jmlkata]+huruf; inc(tanda); inc(tanda); procedure Tfbil.FormShow(Sender TObject); tdata.open; {buka tabel data} 24

procedure Tfbil.FormClose(Sender TObject; var Action TCloseAction); tdata.close; {tutup tabel data} end. 25

LAPORAN PENELITIAN PELAFALAN DAN KONVERSI BILANGAN MENJADI KALIMAT MENGGUNAKAN BORLAND DELPHI 6.0 Oleh Vensy Vydia, S. Kom Desi Purwanti K, S. Kom, M. Kom Robby Kurniawan B, S. Kom Proyek Penelitian Ini Dibiayai Oleh Universitas Semarang Dengan Surat Perjanjian No. 09 / LPPM USM / I / 2008 LEMBAGA PENELITIAN DAN PENGABDIAN KEPADA MASYARAKAT UNIVERSITAS SEMARANG 2008 26

HALAMAN IDENTITAS DAN PENGESAHAN LAPORAN AKHIR HASIL PENELITIAN 1. a. Judul Penelitian b. Bidang Ilmu 2. Ketua Peneliti a. Nama b. NIS c. Pangkat / Gol d. Jabatan e. Sifat Penelitian f. Fakultas / Jurusan g. Bidang Keahlian h. Alamat Kantor i. Alamat Rumah 3. Jumlah Anggota Peneliti a. Nama Anggota Peneliti I b. Nama Anggota Peneliti II Pelafalan dan Konversi Bilangan Menjadi Kalimat Menggunakan Borland Delphi 6.0 Teknologi Informasi Vensy Vydia, S. Kom 06557003102081 Penata Muda / IIIa Dosen Tidak Berkelanjutan TIK / Teknologi Informasi Teknologi Informasi Jl. Soekarno-Hatta Tlogosari Semarang Jl. Jatiluhur Timur III no. 8 Rt. 04 / Rw. V Semarang 50261 2 ( dua ) orang Desi Purwanti K, S. Kom, M. Kom Robby Kurniawan B, S. Kom 4. Lokasi Penelitian Kampus Universitas Semarang 5. Lama Penelitian 3 bulan 6. Biaya Penelitian Rp 1.500.000,- ( satu juta lima ratus ribu rupiah ) 7. Sumber Biaya Universitas Semarang Mengetahui, Dekan Fakultas TIK, Semarang, Juni 2008 Ketua Penelitian, Titin Winarti, S. Kom, MM NIS. 06557003102049 Vensy Vydia, S. Kom NIS. 06557003102081 Ketua Lembaga Penelitian dan Pengabdian Kepada Masyarakat Dr. Ir. P. Widiyaningrum, MS NIS. 06557002100045 27

LEMBAR REVIEWER 1. b. Judul Penelitian b. Bidang Ilmu 2. Ketua Peneliti a. Nama b. NIS c. Pangkat / Gol d. Jabatan e. Sifat Penelitian f. Fakultas / Jurusan g. Bidang Keahlian Pelafalan dan Konversi Bilangan Menjadi Kalimat Menggunakan Borland Delphi 6.0 Teknologi Informasi Vensy Vydia, S. Kom 06557003102081 Penata Muda / IIIa Dosen Tidak Berkelanjutan TIK / Teknologi Informasi Teknologi Informasi 3. Jumlah Anggota Peneliti 2 ( dua ) orang 4. Lokasi Penelitian Kampus Universitas Semarang 5. Lama Penelitian 3 bulan 6. Tempat Penelitian Fakultas Teknologi Informasi & Komunikasi Menyetujui, Pereviewer, Semarang, Juni 2008 Ketua Penelitian, Titin Winarti, S. Kom, MM NIS. 06557003102049 Vensy Vydia, S. Kom NIS. 06557003102081 28