• Tidak ada hasil yang ditemukan

Revisi Ketiga. Dede Kurniadi, M.Kom

N/A
N/A
Protected

Academic year: 2021

Membagikan "Revisi Ketiga. Dede Kurniadi, M.Kom"

Copied!
85
0
0

Teks penuh

(1)

Revisi Ketiga

Bahasan :

❖ Konsep Dasar Bahasa C/C++ ❖ Pemrograman CUI (Console User

Interface)

❖ Pemrograman GUI (Grafical User Interface) dengan Komponen Visual dan Non - Visual

❖ BDE, ADO, dan Database Desktop ❖ Pemrograman Database

❖ Penggunaan Quick Report ❖ Penggunaan SQL

❖ Latihan, Tugas dan Studi Kasus

AKADEMI MANAJEMEN INFORMATIKA DAN KOMPUTER

AMIK – GARUT

2013

(2)

Borland C++ Builder 6 adalah sebuah perangkat lunak berbasis C/C++ yang digunakan untuk melakukan pembuatan aplikasi berbasis Console Application maupun GUI (Graphical User Interface).

Modul ini membahas dan mempraktikan langsung konsep dan teknik-teknik dasar yang diperlukan dalam pemrograman C++ Builder, dan bertujuan untuk mengantarkan dan membekali mahasiswa untuk menjadi programmer yang siap pakai dilapangan pekerjaan. Pembahasan dalam modul ini meliputi konsep dan contoh berikut penerapannya dalam aplikasi database baik stand alone maupun yang bersifat client-server dengan bahasa SQL (query) yang merupakan standar dalam membuat program aplikasi client-server didalam jaringan LAN, modul ini disuguhkan secara tutorial dan latihan kasus soal , agar

memudahkan mahasiswa dalam proses

pembelajarannya di laboratorium komputer AMIK Garut supaya mudah dipahami dan dipraktekan.

AMIK Garut

Jl. Pahlawan No. 32 Tarogong Garut Phone/Fax : 0262-237137/540393 e-mail : info@amikgarut.ac.id Website : www.amikgarut.ac.id

(3)

Daftar Isi

Daftar Isi ... i

BAB 1 Pengantar Bahasa C++ dan Statement Dasar Operasi A. Sejarah Bahasa C/C++ ... 1

B. Mengapa Menggunakan Bahasa C/C++... 1

C. Lingkungan Borland C++ Builder 6 ... 2

D. Tipe Data ... 6

E. Deklarasi Konstanta ... 6

F. Praprocessor ... 6

G. Tipe Bentukan ... 7

H. Operator Assignment ... 9

I. Variabel dan Konstanta ... 9

J. Kode Penentu Format ... 9

K. Operator Aritmatika ... 10

L. Operator Logika ... 10

M. Operator Pembanding ... 11

N. Operator Unary ... 11

BAB 2 Pemrograman CUI (Console User Interface) A. Pengantar ... 13

B. Jenis Fungsi Untuk Pemrograman Console ... 13

C. Perintah Tampilan/Cetak Dilayar ... 14

D. Perintah Masukan/Input ... 14

E. Perintah Output Terhadap Input ... 15

F. Komentar ... 15 G. Fungsi Pustaka ... 15 Latihan 2.1 ... 16 Latihan 2.2 ... 17 Latihan 2.3 ... 17 Latihan 2.4 ... 18 Soal 2.1 ... 18 Soal 2.2 ... 19 Latihan 2.5 ... 19 Soal 2.3 ... 20 Tugas Pemahaman 2.1 ... 20

BAB 3 Statement Decession (Keputusan) A. Statement Decission (Keputusan/Percabangan) ... 21

Latihan 3.1 ... 22

Latihan 3.2 ... 22

(4)

Soal 3.1 ... 24

Soal 3.2 ... 24

Tugas Pemahaman 3.1 ... 24

BAB 4 Pemrograman GUI (Grafical User Interface) dengan Komponen Visual dan Non Visual A. Pengantar ... 25

Latihan 4.1 ... 25

Latihan 4.2 ... 26

Soal 4.1 ... 29

Latihan 4.3 ... 29

BAB 5 Penggunaan Percabangan dan Pengulangan pada Pemrograman GUI A. Percabangan ... 31 Latihan 5.1 ... 32 Latihan 5.2 ... 34 Soal 5.1 ... 36 B. Pengulangan ... 37 Latihan 5.3 ... 37 Latihan 5.4 ... 38 Soal 5.2 ... 39 Soal 5.3 ... 39

BAB 4 Aplikasi Database dengan BDE A. Pengantar ... 25 B. Database Desktop ... 25 Latihan 4.1 ... 25 Latihan 4.2 ... 27 Latihan 4.3 ... 31 Latihan 4.4 ... 33 Latihan 4.5 ... 36 Soal 4.1 ... 42

BAB 5 Pencetakan dengan Quick Report ... 43

Latihan 5.1 ... 43

Soal 5.1 ... 47

BAB 6 ADO dan Access Database ... 49

Latihan 6.1 ... 49

BAB 7 Studi Kasus Sistem Penilaian Akademik... 41

(5)

Pembuatan Report ... 60 DAFTAR PUSTAKA ... 64

(6)

Bab 1

Konsep Dasar Bahasa C/C++

A. Sejarah Bahasa C/C++

Bahasa C merupakan perkembangan dari bahasa BCPL yang dikembangkan oleh Martin Richards th.1967. Selanjutnya bahasa ini memberikan ide kepada Ken Thompson yang kemudian mengembangkan bahasa B tahun 70an. Selanjutnya dari bahasa B berkembang menjadi Bahasa C oleh Dennis Ricthie tahun 70 an di Bell Telephone Laboratories Inc. Pertama kali digunakan Bahasa C pada system operasi UNIX.

B. Mengapa Menggunakan Bahasa C/C++

Sampai saat ini, bahasa C telah berhasil digunakan untuk mengembangkan berbagai jenis permasalahan pemrograman, dari level operating system (unix, linux, ms dos, dsb), aplikasi perkantoran (text editor, word processor, spreadsheet, dsb), bahkan sampai pengembangan sistem pakar (expert system). Kompiler C juga telah tersedia di semua jenis platform komputer, mulai dari Macintosh, UNIX, PC, Micro PC, sampai super komputer. C bisa disebut bahasa pemrograman tingkat menengah (middle level programming language). Arti tingkat (level) disini adalah kemampuan mengakses fungsi-fungsi dan perintah-perintah dasar bahasa mesin/hardware (machine basic instruction set). Semakin tinggi tingkat bahasa pemrograman (misalnya: java), semakin mudahlah bahasa pemrograman dipahami manusia, namun membawa pengaruh semakin berkurang kemampuan untuk mengakses langsung instruksi dasar bahasa mesin. Demikian juga sebaliknya dengan bahasa pemrograman tingkat rendah (misalnya: assembler), yang semakin sulit dipahami manusia dan hanya berisi perintah untuk mengakses bahasa mesin. Dalam perspektif mudahnya dipahami manusia, C bisa digolongkan dalam bahasa tingkat tinggi, namun C juga menyediakan kemampuan yang ada pada bahasa tingkat rendah, misalnya operasi bit, operasi byte, pengaksesan memori, dsb.

Sasaran :

1. Memahami fungsi peranan Software Bahasa Pemrograman C++ menggunakan Borland C++ Builder 6

2. Dapat mengoperasikan/menggunakan software Borland C++ Builder 6 3. Memahami Struktur Program C++

4. Mengetahui dan dapat melakukan praktikum

(7)

Beberapa alasan mengapa memakai bahasa C adalah terangkum dibawah.

1.

C adalah bahasa pemrograman yang paling populer saat ini

Dengan banyaknya programmer bahasa C, membawa pengaruh semakin mudahnya kita menemukan pemecahan masalah yang kita dapatkan ketika menulis program dalam bahasa C. Pengaruh positif lain adalah semakin banyaknya kompiler yang dikembangkan untuk berbagai platform

(berpengaruh ke portabilitas).

2.

C adalah bahasa pemrograman yang memiliki portabilitas tinggi

Program C yang kita tulis untuk satu jenis platform, bisa kita kompile dan jalankan di platform lain dengan tanpa ataupun hanya sedikit perubahan. Ini bisa diwujudkan dengan adanya standarisasi ANSI untuk C.

3.

C adalah bahasa pemrograman dengan kata kunci (keyword) sedikit

Kata kunci disini adalah merupakan fungsi ataupun kata dasar yang disediakan oleh kompiler suatu bahasa pemrograman. Hal ini membawa pengaruh semakin mudahnya kita menulis program dengan C. Pengaruh lain dari sedikitnya kata kunci ini adalah proses eksekusi program C yang sangat cepat. C hanya menyediakan 32 kata kunci seperti terangkum dibawah:

4.

C adalah bahasa pemrograman yang fleksibel

Dengan menguasai bahasa C, kita bisa menulis dan mengembangkan berbagai jenis program mulai dari operating system, word processor, graphic processor, spreadsheets, ataupun kompiler untuk suatu bahasa pemrograman.

