bahasa pemrograman c++

26
Oleh : Siwi Puji Setyati, S.Pd PEMROGRAMAN C++

Upload: dionisius-rangga-ananto

Post on 15-Apr-2017

218 views

Category:

Education


6 download

TRANSCRIPT

Oleh : Siwi Puji Setyati, S.Pd

PEMROGRAMAN C++

1. Pengenalan

C++ adalah sebuah bahasa pemrograman yang memiliki banyak dialek, seperti bahasa orang yang banyak memiliki dialek. Dalam C++, dialek bukan disebabkan oleh karena si pembicara berasal dari Jepang atau Indonesia, melainkan karena bahasa ini memiliki beberapa kompiler yang berbeda. Ada empat kompiler umum yaitu : Borland C++, Microsoft Visual C++,Watcom C/386, dan DJGPP.

Bahasa pemrograman C++ adalah bahasa yang amat berbeda. Untuk kompilerC++ berbasis DOS, akan memerlukan beberapa kata kunci (keywords); keyword sendiri tidak cukup untuk difungsikan sebagai input dan output.

2. Membuat Rumusan Pemecahan Masalah

Dalam membuat rumusan untuk pemecahan masalah kita dapat menggunakanpseudocode atau menggunakan flowchart.

Contoh menghitung luas lingkaran :

3. Implementasi ProgramDi dalam mengimplementasi algoritma kita akan menentukan bahasa pemrograman apa yang cocok atau ingin kita gunakan.Misalnya Pascal atau Delphi, Basic, dansebagainya. Jika program diimplementasikan dengan bahasa pemrograman yang bersifatvisual dan event driven (melibatkan desain form dan event-event) seperti Visual Basic atau Delphi, maka perlu pula diperhatikan langkah-langkah berikut:

• Menambahkan obyek-obyek control pada Form seperti EditBox, ComboBox, Button, dll• Mengatur posisi control, properties kontrol (seperti caption, warna, jenis tulisan,

dan sebagainya), serta urutan fokus obyek-obyek yang ada pada form.• Pemberian nama obyek kontrol yang sesuai. Misalnya untuk input diameter diberi nama txtDiameter.• Menentukan event-event kontrol yang berpengaruh pada fungsionalitas program

• Mulai coding program

4. Menguji Coba dan Membuat Dokumentasi

Setelah selesai implementasi, langkah selanjutnya yaitu menguji program tersebut.Apakah aplikasi kita sudah berjalan sesuai tujuan atau belum. Bila belum berjalan sesuai rencana maka kita perlu mengkaji kembali algoritma/rumusan serta implementasi program yang telah kita buat.

Untuk memudahkan dalam memeriksa kesalahan suatu program ataupun emahami jalannya program, kita juga perlu membuat dokumentasi dari program yang dibuat. Dokumentasi tersebut berisi informasi mulai dari tujuan/fungsi program, algoritma program, hingga cara menggunakannya.

Bagian Deklarasi

Bagian Statement

Struktur Bahasa Program Procedural

1. Bagian DeklarasiBagian deklarasi merupakan bagian program untuk mendefinisikan tipe data suatu variable, konstanta, serta fungsi dan prosedur yang akan digunakan pada program. Deklarasi digunakan untuk memperkenalkan suatu nama kepada Compiler program.

Contoh Deklarasi : a. Deklarasi Variabel

