BAB III Pengenalan Tipe Data dan Bahasa Pemrograman C/C++ Pendahuluan Pada bab ini dileaskan tipe data dan operasi baca tulis data, juga dijelaskan struktur pemrograman pada bahasa C/C++.
Penyajian 3.1 Tipe Data Tipe data ada dua macam, yaitu : tipe dasar dan tipe bentukan. Tipe dasar adalah tipe data yang dapat langsung dipakai. Tipe bentukan dibentuk oleh tipe dasar atau tipe bentukan lain yang sudah didefinisikan. 3.1.1 Tipe Dasar Yang termasuk dalam tipe dasar adalah : bilangan bulat (integer), logika (boolean), karakter, bilangan riil (float) dan string. Tiga tipe dasar yang pertama disebut tipe ordinal karena setiap nilai konstantanya bisa diubah ke nilai integer. 1. Bilangan Bulat (Integer) Jenis data ini terdiri atas integer positif, integer negatif dan nol. Pada C++ jenis data ini di bagi atas beberapa bagian, seperti pada Tabel 3.1. Tabel 3.1 Tipe data integer Tipe
Ukuran
format
Jangkauan nilai
memori (dalam byte) char
1
%d/%i
-128..127
unsigned char
1
%u
0..255
INTEGER (int)
2
%d/%i
-32768..32767
unsigned int
2
%u
0..65535
LONGINT (long)
4
%ld/%li
-2147483648..2147483647
unsigned long
4
%lu
0..4294967295
Operator Integer terdiri atas : + (penjumlahan), - (pengurangan) , * (perkalian),
/ (pembagian bilangan bulat), % (sisa hasil bagi atau modulo) 2. Logika (Boolean) Tipe data ini mempunyai nilai TRUE atau FALSE. Operator untuk jenis data ini adalah operator logika, yaitu : NOT (!), AND (&&), OR (||) dan XOR (^). 3. Karakter (Char) Yang dimaksud dengan jenis data ini adalah karakter tunggal atau sebuah karakter yang ditulis diantara tanda petik tunggal, seperti misalnya ‘A’,’a’,’!’,’5’ dsb. Dasarnya adalah ASCII CHARACTER SET. Misalnya : 032 pada tabel ASCII CHARACTER SET menunjukkan karakter Blank. 033
!
048
0
076
L dst
Operasi yang dilakukan terhadap tipe karakter adalah operasi perbandingan =, <>, <, >, <=, >=.
4. Bilangan Riil (float) Penulisan untuk jenis data ini selalu menggunakan titik desimal. Nilai konstanta numerik real berkisar dari 1E-38 sampai dengan 1E+38 dengan mantissa yang signifikan sampai dengan 11 digit. E menunjukkan nilai 10 pangkat. Nilai konstanta numerik real menempati memori sebesar 6 byte. Contoh : 123.45 12345. salah, titik desimal tidak boleh dibelakang 12E5 12E+5 -12.34 .1234 salah, titik desimal tidak boleh dimuka
Pada C++, jenis data ini dibedakan atas beberapa tipe, seperti pada Tabel 3.2.
Tabel 3.2 Tipe data float Tipe
Ukuran memori
Jangkauan nilai
Format
(dalam byte) FLOAT
4
3.4*(10^-38) … 3.4*(10^+38)
%f
DOUBLE
8
1.7*(10^-308) – 1.7*(10^+308)
%f
LONG DOUBLE
10
3.4*(10^-4932) – 1.1*(10^+4932)
%lf
Operator untuk jenis data ini terdiri atas : + (penjumlahan) , - (pengurangan) , * (perkalian) dan / (pembagian). 5. Tipe String Nilai data string merupakan urut-urutan dari karakter yang terletak di antara tanda petik tunggal. Nilai data string akan menenpati memori sebesar banyaknya karakter stringnya ditambah dengan 1 byte. Contoh : ’Belajar’, ’Pemrograman’, merupakan nilai konstanta string. Operasi terhadap tipe string terdiri dari : a. Operasi Penyambungan Operatornya : +. Digunakan untuk menyambung 2 nilai string. Contoh : ’Belajar’ + ’Pemrograman’ menjadi ’BelajarPemrograman’ b. Operasi Perbandingan 3.1.2 Tipe Bentukan Tipe bentukan adalah tipe yang didefinisikan sendiri oleh pemrogram. Ada dua macam tipe bentukan, yaitu : 1. Tipe dasar yang diberi nama baru Contoh : typedef int bilangan 2. Rekaman (struct) 3.2 Nama Nama diberikan kepada peubah (variabel), konstanta, tipe bentukan, nama fungsi, dan nama prosedur. Aturan penamaan : 1. Diawali dengan huruf alfabet. 2. Huruf besar atau kecil dibedakan. 3. Nama tidak boleh mengandung operator aritmatika, operator relasional, tanda baca, spasi.
3.2.1 Variabel. Variabel adalah suatu identifier non-standar yang nilainya tidak tetap atau nilainya merupakan hasil dari suatu proses. (variabel yang dimaksudkan disini sama seperti halnya arti variabel pada aljabar). Bentuk umum deklarasinya adalah : 1. Jika hanya 1 (satu) variabel yang dideklarasikan : Tipe_data identifier; 2. Jika lebih dari 1 (satu) variabel dan masing-masing memiliki tipe data yang sama : Tipe_data id-1, id-2, …., id-3; 3. Jika beberapa variabel yang berbeda tipe datanya : Tipe_data_1 identifier-1; Tipe_data_2 identifier-2; . . . Tipe_data_n identifier-n; Contoh : 1. Int x; 2. Float p,q,r; 3. Char a,b; 4. Boolean m,n; 3.3 Nilai Nilai adalah besaran dari tipe data yang sudah didefinisikan. Nilai dapat berupa nilai peubah atau konstanta. 3.3.1 Pengisian Nilai ke Nama Peubah 1. Pengisian nilai secara langsung Pengisian nilai secara langsung adalah memasukkan nilai ke dalam nama peubah langsung di teks program. peubah = konstanta Contoh : N = 10;
Atau peubah1=peubah2 Contoh : N=M;
2. Pembacaan Nilai dari Piranti Masukan Dalam bahasa C++ untuk keperluan input (membaca nilai) digunakan identifier standar cin atau scanf. Bentuk umum penulisannya :
Cin>>variabel input; Atau scanf(”%kode_tipe_data ”, &variabel_input); Contoh : cin>>A>>B>>C; atau scanf(“%d %d %d”, &A,&B,&C);
3.3.2 Ekspresi Sebuah ekspresi merupakan kumpulan dari
operand-operand (seperti : bilangan,
konstanta, variabel dll) yang bersama-sama dengan operator membentuk suatu bentuk aljabar dan menyatakan suatu nilai.
Ada 2 (dua) jenis ekspresi dalam bahasa C++, yaitu : 1. Ekspresi numerik / aritmatika, yaitu suatu ekspresi yang menghasilkan nilai numerik / aritmatika. 2. Ekspresi Boolean atau ekspresi logika, yaitu suatu ekspresi yang menghasilkan nilai boolean / logika (true/false).
Contoh : 1. (b * b – 4 * a * c) / (2*a) / (2 * a) ekspresi numerik, jika a,b dan c adalah bilangan (variabel bernilai numerik). 2. Upah < 1000.0 ekspresi boolean (“upah” adalah suatu variabel bernilai real).
3.3.3 Menuliskan Nilai ke Piranti Keluaran Untuk keperluan keluaran (mencetak keluaran) digunakan identifier standar COUT atau PRINTF. Pada setiap keluaran ada fungsi untuk pindah ke baris baru (new line). Pada COUT ada ENDL, pada PRINTF ada /n
Bentuk umum penulisannya :
Cout<
Contoh: Cout<<”luas lingkaran adalah”<
3.4 Struktur program C/C++ Struktur program C++ dapat dikelompokkan menjadi tiga bagian,yaitu : 1. Kepala Program (header) 2. Bagian Deklarasi (pada C++ bisa dimana saja) 3. Bagian Pernyataan //Program LuasLingkaran;
#include
Using namespace std; float jari2, Luas ; int main(){ cout<<”Masukkan jari-jari : ”; cin>>jari2; Luas = 314*jari2*jari2; cout<<”Luas = ”<
Pada program di atas Program LuasLingkaran merupakan judul program. float jari2, Luas ; merupakan deklarasi, dan selebihnya bagian pernyatan. 3.4.1 Kepala Program (Header) Kepala program pada C++ berisi library yang akan digunakan pada program untuk membangkitkan kata-kata tercadang (reserved word) atau perintah-perintah khusus. Contoh: - #include<stdio.h> o Membangkitkan perintah/kata tercadang seperti scanf, printf, gets, getchar, dll - #include o Membangkitkan perintah seperti cin, cout dll
-
#include o Berfungsi agar kita bisa menggunakan perintah seperti min, max, sort, dsb
3.4.2 Bagian Deklarasi Pada bagian ini dideklarasikan : tipe, variabel, konstanta, prosedur, dan fungsi. 1. Deklarasi tipe Digunakan untuk membuat tipe bentukan atau tipe khusus yang nantinya digunakan dalam deklarasi variabel. Bentuk deklarasi : Typedef pengenal = tipe data; Contoh Typedef bilangan = int; 2. Deklarasi variabel Digunakan untuk mendeklarasikan semua variabel yang dipakai dalam program. Bentuk umum deklarasi : Bentuk umum deklarasinya adalah : 1. Jika hanya 1 (satu) variabel yang dideklarasikan : Tipe_data identifier; 2. Jika lebih dari 1 (satu) variabel dan masing-masing memiliki tipe data yang sama : Tipe_data id-1, id-2, …., id-3; 3. Jika beberapa variabel yang berbeda tipe datanya : Tipe_data_1 identifier-1; Tipe_data_2 identifier-2; . . . Tipe_data_n identifier-n;
Contoh : 1. Int x; 2. Float p,q,r; 3. Char a,b; 4. Boolean m,n; 3. Deklarasi konstanta Deklarasi ini untuk mendefinisikan nama yang memiliki nilai tetap. Bagian umum deklarasinya adalah : CONST identifier = nilai; Contoh : CONST
phi = 3.14; x= 2; y = ‘S’;
3.4.3 Bagian Pernyataan Bagian pernyataan dalam C++ diawali oleh karakter ”{” dan diakhiri dengan karakter ”}”.Untuk pembuka pada program utama ”int main()” dahulu baru diikuti tanda ”{”. Penutup Latihan soal : 1. Tulislah rumus berikut dalam bahasa C++ : 4 a. V r 3 3
b. m
a b b (1 ) 3ac cd
2. Tulislah pernyataan dalam C++ untuk : a. Menampilkan tulisan : ‘Belajar Pemrograman’. b. Meminta pengguna memasukkan namanya. 3. Buatlah program dalam Bahasa C++ untuk menghitung luas dan keliling persegi panjang. 4. Buatlah program dalam Bahasa C++ untuk menghitung jarak 2 titik A( x1, y1) dan B( x2, y 2) dengan rumus jarak = d
x1 x22 y1 y22