5.

C adalah bahasa pemrograman yang bersifat moduler

Program C ditulis dalam routine yang biasa dipanggil dengan fungsi. Fungsifungsi yang telah kita buat, bisa kita gunakan kembali (reuse) dalam program ataupun aplikasi lain.

C. Lingkungan Borland C++ Builder 6

Borland C++ Builder 6 adalah suatu alat pengembang aplikasi (development tools) berbasis Microsoft Windows yang menerapkan konsep visualisasi. Dengan adanya dukungan visualisasi ini C++ menjadi mudah digunakan untuk membuat

(8)

aplikasi-aplikasi berbasis CUI (Console User Interface) atau GUI (Grafical User Interface) secara cepat baik aplikasi stand alone dengan database paradoks maupun aplikasi client server bahkan IntraWeb dengan database server seperti InterBase dan MySQL Server.

1. Lingkungan Borland C++ Builder 6

2. Menu

Pada barisan menu (terdiri dari File, Edit, Search,...) berfungsi sebagai tempat. mengatur dan menjalankan berbagai perintah dan fitur yang berhubungan dengan. Borland C++ Builder 6, termasuk untuk perintah Compile dan Run Program

3. Tool Palette

Bagian ini berfungsi untuk menyimpan komponen-komponen visual yang nanti akan digunakan dalam pembuatan aplikasi. Berikut ini gambar Tool Palette.

(9)

4. Form Designer

Form Designer adalah bagian yang digunakan untuk pembuatan form dalam pemrograman berbasis GUI (Grafik User Interface) yang kemudian akan ditampilkan dalam aplikasi.

5. Object Treeview

Pada Bagian ini menunjukkan beberapa komponen yang terdapat di dalam Form. Bagian ini akan menyesuaikan jika mengubah ke Form yang lain

(10)

6. Object Inspector

Bagian ini digunakan untuk mengatur dan melakukan pengesetan terhadap property dan event suatu objek dari C++.

7. Code Editor

Code Editor adalah bagian yang berfungsi untuk menyunting atau menuliskan kode-kode program yang akan digunakan sebagai penongontrol aplikasi yang dibuat dengan Borland C++.

(11)

D. Tipe Data

Variabel adalah suatu pengenal (identifier) yang digunakan untuk mewakili suatu nilai tertentu di dalam proses program. Nilai suatu variabel dapat berubah-ubah sehingga bereda dengan konstanta yang selalu tetap. Variabel merupakan penampung suatu nilai/data.

Penamaan Variable :

1. Tidak boleh menggunakan symbol-symbol khusus kecuali garis bawah. Symbol khusus $,?,%,#,!,&,*,(,),-,+,= dsb

2. Tidak boleh diawali dengan angka. 3. ditulis dengan huruf kecil semua.

Di dalam bahasa C, semua variabel yang akan dipakai harus dideklarasikan lebih dahulu. Deklarasi menyatakan jenis data dan diikuti nama variabelnya.

Tipe Data

Ukuran

Keterangan/Jangkauan

char

1 byte

-128 hingga +127

int

2 byte

-32768 hingga +32767

long

4 byte

-2.147.438.648 hingga

2.147.438.647

float

4 byte

3,4E-38 hingga 3,4E38

double

8 byte

1.7E-308 hingga 1.7E308

longdouble

10 byte

3.4E-4932 hingga 1.1E4932

string