Penjelasan :Dalam bahasa pascal variabel dideklarasikan dengan reserve word var kemudian diikuti dengan nama variabel (identifier) baru diikuti oleh type data variabel itu. Sedangkan dalam bahasa C, deklarasi diawali oleh type data kemudian diikuti oleh nama variabel tersebut. Suatu identifier harus diawali oleh karakter bukan angka, tetapi tidak boleh diawali oleh karakter khusus (!#$%^&*<>?).

Pada bahasa pascal identifier tudak bersifat case sensitive (huruf besar = huruf kecil). Sedangkan dalam bahsa C identifier bersifat case sensitive (huruf besar != huruf kecil).

b. Deklarasi Konstanta Pada Pascal dan CContoh : const phi = 3.14;Penjelasan:Konstanta yaitu nilai yang tetap. Jadi jika mengacu pada contoh di atas, maka nilai phi tidak dapat diubah-ubah dan akan selalu 3.14

c. Deklarasi Type Data Pada Pascal (kanan) dan C (kiri)

Penjelasan :Type data dibedakan menjadi:1. Type Data Sederhana Tipe data sederhana merupakan tipe data yang paling kecil, yang hanya melibatkan satu item data, misalnya tipe data integer, string, real, Boolean, dan sebagainya.2. Type Data Terstruktur Tipe data terstruktur merupakan tipe data yang terdiri dari beberapa item data.3. Type Data Pointer Tipe data pointer digunakan untuk menunjuk pada alamat memory suatu data yang lain. Contoh penulisan tipe data pointer : DataSiswa *TDataSiswa;

d. Deklarasi Procedure/Function

Penjelasan :Dalam bahasa pascal procedure dan function dideklarasikan oleh reserved word prosedure & function untuk membedakan keduanya.

Tetapi dalam bahasa C procedure pada dasarnya adalah function yang mengembalikan void alias tidak mengembalikan nilai apa-apa. Sehingga semua sub program dalam bahasa C yang dideklarasikan oleh reserved word void dianggap sebagai sebuah fungsi.

2. Bagian StatementPada bahasa C, dimulai dari deklarasi variable hingga akhir statement diawali dan diakhiri dengan tanda kurung kurawal { dan }.

Berikut adalah potongan code untuk implementasi program dengan Bahasa C :

Berikut adalah penjelasan potongan kode Bahasa C untuk contoh di atas.1. #include <stdio.h>Baris di awal program ini mengincludekan header library stdio ke dalam program. 2. void main()Baris kedua ini menandakan awal dari blok statement utama yang merupakan suatu fungsi/sub program yang diberi nama ‘main’.3. { const phi = 3.14;Pada awal baris ketiga ini, terdapat tanda kurung kurawal sebagai pembuka blok Statement. Kemudian reserved word const digunakan untuk mendeklarasikan konstanta phi.4. float diameter, radius, Luas;Baris keempat ini berfungsi mendeklarasikan variable diameter, radius, dan luas dengan tipe data float (bilangan pecahan)5. scanf(“%f”, &diameter);Baris kelima berisi perintah yang berfungsi untuk meminta input bertipe float dari user, dan kemudian nilainya disimpan ke variable diameter.6. radius = diameter / 2.0;7. Luas = phi * radius * radius;Baris keenam dan ketujuh melakukan operasi matematika penghitung luas lingkaran.8. printf(“%f”,Luas);Baris ini digunakan untuk mencetak isi variable luas yang bertipe float.9. }Baris ini menandakan akhir dari blok statement.

1. Aturan Leksikal2. Tipe Data3. Expression4. Statement5. Function dan Procedure

Element-Element Dalam Pemrograman

1. Aturan Leksikal Yang dimaksud aturan leksikal yaitu aturan yang digunakan dalam membentuk suatu deklarasi, definisi, maupun statement hingga menjadi satu program yang utuh. Aturan ini meliputi beberapa element antara lain:

a. Tokenb. Komentarc. Identifierd. Keywords (Reserved Words)e. Operator

A. Token Token yaitu element terkecil pada bahasa pemrograman yang memiliki arti penting bagi compiler. Yang termasuk token antara lain: identifier, keywords (reserved words), operator, dan sebagainya. Token yang satu dengan yang lain dipisahkan dengan satu atau lebih spasi, tab, baris baru, atau komentar.

B. Komentar Komentar yaitu teks (kumpulan karakter) yang diabaikan oleh compiler. Pada bahasa C teks diantara tanda /* dan */ akan dianggap sebagai komentar. Dan untuk teks setelah tanda // dianggap sebagai komentar satu baris. Berikut adalah contoh penggunaan komentar dalam bahasa C :

C. Identifier Identifier merupakan kumpulan karakter yang digunakan sebagai penanda nama variabel, tipe data, fungsi, procedure, dan sebagainya. Dalam penulisan identifier harus diawali dengan karakter non angka seperti berikut : _qwertyuiopasdfghjklzxcvbnmQWERTYUIOPASDFGHJKLZXCVBNMTetapi tidak boleh diawali dengan karater khusus sebagai berikut : /?!#$%&*(){}.Dalam bahasa C identifier bersifat case sensitive, maksudnya huruf besar dan huruf kecil dianggap sebagai identifier yang berbeda.no_telp tidak sama No_Telp.

D. Keywords (Reserved Words) Keywords atau Reserved words merupakan kata-kata yang telah ada / didefinisikan oleh bahasa pemrograman yang bersangkutan. Kata-kata tersebut telah memiliki definisi yang sudah tetap dan tidak dapat diubah sehingga tidak dapat digunakan sebagai identifier.Yang termasuk keywords dalam bahasa C antara lain :break, case, char, const, continue, default, do, double, else, enum, float, for, goto, if, inline, int, long, return, short, signed, sizeof, static, struct, switch, typedef, union, unsigned, void, whileE. Operator Operator digunakan untuk melakukan suatu perhitungan/operasi. Operasi yang melibatkan satu operand disebut unary operator, dua operand disebut binary operator, dan bila melibatkan tiga operand disebut ternary operator. Urutan eksekusi operator disebut operator prederence. Operator dapat dekategorikan menjadi beberapa jenis, antara lain:1. Arithmetic operator2. Assignment operator3. Bitwise dan Logical operator4. Relation operator5. Pointer operator

E.1 Arithmetic Operator Yang termasuk dalam arithmetic operator antara lain:Penjumlahan : + (pada bahasa C, terdapat juga operator ++ sebagai prefix increment. Misalnya operasi: i++ atau ++i, akan melakukan increment nilai i sebesar 1)Pengurangan : - (Seperti penjumlahan, pada bahasa C juga terdapat operator -- sebagai prefix decrement)Perkalian : *Pembagian : /Mencari sisa pembagian : dalam bahasa C untuk mencari sisa pembagian digunakan tanda %

Operator – operator diatas termasuk dalam golongan operator binary karena melibatkan dua operand. Tetapi terdapat pula operator unary, seperti – dan + yang berfungsi sebagai penanda bilangan negatif dan positif.E2. Assignment Operator Operator ini berfungsi untuk memberi nilai suatu identifier. Dalam bahasa C terdapat beberapa assignment operator, antara lain :• Tanda = berarti sama dengan• Tanda += digunakan untuk melakukan assignment penjumlahan.

Lanjutan... Misalnya terdapat dua operasi sebagai berikut : C = 4; C+=3; Setelah baris pertama dieksekusi, maka C bernilai 4. Setelah baris kedua dieksekusi C bernilai 7.• Tanda -= digunakan untuk melakukan assignment pengurangan. Cara penggunaannya sama seperti pada contoh diatas.• Tanda <<= merupakan left shift assignment, digunakan untuk menggeser bit ke kiri• Tanda >>= merupakan right shift assignment, digunakan untuk menggeser bit ke kanan.E3. Bitwise dan Logical Operator Operator ini berfungsi untuk melakukan operasi bit dan logika. Yang termasuk dalam operator ini antara lain:Negasi : (!) Contoh: A = !B;And : (&&) Contoh: A = A && B;Or : (||) Contoh: A = A || B;Shift left : (<<) Contoh: A = B << C;Shift right : (>>) Contoh: A = B >> A;

E4. Relation Operator Operator ini berfungsi untuk membandingkan nilai dua operand. Operand yang dibandingkan harus memiliki tipe data yang sama, kecuali bilangan bulat (bertipe integer) dan bilangan pecahan (bertipe real atau float).Yang termasuk Relation Operator : Penanda kesamaan = (Pada bahasa C, penanda kesamaan menggunakan dua tanda sama dengan, yaitu == )Penanda lebih besar >Penanda lebih besar atau sama dengan >=Penanda lebih kecil <Penanda lebih kecil atau sama dengan <=Penanda ketidaksamaan. Pada bahasa Pascal menggunakan tanda <> sedangkan pada bahasa C menggunakan tanda !=E5. Pointer Operator Operator pointer digunakan untuk melakukan operasi pada operand yang berupa pointer. Dalam bahasa C deference pointer dideklarasikan dengan tanda asterisks *.

2. Tipe Data Tipe data digunakan untuk menentukan jenis nilai yang dapat ditampung oleh suatu variable. Pada suatu bahasa pemrograman umumnya telah menyediakan tipe-tipe data yang sederhana (simple) maupun yang terstruktur Dan apabila kita membutuhkan tipe data yang belum tersedia, kita dapat mendefinisikan sendiri tipe data baru, yang disebut enumerated type.

Berikut adalah tipe data sederhana bahasa pascal dan bahasa C :

Lanjutan...Tipe data terstruktur yaitu tipe data yang dapat menampung lebih dari satu nilai. Pembagian tipe data terstruktur :

1. ArrayArray yaitu tipe data berindeks yang terdiri dari satu atau lebih elemen / komponen yang memiliki tipe data yang sama.Contoh array dalam bahasa C :

Pada bahasa C, indeks batas bawah dari array selalu nol, dan batas atas array adalah jumlah element dikurang satu. Pada contoh diatas variabel bil dapat menampung 4 element, dimulai dari element ke-0, ke-1, ke-2, dan ke-3. Dari contoh diatas indeks ke-0 adalah bil[0] diberi nilai 1, dan seterusnya hingga bil [3] yang diberi nilai 4.Contoh diatas merupakan array satu dimensi. Kita dapat membuat array multi dimensi. Berikut ini adalah contoh array berdimensi dua.

Lanjutan...Gambar array multi dimensi :

2. Struct (dalam Bahasa C)Tipe data ini berguna untuk merepresentasikan kumpulan (set) elemen / komponen satu atau lebih tipe data.setiap elemen disebut juga field. Berikut ini adalah contoh penggunaan struct :

Lanjutan...Tipe data enumerad adalah tipe data yang didefinisikan sendiri oleh programer. Contoh tipe data enumerad dalam bahasa C:

/* bahasa C */enum thari { sen, sel, rab, kam, jum, sab, ming};

void main() { thari hari; hari := sen;}

3. ExpressionYang dimaksud dengan expression (ekspresi) yaitu suatu pernyataan yang menghasilkan suatu nilai. Expression tersusun dari operator dan operand yang digunakan untuk menghitung atau memberi suatu nilai suatu variable atau identifier.

Berikut ini adalah contoh expression : A : hanya berupa nama variable10 : berupa suatu nilaiA + 3 * 2 : expression menggunakan operatorCalculate(A,B) : melakukan pemanggilan function bernama Calculate

4. StatementStatement dapat dikelompokkan menjadi beberapa kelompok, antara lain : Simple StatementCompound StatementSelection StatementIteration Statement

1. Simple StatementYang termasuk dalam simple statement antara lain:•Assignment StatementMerupakan statement yang digunakan untuk memberikan nilai suatu variable.Contoh :a = 10;b = a*2;c = c*b;Student [i].id = 12;•Statement untuk memanggil function atau procedureMerupakan statement yang memanggil procedure atau function yang telah didefinisikan dalam program.Contoh :Calculate (a,b);b = Getlenght (Student [i] .Name);Cetak (a,b);•Jump StatementYaitu statement yang berfungsi untuk melompati statement lain. Diantaranya :Melompat ke statement tertentu : gotoKeluar dari iterative statement : breakMelompat ke iterasi selanjutnya pada iterative statement : continueKeluar dari function/procedure : return

2. Compound StatementCompound Statement yaitu sekumpulan statement yang terdiri dari statement-statement lain, termasuk juga iteration dan selection.Dalam bahsa C kumpulan statement akan diawalai dengan tanda { dan diakhiri dengan tanda }.Contoh :If ( i = 0 ){/* compound statement start here*/ printf (“Nilai i tidak boleh sama dengan nol”);hasil = -1;//compound statement ends here}3. Selection statement melakukan pemeriksanaan nilai/kondisi, yang kemudian akan memilih statement mana yang akan dieksekusi. Cara penulisan selection statement dalam bahsa C :• if ... then = if (kondisi) (statement)• if ... then ... Else = if (kondisi ) (statement)

else (statement)• if ... Then ... Elseif = if (kondisi) (statement) ... Then ... Else else if (kondisi) (statement) else if ...

Else (statement)

Lanjutan...Select case / switch = switch (identifier) { case value_1 : (statement) case ..... case value_n : (statement) }4. Iteration statementStatement ini digunakan untuk melakukan perulangan sekumpulan statement. Yang termasuk iteration statement dalam bahasa C :• Repeat do/loop : do (statement) while (kondisi)• While .. Do : while (kondisi) do (statement)• for ..loop : for (int; expression_1; expression_2) (statement)