E. Deklarasi Konstanta (#define)

Dalam bahasa C dideklarasikan dengan #define Contoh :

#define Phi 3.14 #define nim “01233” #define nama “sri widya”

SYNTAX : #define namavariabel nilai Contoh : #define Max 12

F. Praprosessor (#include)

instruksi praprocessor ini digunakan sebagai penyertaan file yang digunakan dalam program.

(12)

Contoh :

#include <stdio.h>, pernyataan ini disertakan jika dalam program menggunakan rutin masukan dan keluaran misalkan : fungsi printf(), scanf(), getchar(), putchar(), puts(), gets().

#include <ctype.h>, pernyataan ini dipakai jika dalam program ada instruksi makro misalkan tolower(), toupper() dll.

Berikut kerangka program C secara lengkap:

Suatu program C ditulis dari beberapa elemen yaitu : - Pernyataan

- Blok pernyataan - Blok fungsi

Suatu pernyataan adalah satu atau beberapa ekspresi yang diakhiri dengan tanda titik koma (;).

Blok pernyataan adalah terdiri satu atau beberapa pernyataan yang diawali dengan tanda { dan diakhiri dengan tanda }. Blok pernyataan selalu diawali dengan suatu instruksi.

Blok fungsi terdiri dari satu atau beberapa pernyataan yang dirancang untuk melakukan proses tertentu. Blok fungsi dimulai dengan nama fungsinya() dan tanda { dan diakhiri dengan tanda }

G. Tipe Bentukan

Tipe bentukan adalah tipe-tipe yang dibuat sendiri dengan menggunakan tipe-tipe dasar yang tersedia. Tipe bentukan ini dibagi ke dalam tiga bagian yaitu, array, struktur dan enumerasi. Untuk membuat sebuah tipe data bentukan kita perlu menggunakan keyword typedef.

#include <…..> [definisi konstanta]

[deklarasi variabel atau fungsi] void main( ) { [deklarasi variabel] statemen_1; statemen_2; …. statemen_akhir; }

(13)

1. Array

Array merupakan kumpulan dari nilai-nilai data yang bertipe sama dalam urutan tertentu yang menggunakan nama yang sama. Letak atau posisi dari elemen array ditunjukkan oleh suatu index. Dilihat dari dimensinya array dapat dibagi menjadi Array dimensi satu, array dimensi dua dan array multi-dimensi.

2. Struktur

Tipe struktur (Record dalam pascal) adalah tipe yang berfungsi untuk mengumpulkan data-data yang sejenis atau berbeda jenis dalam satu kesatuan.

3. Enumerasi

Tipe Enumerasi adalah tipe data yang nilainya telah didefinisikan sebelumnya //Bentuk Umum Array 1 Dimensi

type_data variabel[jumlah_elemen]; //Bentuk Umum Array 2 Dimensi

type_data variabel[jumlah_elemen1] [jumlah_elemen2]; //Bentuk Umum Array Multi Dimensi

type_data variabel[jumlah_elemen1] [jumlah_elemen2];

//Contoh

Typedef struct Mahasiswa{ int nim;

String Nama; String Alamat; };

//contoh deklarasi variable M dengan tipe data Mahasiswa Mahasiswa M;

//Contoh Cara Mengakses M.nim=123; dst….

//contoh Deklarasi

enum BOOLEAN {SALAH, BENAR} //Contoh Penggunaan

BOOLEAN x;

//contoh mengisi nilai variable x X=SALAH;

(14)

H. Operator Assignment

Operator Keterangan

= Untuk memasukan nilai

+= Untuk menambahkan nilai dari keadaan semula -= Untuk mengurangi nilai dari keadaan semula *= Untuk mengembalikan nilai dari eadaan semula

/= Untuk melakukan pembagian terhadap bilangan semula

%= Untuk emasukan nilai sisa bagi dari pembagian bilangan semula <<= Untuk memasukan shift left

>>= Untuk memasukan shift right &= Untuk memasukan bitwise AND ^ = Untuk memasukan bitwise XOR |= Untuk memasukan bitwise OR I. Variabel dan Konstanta

Variabel adalah suatu pengenal (identifier) yang digunakan untuk mewakili suatu nilai tertentu di dalam proses program.

Konstanta merupakan suatu nilai yang tidak dapat diubah selama proses program berlangsung. Konstanta nilainya selalu tetap. Konstanta harus didefinisikan terlebih dahulu di awal program. Selain itu, bahasa C juga menyediakan beberapa karakter khusus yang disebut karakter escape, antara lain :

\a : untuk bunyi bell (alert)

\b : mundur satu spasi (backspace) \f : ganti halaman (form feed) \n : ganti baris baru (new line)

\r : ke kolom pertama, baris yang sama (carriage return) \v : tabulasi vertical

\0 : nilai kosong (null) \’ : karakter petik tunggal \” : karakter petik ganda \\ : karakter garis miring. J. Kode Penentu Format

. %c : Membaca sebuah karakter . %s : Membaca sebuah string

. %i, %d : Membaca sebuah bilangan bulat (integer) . %f, %e : Membaca sebuah bilangan pecahan (real) . %o : membaca sebuah bilangan octal

. %x : Membaca sebuah bilangan heksadesimal . %u : Membaca sebuah bilangan tak bertanda.

(15)

K. Operator Aritmatika

Bahasa C menyediakan lima operator aritmatika, yaitu : * : untuk perkalian

/ : untuk pembagian

% : untuk sisa pembagian (modulus) + : untuk pertambahan

- : untuk pengurangan.

Operator Makna Contoh Hasil

+ penjumlahan printf(“3 + 4=%d\n”,3+4); 3 + 4=7 - pengurangan printf(“10-5=%d\n”,10-5); 10-5=5 / pembagian printf(“15/3=%d\n”,15/3); 15/3=5 Pembagian pecahan print(“10/5=%2.2f\n”,10.0/5.0); 10/5=2.00 * perkalian printf(“ 5 x 10=%d\n”,5*10); 5 x 10=50 % Sisa bagi printf(“23 mod 10=%d\n”,23%10); 23 mod 10=3

Sisa bagi printf(“3 mod 2=%d\n”,3%2); 3 mod 2 = 1

L. Operator Logika

&& : Logika AND (DAN) || : Logika OR (ATAU) ! : Logika NOT (INGKARAN).

AND

OR

&&

HASIL

||

HASIL

S S S S S S

S B S S B B

B S S B S B

(16)

M. Operator Pembanding

>

Lebih Besar

<

Kurang dari

>=

Lebih Besar sama dg

<=

Kurang sama dg

= =

sama dengan

!=

tidak sama dg

N. Operator Unary

Pre-Increment : untuk menaikan sebuah variabel bertipe int, long atau char dengan nilai 1 (satu) sebelum variabel tersebut diproses. Bentuk Umum : ++nama_variabel

Post-Increment : merupakan kebalikan dari Pre-Increment, yaitu untuk menurunkan sebuah variabel bertipe int, long atau char dengan nilai 1 (satu) sebelum variabel tersebut diproses. Bentuk Umum : --nama_variabel

Contoh :

A++ : artinya menambahkan/menaikan variable A dengan nilai 1 A+2 : artinya menambahkan/menaikan variable A dengan nilai 2 A-- : artinya menurunkan/mengurangi variable A dengan nilai 1 Latihan 1.1

Tujuan : Pemahaman konsep dasar dan tipe data dalam C++

1. Tentukan apakah penamaan pengenal berikut benar atau salah:

a. AB4336PE

e. x1

b. sisi a

f. diskon

c. 2kali

g. harga@

d. jumlah2

h. rata–rata

2. Hitunglah nilai dari ekspresi berikut:

a. 5 + 10 / 2

d. 2 + 8 * 4 – 3

b. 100 / (3 + 2)

e. 13 – 6 * 2

(17)

3. Misalkan nilai variabel x, y, dan z masing-masing bernilai x = 3, y = 4, dan z=5,

hitunglah nilai dari ekspresi berikut:

a. 5 * x + 10 / z

d. 2 * x + 8 * y – 3

b. 100 / (y * z)

e. 6 * x – 6 * y

c. x * (2 + 10) + y

f. (x + y + z) / 2 – 10

(18)

Bab 2

Pemrograman CUI (Console User Interface)

A. Pengantar

Pemrograman Console Application atau CUI (Console User Interface) adalah program yang berjalan dengan mode tampilan konsol. CUI program yang akan buat kebanyakan disusun oleh tampilan teks (walaupun dapat membuat efek sehingga terlihat tampilan seperti visual).

B. Jenis Fungsi Untuk Pemrograman Console

Dalam pemrograman console perlu diketahui beberapa jenis fungsi yang umum dan sering digunakan, adapung jenis-jenis fungsi tersebut adalah sebagai berikut :

1. Fungsi Main()

Fungsi ini untuk menandai titik tempat program C mulai dilaksanakan. Fungsi ini hanya bisa digunakan satu kali dalam sebuah program.

2. Fungsi Printf

Fungsi ini digunakan untuk menampilkan argumen teks /tulisan pada layar. SYNTAX : Printf(“………..text………….”,NamaVariabel1, NamaVariabel2, dst) Karakter (%) untuk konversi bilangan.

Misal :

Printf(“Jumlah dari %d dan %d = %d\n”, x, y, jum); %d adalah type format tampilan bilangan bulat desimal. %f adalah type format tampilna bilangan real.

3. Fungsi Scanf

Fungsi ini dipakai untuk membaca karaker dari alat input. Karakter yang akan dibaca diberikan kepada variabel.

SYNTAX : scanf(“…………text…% .”,&namavariabel);

Pada fungsi scanf, kita harus menyertakan symbol & pada variabel yang diacu karena symbol & berguna sebagai operator address-of. Jika kita menghilangkan symbol tersebut, maka program akan error tetapi jika kita menginputkan string program tetap berjalan normal.

Sasaran :

1. Memahami dan dapat menerapkan Type data, operator operasi, dan ekspresi.

2. Memahami variable dan dapat mendeklarasikan dalam pemrograman 3. Memahami cara membuat aplikasi berbasis Console

4. Mampu menggunakan dasar statement operasi dalam membuat program sederhana

(19)

4. Fungsi getch

Fungsi ini dipakai untuk membaca data bertipe karakter tanpa perlu penekanan tombol enter tetapi karakter tidak akan ditampilkan. Biasanya digunakan untuk menahan tampilan output pada layar.

SYNTAX : getch(); 5. Fungsi clrscr

Fungsi ini dipakai untuk membersihkan layar dan kursor akan berada diposisi pojok kiri atas.

SYNTAX : clrscr();

C. Perintah Tampilan/Cetak Dilayar SYNTAX : printf(“…….text………”);

Atau

printf(“…….text…%d….”,variable); %d = type data varibel

SYNTAX : puts(“……….text………..”); printf(“………\n”);

\n= menekan enter. Kursor berpindah ke bawah D. Perintah Masukkan/Input

Perintah input merupakan perintah masukkan dari keyboard. Perintah input terbagi dua yaitu :

- Input tidak langsung / pemesanan variable berupa non konstanta SYNTAK INPUT :

scanf(“ …..%type data”, &variable)

scanf(“%d “,&variabel);  tipe data integer scanf(“%c”,&variabel);  tipe data character scanf(“%s”,&variabel);  tipe data string

scanf(“%ld”,&variabel);  tipe data long integer / double scanf(“%f”,&variabel);  tipe data float /pecahan

scanf(“%lf”,&variabel);  tipe data long float /pecahan digit banyak SYNTAK INPUT KHUSUS HURUF :

(20)

E. Perintah Output Terhadap Input SYNTAX : printf(“…….text………”);

Atau

printf(“…….text…%d….”,variable);

%d = type data varibel F. Komentar

Perintah komentar atau keterangan merupakan program yang tidak melakukan eksekusi apa-apa. Perintah tersebut boleh ditulis boleh tidak, manakala ingin ditulis hanya untuk sebagai keterangan/ dokumentasi program saja.

Memberi komentar atau keterangan tidak menyebabkan program error. SYNTAX : /*……komentar di sini………..*/

Contoh

#include <stdio.h>

/*…ini hanya tulisan keterangan program tidak dieksekusi */ G. Fungsi Pustaka

Fungsi pustaka, disebut juga fungsi standar, fungsi baku atau built-in function, adalah fungsi-fungsi khusus yang telah tersedia dalam bahasa pemrograman.

Nama Fungsi Keterangan

abs (x) Menghitung nilai mutlak dari x; x bilangan bulat sqrt (x) Menghitung akar pangkat 2 dari x

exp (x) Eksponen dari x, ex

log (x) Menghitung logaritma basis e dari x, elog x log10 (x) Menghitung logaritma basis 10 dari x, 10log x fabs (x) Menghitung nilai mutlak dari x; x bilangan real

ceil (x) Membulatkan x ke bilangan bulat terkecil yang lebih besar dari x floor (x) Membulatkan x ke bilangan bulat terbesar yang lebih kecil dari x pow (x, y) Menghitung x pangkat y

fmod (x, y) Menghitung bilangan pecahan sisa pembagian x/y sin (x) Menghitung sinus dari x; x dalam radian

cos (x) Menghitung cosinus dari x; x dalam radian tan (x) Menghitung tangen dari x; x dalam radian

(21)

Contoh ekspresi yang melibatkan variabel dan fungsi pustaka:

Ekspresi aljabar Ekspresi bahasa C

D

C

B

A

A + B / C + D

D

C

B

A

A + B / (C + D)

D

C

B

A

(A + B) / C + D

D

C

B

A

(A + B) / (C + D)

a

ac

b

b

2

4

2

(–b + sqrt(b*b – 4 * a * c)) / (2 * a)

5

3

|

10

|

2

x

x

abs(x*x – 10) / 3 + x + 5

30

5

x

sqrt(x + 5) – 30 y

e

x

5

2

pow (x, 5) + 2 * exp(y) Latihan 2.1

Tujuan : Pemahaman penggunaan fungsi pustaka dalam C++

1. Tulislah ekpresi aljabar berikut ke dalam ekspresi C:

)

4

(

2

7

5

a

b

c

p

y

x

x

q

12

10

2

)

6

)(

8

(

a

b

c

r

x

y

x

s

2

2

3

4

10

13

25

3

10

7

c

b

c

a

t

(22)

Latihan 2.2

Tujuan : Praktik Dasar Operasi dan variable dalam pemrograman konsol.

1. Buat aplikasi baru dengan dengan memilih menu File|New|Other|Console Wizard. 2. Ketikan listing berikut ini

3. Simpan dengan memilih Save All pada folder direktori kerja anda masing-masing dengan nama filenya lathitung22.

4. Jalankan program dengan menekan tombol Keyboard F9 atau dengan memilih menu Run -> Run. Perhatikan hasilnya

Latihan 2.3

Tujuan : Praktik Dasar Operasi Aritmatika dan variable dengan input tidak langsung. 1. Buat aplikasi baru dengan dengan memilih menu File|New|Other|Console Wizard. 2. Ketikan listing berikut ini

#include <stdio.h> #include <conio.h> int bil1; int bil2; int jml; void main() { bil1=25; bil2=35; jml=bil1+bil2;

printf("Hasil Jumlahnya adalah Jumlah=%d",jml); getch(); }; #include <stdio.h> #include <conio.h> void main() {

int bil1, bil2, jml; clrscr();

printf("Masukkan bilangan pertama:"); scanf("%d", &bil1);

printf("Masukkan bilangan kedua:"); scanf("%d", &bil2);

jml = bil1 + bil2;

printf("Jumlah kedua bilangan adalah %d \n ", jml); getch();

(23)

3. Simpan dengan memilih Save All pada folder direktori kerja anda masing-masing dengan nama filenya lathitung23.

4. Jalankan program dengan menekan tombol Keyboard F9 atau dengan memilih menu Run -> Run. Perhatikan hasilnya

Latihan 2.4

Tujuan : Memahami program pembagian tipe data float.

1. Buat aplikasi baru dengan dengan memilih menu File|New|Other|Console Wizard. 2. Ketikan listing berikut ini

3. Simpan dengan memilih Save All pada folder direktori kerja anda masing-masing dengan nama filenya lathitung24.

4. Jalankan program dengan menekan tombol Keyboard F9 atau dengan memilih menu Run -> Run. Perhatikan hasilnya

Soal 2.1

1. Buatlah sebuah program untuk menghitung rata-rata dari 3 buah bilangan yang diinputkan secara sembarang.

Contoh : jika ada 3 bilangan dengan nilai yang diinput nya adalah bil1=20, bil2=30, dan bil3=25, maka nilai rata-ratanya adalah (20 + 30 + 25)/3 hasilnya adalah 25 , gunakan tipe data float karena ada operasi aritmatiika pembagian yang menghasilkan nilai pecahan.

2. Simpan latihan soal tersebut dengan nama latsoal21 3. Tampilan Output Layarnya adalah sbb:

Masukkan bilangan pertama:20 Masukkan bilangan kedua:30 Masukkan bilangan ketiga:25

Hasil rata-rata ketiga bilangan adalah 25.00 #include <stdio.h> #include <conio.h> void main() { float A,B,hasil; A=5; B=2; hasil=A/B;

printf("Hasil bagi nilai A dan B adalah %4.2f ",hasil); getch();

(24)

Soal 2.2

1. Buatlah sebuah program kalkulator sederhana untuk menentukan hasil perhitungan pertambahan, perkalian, pembagian dan pengurangan dari 2 buah nilai yang diinputkan.

2. Simpan latihan soal tersebut dengan nama latsoal22 3. Contoh tampilan Output Layarnya adalah sbb:

Latihan 2.5

Tujuan : Memahami program dengan input data String tidak langsung.

1. Buat aplikasi baru dengan dengan memilih menu File|New|Other|Console Wizard. 2. Ketikan listing berikut ini

3. Simpan dengan memilih Save All pada folder direktori kerja anda masing-masing dengan nama filenya latstring.

#include <stdio.h> #include <conio.h> void main() { char Nim[12]; char Nm[25]; int Umr; char Almt[30];

printf("Masukkan NIM anda :");gets(Nim); printf("Masukkan Nama anda :");gets(Nm); printf("Masukkan Alamat anda :");gets(Almt); printf("Masukkan Umur anda :");scanf("%d",&Umr);

printf("\n\nAnda telah memasukkan data pribadi sebagai berikut :"); printf("\nNIM : %s",Nim);

printf("\nNama : %25s",Nm); printf("\nUmur : %d tahun",Umr); printf("\nAlamat : %s",Almt);

printf("\n\nTerima kasih...Tekan sembarang tombol...!"); getch(); }; Masukkan nilai A : 25 Masukkan Nilai B : 4 ================ Hasil jumlah = 29 Hasil Pengurangan = 21 Hasil Perkalian = 100 Hasil Pembagian = 6.25

(25)

4. Jalankan program dengan menekan tombol Keyboard F9 atau dengan memilih menu Run -> Run. Perhatikan hasilnya dilayar

Soal 2.3

1. Buatlah sebuah program untuk input data perhitungan pembelian barang kemudian, tampilkan kembali data barang yang telah dihitung tersebut.

2. Simpan latihan soal tersebut dengan nama latsoal23 3. Contoh tampilan Output Layarnya adalah sbb:

Tugas Pemahaman 2.1

1. Buatlah beberapa program untuk menghitung rumus matematika dibawah ini dengan menggunakan bahasa c:

 Luas Segitiga : Luas=1/2 alas x tinggi  Rumus D=b2 – 4ac

 Rumus Luas Lingkaran

2. Tugas di Print dikumpulkan pada pertemuan berikutnya.

Kode Barang : B001

Nama Barang : Mie Sedap Rasa Harga Satuan : 1500

Banyak : 5

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

Hasil Perhitungan Pembelian Barang adalah Kode Barang : B001

Nama Barang : Mie Sedap Rasa Harga Satuan : 1500

Banyak : 5

(26)

Bab 3

Statement Decission (Keputusan)

A. Statement Decission (keputusan/percabangan)

Keputusan/percabangan adalah suatu pemilihan yang didasarkan atas kondisi tertentu. Suatu aksi akan dipilih hanya jika kondisi yang didefinisikan telah terpenuhi. Bentuk Umum Struktur If dan If…Else

Jika kondisi benar maka kerjakan statement 1 dan jika salah kerjakan statement 2 “

Bentuk Umum Struktur Switch-Case

Sasaran :

1. Memahami dan dapat menggunakan instruksi Decision If dan If…Else 2. Memahami penggunaan control logika Switch Case

3. Memahami penggunaan control logika If dan If..Else 4. Memahami penggunaan control logika If..Else bersarang 5. Dapat menerapkan dalam pemecahan masalah program console

If(kondisi){

Statement yang akan dieksekusi; }

========================== If(kondisi_1){

Statement 1 yang akan dieksekusi; }else If(kondisi_2){

Statement2 yang akan dieksekusi; } else If(kondisi_n){

Statement ke n yang akan dieksekusi; }

switch(variabel){

case konstanta1:statement1 yang dieksekusi; break;

case konstanta2:statement 2 yang dieksekusi; break;

case konstanta3:statement 3 yang dieksekusi; break;

case konstanta ke n:statement ke n yang dieksekusi; break;

default:Statement lainnya; }

(27)

Latihan 3.1

Tujuan : Memahami penggunaan control logika If.

1. Buat aplikasi baru dengan dengan memilih menu File|New|Other|Console Wizard. 2. Ketikan listing berikut ini

3. Simpan dengan memilih Save All pada folder direktori kerja anda masing-masing dengan nama filenya latif.

4. Jalankan program dengan menekan tombol Keyboard F9 atau dengan memilih menu Run -> Run. Perhatikan hasilnya

Latihan 3.2

Tujuan : Memahami penggunaan control logika If…Else.

1. Buat aplikasi baru dengan dengan memilih menu File|New|Other|Console Wizard. 2. Ketikan listing berikut ini

3. Simpan dengan memilih Save All pada folder direktori kerja anda masing-masing dengan nama filenya latifelse.

#include <stdio.h> #include <conio.h> void main() {

int Nilai;

printf("Masukkan Nilai Anda :");scanf("%d",&Nilai); if (Nilai>60)

{

printf("Selamat, Anda Lulus"); } getch(); } #include <stdio.h> #include <conio.h> void main() { int Nilai;

printf("Masukkan Nilai Anda :");scanf("%d",&Nilai); if (Nilai>60)

{

printf("Selamat, Anda Lulus"); }

else {

printf("Maaf, Anda Belum Berhasil"); }

getch(); }

(28)

4. Jalankan program dengan menekan tombol Keyboard F9 atau dengan memilih menu Run -> Run. Perhatikan hasilnya dan bandingkan dengan program sebelumnya yang menggunakan if.

Latihan 3.3

Tujuan : Memahami penggunaan If…Else bersarang.

1. Buat aplikasi baru dengan dengan memilih menu File|New|Other|Console Wizard. 2. Ketikan listing berikut ini

3. Simpan dengan memilih Save All pada folder direktori kerja anda masing-masing dengan nama filenya latbersarang.

4. Jalankan program dengan menekan tombol Keyboard F9 atau dengan memilih menu Run -> Run. Perhatikan hasilnya dilayar

#include <stdio.h> #include <conio.h> void main() { char nama[25]; int umur;

printf("Masukkan nama anda :");scanf("%s",nama); printf("Masukkan umur anda :");scanf("%d",&umur); clrscr();

printf("Hai %s",nama); if(umur<=5)

printf("\nAnda ternyata masih BALITA"); else if(umur<17)

printf("\nAnda masih kanak-kanak"); else if(umur<45)

printf("\nAnda sudah dewasa"); else if(umur<=55)

printf("\nAnda sudah cukup tua"); else if(umur<=75)

printf("\nAnda sudah tua bangka"); else

printf("\numur anda keterlaluan"); getch();

(29)

Soal 3.1

1. Buatlah program untuk menentukan apakah umur yang dimasukkan termasukkan telah tua atau masih muda, dengan aturan jika umur lebih kecil dari 45 masih muda dan jika umur lebih besar dari 45 sudah tua.

2. Simpan latihan soal tersebut dengan nama latsoal31.c 3. Contoh tampilan Output Layarnya adalah sbb:

Soal 3.2

1. Buatlah program untuk menentukan nilai yang dimasukan tersebut Genap atau Ganjil.

2. Simpan latihan soal tersebut dengan nama latsoal32.c 3. Contoh tampilan Output Layarnya adalah sbb:

Tugas Pemahaman 3.1

1. Buatlah sebuah program aplikasi perhitungan nilai rata-rata dari 3 buah nilai yang diinputkan, dengan ketentuan Jika nilai rata-rata lebih besar atau sama dengan 60 maka LULUS, selain itu GAGAL

2. Contoh tampilan Output Layarnya adalah sbb:

Masukkan Umur Anda : 60

Umur Anda sudah Tua

Masukkan sebuah nilai angka : 20 Nilai yang anda masukan: GENAP

Aplikasi Perhitungan Nilai =================== Ketikkan Nama Anda : Sabian Masukkan nilai Teori (0 - 100) : 78 Masukkan nilai Praktek (0 – 100) : 67 Masukkan nilai Ujian (0 – 100) : 61 =================== Hasil Perhitungan :

Nama Anda : Sabian Nilai Rata-rata Anda : 68.67

(30)

Bab 4

Pemrograman GUI (Grafical User Interface)

dengan Komponen Visual dan Non Visual

A. Pengantar

Program GUI merupakan program yang berjalan di atas Graphical User Interface atau dengan kata lain merupakan program yang di buat dengan bahasa pemrograman, berbeda denga CUI kebanyakan disusun oleh tampilan teks. Salah satu objek atau kelas turunan dari Tcomponentadalah Tcontrol dan semua objek yang diturunkan dari Tcontrol dinamakan komponen visual, sedangkan objek-objek yang diturunkan secara langsung dari Tcomponent dinamakan componen non-visual.

Untuk membuat aplikasi GUI menggunakan Borland C++ Builder 6 sangatlah mudah, Latihan 4.1

Tujuan : Sentuhan pertama Pemrograman GUI membuat project dengan C++ 1. Buat aplikasi baru dengan dengan memilih menu File|New|Application. Kemudian

lakukan design form dan pengesetan properti komponen pada object properties seperti gambar

Sasaran :

1. Memahami dan dapat menerapkan Type data, operator operasi, dan ekspresi.

2. Memahami variable dan dapat mendeklarasikan dalam pemrograman 3. Memahami pengoperasikan/penggunaan komponen visual dan non visual

dengan software Borland C++ Builder 6

4. Mampu menggunakan dasar statement operasi dalam membuat program sederhana

(31)

Komponen Properti Nilai

Form1 Caption Aplikasi Pesan

Height 100

Width 200

Button1 Caption &Tamplikan

2. aktifkan komponen Button1 dan lakukan double click, maka secara default C++ akan memberikan sebuah kerangka program untuk event OnClick. Kemudian tuliskan source code dibawah ini.

3. Simpan unit dan project dengan nama latihan41 dan unitnya ulatihan41.cpp dengan memilih menu File-Save All. Kemudian jalankan aplikasi dengan menekan tombol F9 atau Run setelah aktif klik tombol Tampilkan maka akan muncul pesan sbb :

Latihan 4.2

Tujuan : Memahami penggunaan komponen visual dan operasi aritmatika

1. Buat aplikasi baru dengan dengan memilih menu File – New Application. Kemudian tempatkan komponen dibawah ini, kemudian lakukan pengesetan properti pada object properties untuk masing-masing komponen seperti pada tabel dibawah ini.

void __fastcall TForm1::Button1Click(TObject *Sender) {

MessageBox(0, “Selamat Datang Calon Programmer C++”,”Pesan”, MB_ICONINFORMATION|MB_OK);

(32)

Komponen Properti Nilai

Form1 Caption Aplikasi Aritmatika

Label1 Caption Nilai A

Label2 Caption Nilai B

Label3 Caption Hasil Perhitungan

Edit1 Text Kosongkan

Edit2 Text Kosongkan

Edit3 Text Kosongkan

ReadOnly True

ParentColor true

Button1 Caption &Tambah

Button2 Caption &Kurang

Button3 Caption &Bagi

Button4 Caption &Kali

Button5 Caption Close

2. Aktifkan komponen Button1 pada form1 dan lakukan double click, Kemudian tuliskan source code dibawah ini.

3. aktifkan komponen Button2 pada form1 dan lakukan double click, Kemudian tuliskan source code dibawah ini.

4. aktifkan komponen Button3 pada form1 dan lakukan double click, Kemudian tuliskan source code dibawah ini.

void __fastcall TForm1::Button1Click(TObject *Sender) { int a = StrToInt(Edit1->Text); int b = StrToInt(Edit2->Text); int c = a + b; Label3->Caption=”Hasil Perhitungan A + B “; Edit3->Text=IntToStr(c); }

void __fastcall TForm1::Button2Click(TObject *Sender) { int a = StrToInt(Edit1->Text); int b = StrToInt(Edit2->Text); int c = a - b; Label3->Caption=”Hasil Perhitungan A - B “; Edit3->Text=IntToStr(c); }

(33)

5. aktifkan komponen Button4 pada form1 dan lakukan double click, Kemudian tuliskan source code dibawah ini.

6. aktifkan komponen Button5 pada form1 dan lakukan double click, Kemudian tuliskan source code dibawah ini.

7. Simpan unit dengan nama uaritmatika.cpp dan projectnya dengan nama aritmatika.bpr dengan memilih menu File-Save All. Kemudian jalankan aplikasi dengan menekan tombol F9 atau Run.

void __fastcall TForm1::Button3Click(TObject *Sender) { double a = StrToFloat(Edit1->Text); double b = StrToFloat(Edit2->Text); double c = a / b; Label3->Caption=”Hasil Perhitungan A / B “; Edit3->Text=FloatToStr(c); }

void __fastcall TForm1::Button4Click(TObject *Sender) { int a = StrToInt(Edit1->Text); int b = StrToInt(Edit2->Text); int c = a * b; Label3->Caption=”Hasil Perhitungan A x B “; Edit3->Text=IntToStr(c); }

void __fastcall TForm1::Button4Click(TObject *Sender) {

Close(); }

(34)

Soal 4.1

1. Buatlah program untuk menentukan nilai ujian dengan rumus sebagai berikut: Nilai Ujian = 3 (Nilai A) + 2 (Nilai B) + Nilai C

6

2. Adapun untuk design form hitung nilai ujian terdiri dari 4 komponen label, 4 komponen Edit, dan 2 Button yaitu Hitung dan Ulang untuk membersihkan isian komponen edit seperti gambar.

3. Simpan projectnya di folder anda masing-masing dengan nama LatSoal1.bpr. Latihan 4.3

Tujuan : Memahami penggunaan komponen Ttimer dan status bar untuk menampilkan waktu.

1. Buat aplikasi baru dengan dengan memilih menu File – New Application. Kemudian lakukan design form dan dan tambahkan komponen Ttimer pada tab System.

2. Double klik pada komponen Ttimer atau pada event OnTImer di object properties kemudian isikan source code dibawah ini.

void __fastcall TForm1::Timer1Timer(TObject *Sender) { Label2->Caption= FormatDateTime("'Hari : 'dddd",Now()); Label3->Caption= FormatDateTime("'Tanggal : 'd mmmm yyyy",Now()); Label4->Caption= FormatDateTime("'Jam : 'hh : mm : ss",Now()); }

(35)

dddd :menampilkan nama hari secara utuh

d :menampilkan tanggal tanpa angka 0 didepannya mmmm :menampilkan nama bulan secara utuh

yyyy :menampilkan tahun secara utuh hh :menampilkan jam dalam 2 digit mm :menampilkan menit dalam 2 digit ss :menampilkan detik dalam 2 digit

Now() :mengambil waktu pada sistem komputer

3. Simpan unit dengan nama ujam.cpp dan projectnya dengan nama jam dengan memilih menu File-Save All. Kemudian jalankan aplikasi dengan menekan tombol F9 atau Run.

(36)

Bab 5

Penggunaan Percabangan dan Pengulangan pada Pemrograman GUI

B. Percabangan

Percabangan adalah suatu pemilihan yang didasarkan atas kondisi tertentu. Suatu aksi akan dipilih hanya jika kondisi yang didefinisikan telah terpenuhi.

Bentuk Umum Struktur If…Else

Bentuk Umum Struktur Switch-Case If(kondisi){

Statement yang akan dieksekusi; }

========================== If(kondisi_1){

Statement 1 yang akan dieksekusi; }else If(kondisi_2){

Statement2 yang akan dieksekusi; } else If(kondisi_n){

Statement ke n yang akan dieksekusi; }

Sasaran :

1. Memahami dan dapat menggunakan struktur If … Else dan Switch –Case 2. Dapat Menerapkan dalam pemecahan masalah kedalam program aplikasi

menggunakan Software Borland C++ Builder 6

switch(variabel){

case konstanta1:statement1 yang dieksekusi; break;

case konstanta2:statement 2 yang dieksekusi; break;

case konstanta3:statement 3 yang dieksekusi; break;

case konstanta ke n:statement ke n yang dieksekusi; break;

default:Statement lainnya; }

(37)

Latihan 5.1

Tujuan : Memahami penggunaan struktur percabangan If … Else

1. Buat aplikasi baru dengan memilih menu File – New - Application. Kemudian design form, dan lakukan pengesetan properti pada object properties untuk masing-masing komponen seperti pada tabel dibawah ini.

Komponen Properti Nilai

Form1 Caption Aplikasi Penilaian Mahasiswa GroupBox1 Caption Input Data Nilai

GroupBox2 Caption Proses Akhir

Label1 Caption Nama Mata Kuliah

Label2 Caption Nilai Absen

Label3 Caption Nilai Tugas

Label4 Caption Nilai UTS

Label5 Caption Nilai UAS

Edit1 Text Kosongkan

Edit2 Text Kosongkan

Edit3 Text Kosongkan

Edit4 Text Kosongkan

Edit5 Text Kosongkan

ListBox

Bitbtn1 Caption &Proses Bitbtn2 Caption &Ulang Bitbtn3 Caption &Keluar

(38)

2. Aktifkan komponen Bitbtn1 pada form1 dan lakukan double click, Kemudian tuliskan source code dibawah ini

3. aktifkan komponen Bitbtn2 pada form1 dan lakukan double click, Kemudian tuliskan source code dibawah ini

void __fastcall TForm1::BitBtn1Click(TObject *Sender) {

double absen = StrToFloat(Edit2->Text); double tugas = StrToFloat(Edit3->Text); double uts = StrToFloat(Edit4->Text); double uas = StrToFloat(Edit5->Text); double akhir=(absen+tugas+uts+uas)/4;

ListBox1->Items->Add("Hasil Perhitungan Nilai Akhir");

ListBox1->Items->Add("=============================="); ListBox1->Items->Add("Mata Kuliah : "+Edit1->Text);

ListBox1->Items->Add("Nilai Akhir : "+FloatToStr(akhir)); if ((akhir>=85)&&(akhir<=100))

{

ListBox1->Items->Add("Nilai Mutu : A"); } else if ((akhir>=75)&&(akhir<=84)) { ListBox1->Items->Add("Nilai Mutu : B"); } else if ((akhir>=60)&&(akhir<=74)) { ListBox1->Items->Add("Nilai Mutu :C"); } else if ((akhir>=50)&&(akhir<=59)) { ListBox1->Items->Add("Nilai Mutu : D"); } else if ((akhir>=40)&&(akhir<=49)) {

ListBox1->Items->Add("Nilai Mutu : E"); }

}

void __fastcall TForm1::BitBtn2Click(TObject *Sender) { Edit1->Clear(); Edit2->Clear(); Edit3->Clear(); Edit4->Clear(); Edit5->Clear(); ListBox1->Clear(); }

(39)

4. aktifkan komponen Bitbtn3 pada form1 dan lakukan double click, Kemudian tuliskan source code dibawah ini

5. Simpan unit dengan nama unilai dan projectnya dengan nama nilai dengan memilih menu File-Save All. Kemudian jalankan aplikasi dengan menekan tombol F9 atau Run.

Latihan 5.2

Tujuan : Memahami penggunaan struktur percabangan Switch-Case

1. Buat aplikasi baru dengan dengan memilih menu File|New| Application. Kemudian lakukan design form dan pengesetan properti komponen pada object properties seperti gambar

void __fastcall TForm1::BitBtn3Click(TObject *Sender) {

Close(); }

(40)

2. Double klik pada tombol Konversi kemudian isikan source code berikut

3. Simpan unit dengan nama uswitch dan projectnya dengan nama switch dengan memilih menu File-Save All. Kemudian jalankan aplikasi dengan menekan tombol F9 atau Run.

void __fastcall TForm1::Button1Click(TObject *Sender) { int angka=StrToInt(Edit1->Text); switch (angka) { case 1:Edit2->Text="Satu"; break; case 2:Edit2->Text="Dua"; break; case 3:Edit2->Text="Tiga"; break; case 4:Edit2->Text="Empat"; break; case 5:Edit2->Text="Lima"; break; case 6:Edit2->Text="Enam"; break; case 7:Edit2->Text="Tujuh"; break; case 8:Edit2->Text="Delapan"; break; case 9:Edit2->Text="Sembilan"; break;

default: MessageBox(0, "Angka yang dikonfersi dari 1 sd 9","Kesalahan", MB_ICONINFORMATION|MB_OK);;

} }

(41)

Soal 5.1

1. Buatlah program untuk menentukan biaya ongkos foto copy, harga perlembar Rp. 150. Jika memfoto copy 100 s.d 200 lembar mendapat potongan 10 % dari total biaya, dan jika memfoto copy diatas 200 lembar mendapat potongan 15 % dari total biaya.

2. Adapun untuk design form input dan output programnya seperti gambar berikut dengan menggunakan komponen GroupBox, RadioGroup, Label, Edit, button dan ListBox untuk menampilkan hasil perhitungan :

(42)

C. Pengulangan

Pengulangan atau looping berguna untuk melakukan pengulangan terhadap statemen, ada 3 jenis struktur pengulangan yaitu for, while, dan Do – While Latihan 5.3

Tujuan : Memahami penggunaan struktur pengulangan for

1. Buat aplikasi baru dengan dengan memilih menu File|New|VCL Form Application C++ Builder. Kemudian tambahkan komponen TlistBox dan Tbutton seperti gambar.

2. Double klik pada tombol proses dan isikan source code berikut.

3. Simpan unit dengan nama ulatfor dan projectnya dengan nama latfor kemudian jalankan dengan menekan tombol F9.

void __fastcall TForm1::Button1Click(TObject *Sender)

{ int k; for (k = 1; k<=5;k++){ ListBox1->Items->Add("Bilangan Ke - "+IntToStr(k)); } }

//untuk pengulangan yang melakukan proses increment for (Nama_variabel=nilai_awal; kondisi; nama_variabel++) { Statement_yang_akan_diulang;

}

//untuk pengulangan yang melakukan proses decrement for (Nama_variabel=nilai_awal; kondisi; nama_variabel--) { Statement_yang_akan_diulang;

(43)

Latihan 5.4

Tujuan : Memahami penggunaan struktur pengulangan while dan Do ..While

1. Buat aplikasi baru dengan dengan memilih menu File|New|VCL Form Application C++ Builder. Kemudian tambahkan komponen TlistBox dan Tbutton seperti gambar.

2. Double klik pada tombol proses dan isikan source code berikut.

3. Simpan unit dengan nama ulatwhile dan projectnya dengan nama latwhile kemudian jalankan dengan menekan tombol F9.

//Struktur Pengulangan while Nama_variabel=nilai_awal; while (kondisi) {

Statement_yang_akan_diulang; Nama_variabel++;

}

//Struktur Pengulangan do .. while Nama_variabel=nilai_awal;

do {

Statement_yang_akan_diulang; Nama_variabel++;

} while (kondisi);

void __fastcall TForm1::Button1Click(TObject *Sender) { int k; k=1; while (k<=5) { ListBox1->Items->Add("Nomor Ke - "+IntToStr(k)); k++; } }

(44)

Soal 5.2

1. Buatlah program aplikasi dengan C++ untuk menghitung. Dengan ketentuan jumlah total bayar adalah hasil dari total penjualan setelah dikurangi dengan besarnya diskon.

2. Adapun untuk design form, input dan output ditampilkan menggunakan komponen TlistBox seperti gambar.

Soal 5.3

1. Buatlah aplikasi sederhana untuk menghitung biaya pemakaian PDAM dengan rumus :

pemakaian = meterakhir - meterawal

2. Ketentuan rincian perhitungan biaya pemakaian adalah sebagai berikut :

Pemakaian Harga tiap 1 M3

0 s.d 10 M3 Rp. 600 11 s.d 20 M3 Rp. 800 21 s.d 30 M3 Rp. 1200

Keterangan Tabel Pemakaian :

jika pemakaian antara 0 s.d 10 M3 harga pemakaian tiap 1 M3 dikali Rp. 600, jika pemakaian antara11 s.d 20 M3 harga pemakaian tiap 1 M3 dikali Rp. 800, dan jika pemakaian >21 M3 harga pemakaian tiap 1 M3 dikali Rp. 1200.

(45)

3. Adapun untuk design form, input dan output ditampilkan menggunakan komponen TlistBox seperti gambar

(46)

Bab 6

Pemrograman Database dengan BDE

A. Pengantar

BDE (Borland Database Engine) adalah alat (software) yang disediakan oleh C++ Builder untuk membuat komunikasi antara database dengan user interface. Selain BDE, terdapat beberapa alat atau fitur yang perlu diketahui dalam mengembangkan aplikasi database, diantaranya :

 Database Explorer

Fitur ini berguna untuk melihat isi database, mengatur alias BDE dan juga untuk membuat kamus data.

 Database Desktop

Fitur ini berguna untuk melakukan pembuatan dan perubahan terhadap isi database.

 Data Modul

Fitur ini berguna untuk menempatkan komponen-komponen seperti Ttable, Tquery, dan TstoredProc.

 Quick Report

Fitur ini berupa komponen-komponen yang terdapat pada component pallete didalam IDE C++ Builder. Fitur ini berfungsi untuk membuat laporan-laporan database didalam aplikasi yang tentunya sangat dibutuhkan oleh pengguna (user). B. Database Desktop

Latihan 6.1

Tujuan : Dapat membuat database melalui Database Desktop, membuat alias melalui BDE Administrator.

Sasaran :

1. Memahami tipe data yang terdapat pada database desktop serta penerapannya.

2. Memahami dan dapat membuat Alias dan database dengan menggunakan BDE Administrator dan Database Desktop.

3. Memahami dan dapat membuat tabel dengan menggunakan Database Desktop

4. Memahami penggunaan komponen BDE untuk pembuatan aplikasi database

5. Dapat Menerapkan dalam pemecahan masalah kedalam program aplikasi menggunakan Software Borland C++ Builder 6

(47)

1. jalankan database desktop dengan memilih menu Tools-Database Desktop pada IDE C++ Builder.

2. Setelah database desktop aktif, maka pilihlah menu File-New-Table, kemudian pilih tipe paradox 7 lalu isikan contoh field berikut ini :

3. simpan tabel tersebut dengan nama mahasiswa.db pada direktori kerja anda dengan cara memilih tombol save as.

4. kemudian buat alias database dengan cara buka Control Panel Windows, lalu klik icon BDE Administrator.

(48)

5. Pilih menu Object-New, jika terdapat pertanyaan mengenai database driver, pilih STANDAR sehingga terlihat seperti gambar dibawah.

6. isikan nama aliasnya menjadi dbakademik, kemudian path databasenya arahkan ke direktori/folder tempat anda menyimpan tabel mahasiswa tadi, setelah benar simpan dengan menekan kombinasi tombol Ctrl + A atau pilih menu Object – Aplly.

Latihan 6.2

Tujuan : membuat aplikasi untuk input data dan memanipulasi data di database. 1. Setelah anda melakukan latihan 4.1, Langkah berikutnya membuat program

aplikasi untuk manipulasi data dengan membuat program aplikasi, adapun langkahnya, jalankan C++ Builder kemudian buat project baru dengan memilih Menu File|New| Application.

2. tempatkan sebuah komponen Ttable dan Tdatasource yang terletak pada tabpage Data Acces pada componen pallete serta sebuah komponen TDBGrid dan TDBNavigator yang terletak pada tabpage Data Controls. Selanjutnya lakukan pengesetan properti seperti berikut.

Komponen Properti Nilai

Form1 Caption Aplikasi Input Data Mahasiswa

GroupBox1 Caption Input Data

GroupBox2 Caption

Table1 DatabaseName dbakademik

(49)

Active True

Datasource1 Dataset Table1

DBGrid DataSource DataSource1

5 buah Label Caption NIM, Nama, Alamat, Kota, Telepon

5 buah Edit Caption Kosongkan

Button1 Caption Simpan

Name btSimpan

Button2 Caption Batal

Name btBatal

Button3 Caption Keluar

Name btKeluar

DBNavigator DataSource DataSource1

Visible Button Nbfirst,nbprior,nbnext,nblast,nbdelete nilainya true.

Nbinsert,nbrefresh,nbedit,nbcancel,nbpos t nilainya di false

(50)

3. Double klik pada tombol Simpan kemudian isikan source code berikut

4. Double klik pada tombol Keluar kemudian isikan source code berikut

5. Double klik pada tombol Batal kemudian isikan source code berikut

6. Simpan unit dengan nama umahasiswa.cpp dan projectnya dengan nama mahasiswa dengan memilih menu File-Save All. Kemudian jalankan aplikasi dengan menekan tombol F9 atau Run.

void __fastcall TForm1::btSimpanClick(TObject *Sender) { Table1->Append(); Table1->FieldValues["NIM"] = Edit1->Text; Table1->FieldValues["Nama"] = Edit2->Text; Table1->FieldValues["Alamat"] = Edit3->Text; Table1->FieldValues["Kota"] = Edit4->Text; Table1->FieldValues["Telepon"] = Edit5->Text; Table1->Post(); btBatal->Click(); }

void __fastcall TForm1::btBatalClick(TObject *Sender) { Edit1->Clear(); Edit2->Clear(); Edit3->Clear(); Edit4->Clear(); Edit5->Clear(); Edit1->SetFocus(); }

void __fastcall TForm1::btKeluarClick(TObject *Sender) {

Close(); }

(51)
(52)

Latihan 6.3

Tujuan : melakukan proses pencarian data di tabel yang dipanggil dari form lain. 1. Buka kembali latihan 4.2 kemudian tambahkan komponen Tbutton dan isikan

captionnya Cari sehingga tampilan menjadi seperti gambar dibawah

2. Kemudian tambahkan form baru dengan cara klik Menu File | New | Form, maka akan tampil form baru, dan simpan unitnya dengan nama ucari.cpp, setelah itu tambahkan komponen dibawah ini serta atur propertinya dari masing-masing komponen sehingga terlihat seperti gambar.

Komponen Properti Nilai

Form2 Caption Pencarian Data Mahasiswa

GroupBox1 Caption Kriteria Pencarian Berdasarkan GroupBox2 Caption Display Hasil Pencarian

Table1 DatabaseN

ame dbakademik

TableName Mahasiswa.db

(53)

Datasource1 Dataset Table1

DBGrid1 DataSource DataSource1

RadioButton1 Caption NIM RadioButton1 Caption Nama

Edit1 Text Kosongkan

Button1 Caption Cari

Button2 Caption Selesai

3. Double klik tombol Cari pada Form2 kemudian isikan source code berikut void __fastcall TForm2::Button1Click(TObject *Sender)

{

if (RadioButton1->Checked) { Table1->SetKey();

Table1->FieldByName("NIM")->AsString=Edit1->Text; if(!Table1->GotoKey()){

ShowMessage("Data yang dicari tidak ditemukan"); } } if (RadioButton2->Checked) { Table1->IndexName="NamaMhs"; Table1->FindNearest(ARRAYOFCONST((Edit1->Text))); } }

(54)

4. Double klik tombol Selesai pada Form2 kemudian isikan source code berikut

5. Selanjutnya berpindah ke Form1 dengan cara menekan kombinasi tombol Shift + F12 , klik tombol Pencarian pada Form1 kemudian ketikan source code berikut yang berfungsi untuk memanggil Form2.

6. Langkah terakhir deklarasikan Header dari Form2 didalam unit Form1 dengan mengetikan kode berikut

7. Jalankan aplikasi dengan menekan tombol F9 atau Run Latihan 6.4

Tujuan : melakukan pemanggilan form lain dengan melalui proses validasi password yang tersimpan di table.

1. Buka database desktop kemudian buatlah tabel user untuk menyimpan data user dan password, dan simpan tabel tersebut dengan nama user.db pada alias dbakademik yang telah dibuat pada latihan 4.1. adapun untuk field dari tabel user adalah sebagai berikut:

Field Type Data Ukuran Primary Key

User A (Alpha) 15 Ya

Pass A (Alpha) 15

2. Setelah table disimpan buka kembali tabel user kemudian isikan data sampel user : admin dan pass : admin

void __fastcall TForm2::Button2Click(TObject *Sender) {

Form2->Close(); }

void __fastcall TForm1::Button1Click(TObject *Sender) { Form2->ShowModal(); } #pragma resource "*.dfm" TForm1 *Form1; #include "ucari.h" USEFORM("ucari.cpp",Form2);

(55)

3. Buat project baru dengan memilih Menu File|New| Application, dan simpan unitnya upas.cpp projectnya password. Kemudian tempatkan komponen dan atur properti dari masing-masing komponen seperti gambar berikut

Komponen Properti Nilai

Form1 Caption Login

Table1 DatabaseName dbakademik

TableName user.db

Active True

Label1 Caption Form Login

Label2,Label3 Caption Username, Password

Edit1 Text Kosongkan

Edit2 Text Kosongkan

PasswordChar x

Button1 Caption Login

Button2 Caption Batal

4. Tambahkan form baru dengan cara klik Menu File | New | Form, yang nanti akan dipanggil melalui Form1 jika login sukses dan tambahkan komponen label kemudian desain seperti gambar, dan simpan unitnya dengan nama umenu.cpp.

(56)

5. Kembali ke Form1 dengan menekan tombol Shift+F12 kemudian double klik pada tombol Login dan isikan source code berikut:

6. Double klik tombol Batal kemudian isikan source code berikut

7. Langkah terakhir deklarasikan Header dari Form2 didalam unit Form1 dengan mengetikan kode berikut

8. Jalankan aplikasi dengan menekan tombol F9 atau Run void __fastcall TForm1::Button1Click(TObject *Sender) { String username; String password; Table1->SetKey(); Table1->FieldByName("user")->AsString=Edit1->Text; if(!Table1->GotoKey()){

ShowMessage("Username yang anda masukan salah"); } else{ username = Table1->FieldValues["user"]; password = Table1->FieldValues["pass"]; } if ((Edit1->Text==username)&&(Edit2->Text==password)){ Form2->ShowModal(); } else {

ShowMessage("Password yang anda masukan salah"); }

}

void __fastcall TForm1::Button2Click(TObject *Sender) { Close(); } #pragma resource "*.dfm" TForm1 *Form1; #include "umenu.h" USEFORM("umenu.cpp",Form2);

(57)

Latihan 6.5

Tujuan : Pada latihan ini membuat aplikasi untuk stok barang yang terdiri dari input data barang, edit data barang, dengan melibatkan Penggunaan TMainMenu dan TQuery dalam menampilkan data.

1. Buka database desktop kemudian buatlah tabel barang untuk menyimpan data barang, dan simpan tabel tersebut dengan nama barang.db, dan buatlah alias baru dengan nama dbstok adapun cara membuat alias bisa anda lihat kembali pada latihan 4.1 sebelumnya. adapun untuk field dari tabel barang adalah sebagai berikut:

Field Type Data Ukuran Primary Key

Kd_brg A (Alpha) 25 Ya

Nm_brg A (Alpha) 30

Harga $ (money)

Banyak N (Number)

Tanggal D (Date)

2. Buat project baru dengan memilih Menu File|New| Application dan simpan unitnya ustok.cpp projectnya stok. Kemudian tempatkan komponen dan atur properti dari masing-masing komponen seperti gambar berikut.

Komponen Properti Caption

Form1 Caption Aplikasi Stok Barang

MainMenu1 Menu File , Edit, Keluar

Menu Item File Input Stok Menu Item Edit Data Stok

Catatan : untuk mebuat daftar menu pada komponen TmainMenu adalah dengan cara mendouble klik komponen MainMenu1 sehingga muncul dialog properti MainMenu sperti gambar

(58)

3. Tambahkan form baru dengan cara klik Menu File | New | Form, yang nanti akan dipanggil melalui Menu simpan unitnya dengan nama uinputstok.cpp aturlah properti komponen seperti berikut

Komponen Properti Keterangan

Form2 Caption Input Data Barang

Table1 DatabaseNa

me dbstok

TableName barang.db

Active True

DateTimePicker1 Terdapat pada Palette Win32

5 buah Label Caption Tanggal Kode, Nama Harga,Banyak

(59)

Button1 Caption Simpan

Button2 Caption Ulang

Button3 Caption Selesai

4. Double klik tombol Simpan kemudian isikan source code berikut

5. Double klik tombol Ulang kemudian isikan source code berikut

6. Double klik tombol Selesai kemudian isikan source code berikut

7. Tambahkan kembali form baru dengan cara klik Menu File | New | Form, simpan unitnya dengan nama ueditstok.cpp aturlah properti komponen seperti berikut

Komponen Properti Keterangan

Form3 Caption Edit Data Stok

Query1 DatabaseName dbstok

Active True

void __fastcall TForm2::Button1Click(TObject *Sender) { Table1->Append(); Table1->FieldValues["kd_brg"]=Edit1->Text; Table1->FieldValues["nm_brg"]=Edit2->Text; Table1->FieldValues["harga"]=Edit3->Text; Table1->FieldValues["banyak"]=Edit4->Text; Table1->FieldValues["tanggal"]=DateTimePicker1->Date; Table1->Post(); Button2Click(Sender); }

void __fastcall TForm2::Button2Click(TObject *Sender) { Edit1->Clear(); Edit2->Clear(); Edit3->Clear(); Edit4->Clear(); Edit1->SetFocus(); }

void __fastcall TForm2::Button3Click(TObject *Sender) {

Form2->Close(); }

(60)

DBGrid1 DataSource DataSource1

Datasource1 Dataset Query1

DBNavigator DataSource DataSource1

2 Buah DateTimePicker

GroupBox1 Caption Tampilkan Berdasarkan Tgl

Button1 Caption Tampilkan

8. Klik pada komponen Query1, kemudian pada properties SQL klik tombol ... setelah muncul dialog tuliskan syntak SQL select * from ‘barang.db’ lihat gambar

(61)

9. Klik pada badan Form kemudian pada Tab Event di Properties Double klik event OnShow kemudian isikan source code berikut

10. Double klik pada tombol Tampilkan dan isikan source code berikut:

11. beralih ke Form1 dengan menekan tombol Shift+F12 kemudian double klik pada menu Input Stok lalu isikan source code berikut

12. double klik pada menu Data Stok lalu isikan source code berikut void __fastcall TForm3::FormShow(TObject *Sender)

{

DBGrid1->Refresh(); }

void __fastcall TForm3::Button1Click(TObject *Sender) { DATE PTgAwal; DATE PTgAkhir; PTgAwal=DateTimePicker1->Date; PTgAkhir=DateTimePicker2->Date; Query1->SQL->Clear();

Query1->SQL->Add("select * from "+QuotedStr("barang.db")); Query1->SQL->Add("where Tanggal>=:PTgAwal"); Query1->SQL->Add("and Tanggal<=:PTgAkhir"); Query1->ParamByName("PTgAwal")->AsDate=DateTimePicker1->Date; Query1->ParamByName("PTgAkhir")->AsDate=DateTimePicker2->Date; Query1->Prepare(); Query1->Open(); DBGrid1->Refresh(); }

void __fastcall TForm1::InputStok1Click(TObject *Sender) {

Form2->Show(); }

void __fastcall TForm1::DataStok1Click(TObject *Sender) {

Form3->Show(); }

(62)

13. double klik pada menu Keluar lalu isikan source code berikut

14. Langkah terakhir deklarasikan Header dari Form2 dan Form3 didalam unit Form1 dengan mengetikan kode berikut

15. Jalankan aplikasi dengan menekan tombol F9 atau Run #pragma resource "*.dfm" TForm1 *Form1; #include "uinputstok.h" #include "ueditstok.h" USEFORM("uinputstok.cpp",Form2); USEFORM("ueditstok.cpp",Form3);

void __fastcall TForm1::Keluar1Click(TObject *Sender) {

Application->Terminate(); }

(63)

Soal 6.1

1. Kembangkan kembali soal 3.3 pada bab 3 halaman 24 menjadi aplikasi database dengan field tabel anda buat sendiri mengacu pada desain dibawah ini.

Gambar

Table  Tblkaryawan
Tabel Mahasiswa

Referensi

Dokumen terkait

Gde Ngurah Indraguna Pinatih, Msc, Sp.GK selaku Ketua Program Studi Ilmu Biomedik dan Penguji III, yang telah memberikan masukan, saran, serta koreksi yang

Hasil pengujian hipotesis mengenai pengaruh variabel intellectual capital (VAIC) terhadap return on asset (ROA) menunjukkan nilai signifikansi sebesar 0,000 (p&lt;0,05)

(2) Wajib Retribusi Pemakaian Kekayaan Daerah adalah orang pribadi atau Badan yang menurut ketentuan peraturan perundang-undangan Retribusi diwajibkan untuk

Diharapkan dengan adanya sistem ini, Race Motor dapat lebih mudah dalam pemberian informasi, meningkatkan pelayanan kepada pelanggan khususnya yang berada diluar

Latar belakang masalah yang diteliti adalah Peran Kesenian Tradisional Wayang Kulit di Desa Bulusan di mana keberadaan Wayang Kulit sebagai media ritual

Pada pekan ini investor selain masih akan tetap mencerna rilis kinerja perusahaan di kuartal I, juga akan memperhatikan data ekonomi awal bulan seperti inflasi

Penelitian ini menandaskan bahwa telenursing dengan menggunakan teknologi audio-vidio sangat efektif untuk melakukan komunikasi antara perawat dan pasien serta memberikan kepuasan

Puji dan syukur kehadirat Allah SWT atas segala nikmat, karunia dan limpahan rahmat-Nya yang telah memberikan kekuatan kepada penulis sehingga skripsi ini dapat