buku c++ dewayu

28
BAB II IKHTISAR PEMROGRAMAN 2.1 Tujuan Berikut adalah tujuan dari pembahasan bab ini, yaitu : 1. Menjelaskan konsep pemrograman lebih spesifik 2. Memberikan pengenalan bahasa pemrograman C/C+ + 3. Mengetahui proses-proses saat menjalankan program 2.2 Apa itu Pemrograman? Pemrograman adalah rangkaian kegiatan atau perintah untuk dieksekusi oleh komputer. Program merupakan kumpulan instruksi yang akan dijalankan oleh pemroses , yaitu berupa software . Program berisi konstruksi logika yang dibuat oleh manusia , dan sudah diterjemahkan ke dalam bahasa mesin sesuai dengan format yang ada pada perintah instruksi. Bahasa pemrograman atau sering diistilahkan juga dengan bahasa komputer merupakan teknik komando /instruksi str untuk memerintah komputer . Bahasa pemrograman ini merupakan suatu set aturan sintaks dan semantik yang dipakai untuk mendefinisikan program komputer . Bahasa ini memungkinkan seorang programmer dapat menentukan secara persis data mana yang akan diolah oleh komputer, bagaimana data ini akan disimpan/diteruskan, dan jenis langkah apa secara persis yang akan diambil dalam berbagai situasi. Sebuah bahasa pemrograman memungkinkan programmer untuk menentukan secara tepat apa yang harus dilakukan oleh komputer, cara mengatur transfer data, input-output, dan kegiatan-kegiatan yang harus dilakukan dalam berbagai keadaan. Bahasa pemrograman adalah bahasa yang dapat diterjemahkan menjadi kumpulan perintah-perintah. Penerjemahan dilakukan oleh program komputer yang disebut kompilator (compiler). Setiap bahasa pemrograman mempunyai kompilatornya sendiri. Contohnya, kompilator C++ tidak akan mengerti

Upload: dewaayu-indah-cahya-dewi

Post on 02-Aug-2015

14 views

Category:

Documents


2 download

TRANSCRIPT

Page 1: Buku c++ Dewayu

BAB II IKHTISAR PEMROGRAMAN

2.1 Tujuan Berikut adalah tujuan dari pembahasan bab ini, yaitu :1. Menjelaskan konsep pemrograman lebih spesifik2. Memberikan pengenalan bahasa pemrograman C/C++3. Mengetahui proses-proses saat menjalankan program

2.2 Apa itu Pemrograman?Pemrograman adalah rangkaian kegiatan atau perintah untuk dieksekusi oleh

komputer. Program merupakan kumpulan instruksi yang akan dijalankan oleh pemroses, yaitu berupa  software. Program berisi konstruksi logika yang dibuat oleh manusia, dan sudah diterjemahkan ke dalam bahasa mesin sesuai dengan format yang ada pada perintah instruksi.

Bahasa pemrograman atau sering diistilahkan juga dengan bahasa komputer merupakan teknik komando /instruksi str untuk memerintah komputer. Bahasa pemrograman ini merupakan suatu set aturan sintaks dan semantik yang dipakai untuk mendefinisikan program komputer. Bahasa ini memungkinkan seorang programmer dapat menentukan secara persis data mana yang akan diolah oleh komputer, bagaimana data ini akan disimpan/diteruskan, dan jenis langkah apa secara persis yang akan diambil dalam berbagai situasi. Sebuah bahasa pemrograman memungkinkan programmer untuk menentukan secara tepat apa yang harus dilakukan oleh komputer, cara mengatur transfer data, input-output, dan kegiatan-kegiatan yang harus dilakukan dalam berbagai keadaan. Bahasa pemrograman adalah bahasa yang dapat diterjemahkan menjadi kumpulan perintah-perintah. Penerjemahan dilakukan oleh program komputer yang disebut kompilator (compiler).

Setiap bahasa pemrograman mempunyai kompilatornya sendiri. Contohnya, kompilator C++ tidak akan mengerti program yang ditulis dengan bahasa Java. Sintaks dari bahasa pemrograman lebih mudah dipahami oleh manusia daripada sintaks perintah dasar. Namun tentu saja komputer hanya dapat melaksanakan perintah dasar itu. Maka di sinilah peran penting kompilator sebagai perantara antara bahasa pemrograman dengan perintah dasar.

Tugas pemrograman sebagaian besar untuk mengambil informasi dari format tertentu dan kemudian memprosesnya dengan cara tertentu yang mengubah menjadi sesuatu yang berbeda.  Informasi tersebut dapat disimpan, dicetak, atau dimanipulasi, tergantung pada tujuan dari program komputer. Bahasa pemrograman dapat diklasifikasikan menjadi tingkat rendah, menengah, dan tingkat tinggi. 1. Bahasa Pemrograman Tingkat Tinggi

Merupakan bahasa tingkat tinggi yang mempunyai ciri-ciri mudah dimengerti karena kedekatannya terhadap bahasa sehari – hari. Sebuah pernyataan program diterjemahkan kepada sebuah atau beberapa mesin dengan menggunakan compiler.Sebagai contoh adalah : JAVA, C++

2. Bahasa Pemrograman Tingkat RendahBahasa pemrograman generasi pertama. Bahasa jenis ini sangat sulit

Page 2: Buku c++ Dewayu

dimengerti karena instruksinya menggunakan bahasa mesin. Disebut juga dengan bahasa assembly merupakan bahasa dengan pemetaan satu – persatu terhadap instruksi komputer. Setiap instruksi assembly diterjemahkan dengan menggunakan assembler.

3. Bahasa Pemrograman Tingkat MenengahDimana penggunaan instruksi telah mendekati bahasa sehari – hari, walaupun masih cukup sulit untuk dimengerti karena menggunakan singkatan – singkatan seperti STO yang berarti simpan (STORE) dan MOV yang artinya pindah (MOVE). Yang tergolong dalam bahasa ini adalah Fortran.

Beberapa tim pemrograman telah bertahun-tahun menciptakan sebuah pengolah kata yang dapat saling berinteraksi menjadi serangkaian solusi, sebelum proses pembuatan program. Berikut adalah instruksi sebelum pembuatan flowchart dan representasi dari instruksi tersebut:a. Algoritma

Algoritma adalah prosedur untuk menentukan urutan pernyataan yang mana yang akan dieksekusi. Algoritma adalah urutan langkah – langkah logis penyelesaian masalah yang disusun secara sistematis dan logis. Logis merupakan kunci dari sebuah algoritma. Langkah – langkah dalam algoritma harus logis dan bernilai benar atau salah. Algoritma dapat diekpresikan dalam bahasa manusia, menggunakan presentasi grafik melalui sebuah flowchart (diagram alir) ataupun melalui pseudocode yang menjembatani antara bahasa manusia dengan bahasa pemrograman. Contoh algoritmanya adalah : Algoritma mencari jumlah 3 bilangan bulatLangkah pertama : Input bilangan ke-1Langkah kedua : Input bilangan ke-2Langkah ketiga : Input bilangan ke-3Langkah keempat : Jumlahkan bilangan ke-1, bilangan ke-2 dan bilangan ke-3Langkah terakhir : Cetak output hasil penjumlahan

b. PseudocodeMerupakan bahasa semu yang digunakan untuk mengembangkan algoritma. Pseudocode mirip bahasa komunikasi manusia sehari-hari dan tidak dieksekusi komputer. Contoh pseudocode :Deklarasi

a, b, c , jumlah : integerDeskripsi

read (a,b,c)jumlah ← (a+b+c)write (jumlah)

Page 3: Buku c++ Dewayu

c. Flowchart

Start

Input a, b, c

Jumlah ←( a+b+c)

Print jumlah

End

Gambar 2.1 Flowchart

Bentuk program dalam C++ :

//*-------------------------------------------*//*contoh program menghitung jumlah 3 bilangan*//*-------------------------------------------*

#include<iostream.h>#include<conio.h>

main (){int a,b,c, jumlah ;cout<<"bilangan 1 : "; cin >> a;cout<<"bilangan 2 : "; cin >> b;cout<<"bilangan 3 : "; cin >> c;jumlah = (a+b+c);cout<<"jumlah 3 bilangan = " <<jumlah;getch ();return 0;

}

Kode program 2.1 Menghitung jumlah 3 bilangan dalam C++

Page 4: Buku c++ Dewayu

Bentuk program dalam C :

//*-------------------------------------------*//*contoh program menghitung jumlah 3 bilangan*//*-------------------------------------------*

#include<stdio.h>#include<conio.h>

main (){

int a,b,c, jumlah ;printf ("bilangan 1 : "); scanf ("%d",&a);printf ("bilangan 2 : "); scanf ("%d",&b);printf ("bilangan 3 : "); scanf ("%d",&c);jumlah = (a+b+c);printf ("jumlah 3 bilangan = %d\n", jumlah);getch ();return 0;

}

Kode program 2.2 Menghitung jumlah 3 bilangan dalam C

2.2.1 Pemrograman, Pengujian dan DebuggingParadigma pemrograman C++ adalah pemrograman berorientasi obyek

merupakan pemrograman berdasarkan prinsip obyek, dimana obyek memiliki data/variabel/ property dan method/event/ prosedur yang dapat dimanipulasi. C++ hanyalah bahasa yang bersifat hybrid, bukan bahasa murni yang berorientasi obyek, sehingga pemrogram C pada tahap awal dapat berpindah jalur ke C++ tahap demi tahap. Pustaka-pustaka yang dibangun dengan C tetap dapat dipakai pada C++, dibaurkan dengan PBO. Ide dasar dari bahasa berorientasi obyek (PBO) adalah mengkombinasikan data dan fungsi untuk mengakses data menjadi sebuah kesatuan unit. Unit ini dikenal dengan nama obyek.

Debug merupakan program yang digunakan untuk pelacakan sistem komputer. Debug menggunakan bahasa mesin (assembler) untuk pemrogramannya.

Namun, lebih efisien untuk menggunakan debugger. Ini adalah program kecil yang memperlihatkan program dijalankan dan memungkinkan melihat ke dalam untuk melihat apa yang sedang terjadi. Dengan cara ini dapat menonton sebagai perubahan nilai-nilai dan mendeteksi kesalahan dalam cara yang sama seperti dapat dengan eksekusi tangan, kecuali bahwa hanya terlibat sebagai pengamat. 

Kebanyakan IDE datang dengan debugger, dan ada debugger tersedia untuk sebagian besar kompiler yang bukan bagian dari sebuah IDE. Namun, untuk pemrograman sederhana, dan bagi mereka yang tidak ingin kusut dengan debugger sekarang, aku punya banyak trik untuk mengajarkan bahwa dapat digunakan untuk membantu mendeteksi dan memperbaiki kesalahan tanpa menggunakan debugger. 

Page 5: Buku c++ Dewayu

2.3 Pemrograman ProseduralAda berbagai jenis bahasa pemrograman, dengan menggunakan pendekatan

yang berbeda untuk membuat perangkat lunak. Pemrograman prosedural berdasarkan urutan-urutan, sekuensial. Program adalah suatu rangkaian prosedur untuk memanipulasi data. Prosedur merupakan kumpulan instruksi yang dikerjakan secara berurutan. Hal –hal yang perlu diperhatikan adalah mengingat prosedur mana yang sudah dipanggil dan apa yang sudah diubah. Buku ini mendekati bahasa C sebagai bahasa prosedural memiliki urutan eksekusi yang spesifik, dan gangguan diperbolehkan hanya jika programmer menunjukkan bahwa gangguan tersebut merupakan bagian dari urutan instruksi. gangguan tersebut dapat menjadi jeda bagi pengguna untuk memasukkan beberapa data

Pada pemrograman procedural, program dibedakan antara bagian data dengan bagian instruksi. Bagian instruksi terdiri atas runtutan (sequence) instruksi yang dilaksanakan satu per satu secara berurutan oleh pemroses. Alur pelaksanaan instruksi dapat berubah karena adanya pencabangan kondisional. Data yang disimpan di dalam memori dimanipulasi oleh instrusi secara beruntun atau procedural. Paradigma pemrograman seperti ini dinamakan pemrograman procedural.

Program C maupun C++ selalu tersusun dari 4(empat) bagian utama, yaitu : 1. Bagian komentar yang diti dengan symbol // dan pasangan /* … */

Program yang baik pada umumnya diberi komentar yang akan membantu orang lain maupun pembuat program itu untuk memahami program yang dibuat. Dalam C atau C++ setiap tulisan yang diapit oleh symbol /* … */ atau setiap baris yang dimulai dengan symbol // dianggap komentar. C++ tidak mengizinkan komentar bersarang ( nested comment), namun Borland C++ lebih fleksibel dalam hal ini. Pada Borland C++ dapat menggunakan komentar bersarang asalkan opsi cek Nested comments pada menu Options/Compiler/Sourcedipilih. Contoh program C yang menggunakan komentar :

#include<stdio.h>#include<conio.h>

void main (){

int x; //* variabel penyimpan data bil bulat*float y; //* variabel penyimpan data bil pecahan*char z; //* variabel penyimpan data sebuahkarakter*double w; //* berfungsi sama dengan float, memorinya

2x lebih besar dari float*clrscr (); //* untuk membersihkan layar*

x = 10; //* variabel x diisi dengan 10* y = 9.45; //* variabel y diisi dengan 9.45* z = 'C'; //* variabel z diisi dengan "C"* w = 3.45E+20; //* variabel W diisi dengan 3.45E+20* printf ("nilai dari x adalah : %i\n",x); printf ("nilai dari y adalah : %f\n",y); printf ("nilai dari z adalah : %c\n",z); printf ("nilai dari w adalah : %lf\n",w); getch ();}

Kode program 2.3 Program C dengan komentar

Page 6: Buku c++ Dewayu

2. Bagian pengarah compiler yang diti dengan symbol # Merupakan statement praprosesor, disebut juga pengarah compiler karena berfungsi mengatur proses kompilasi. Iostream.h merupakan file program yang mengandung deklarasi kelas- kelas yang diperlukan oleh objek out. File-file dengan ekstensi.h yang berisi deklarasi fungsi-fungsi str C ini, disebut secara umum sebagai file header.Contoh program C++ :

#include <iostream.h> //* praprosesor#include <conio.h>

void main(){ clrscr(); cout<<"ukuran char : "<<sizeof(char)<<'\n'; cout<<"ukuran short : "<<sizeof(short)<<'\n'; cout<<"ukuran int : "<<sizeof(int)<<'\n'; cout<<"ukuran long : "<<sizeof(long)<<'\n'; cout<<"ukuran float : "<<sizeof(float)<<'\n'; cout<<"ukuran double : "<<sizeof(double)<<'\n'; cout<<"ukuran long double : "<<sizeof(long double)<<'\n'; getch();}

Kode program 2.4 Program C++ dengan praprosesor iostream.h dan conio,h

Beberapa pengarah compiler adalah : 1) # define

Untuk mendefinisikan suatu pengenal / konstanta yang nantinya akan digantikan oleh praprosesor saat program dikompilasi. Contoh Program C ++ :

//*program menghitung volume dan luas tabung dengan define*

#include <iostream.h> //*iostream berisi deklarasi untuk cout*#include <conio.h> //*conio berisi deklarasi untuk clrscr

dan getch#define phi 3.14

void main(){ float jari_jari, tinggi, volume, luas; jari_jari=5.0; tinggi=7; volume=phi*jari_jari*jari_jari*tinggi; luas=2*phi*jari_jari*tinggi; cout <<"volume tabung ="<< volume<<endl; cout <<"luas tabung ="<< luas<<endl; getch();}

Kode program 2.5 Program C++ dengan define phi

2) # includeBerfungsi membaca file program tertentu dan mengikutsertakan file tersebut dalam proses kompilasi. Nama file yang dimaksud harus diapit

Page 7: Buku c++ Dewayu

symbol ‘ < ‘ dan ‘ > ‘ atau t kutip dua ( “ … “ ). 3) # if, # else, # elif, # endif

Digunakan untuk memilih bagian program yang akan dikompilasi. Kompilasi cari ini disebut kompilasi bersyarat dan program yang baik biasanya memanfaatkan teknik ini.

4) # ifdef, # ifnde Digunakan juga dalam kompilasi bersyarat. # Ifdef dapat dibaca : ‘jika didefinisikan’ dan # ifndef dapat dibaca : ‘jika tidak didefinisikan’. Pengarah compiler ini sering digunakan untuk meni bahwa suatu file sudah diikutsertakan dalam kompilasi .

3. Bagian deklarasi dan bagian definisi Semua program C pada dasarnya tersusun dari rangkaian pemanggilan fungsi yang bekerja atas sekelompok data. Selain pemanggilan fungsi, program C mengandung komponen lain yang disebut statement. Statement C ada dua, yaitu : statement yang tidak dapat dieksekusi / non executable ( bila dikompilasi tidak menghasilkan kode objek dan biasanya digunakan untuk mengatur alur program), dan statement yang dapat dieksekusi / executable (bila dikompilasi akan menghasilkan kode objek). Setiap pemanggilan fungsi maupun statement executable dalam C harus diakhiri dengan t titik koma ( ; ).

2.3.1 Pembuatan Keputusan Khusus jenis kontrol program aliran memungkinkan programmer untuk

melaksanakan langkah-langkah proses berdasarkan hasil tes kondisi. Dalam banyak cara yang sama bahwa loop tak terhitung dapat dihentikan bila kondisi tertentu terpenuhi, juga dapat mendefinisikan sebuah set langkah sebagai dieksekusi hanya jika kondisi terpenuhi. 

Hal ini mungkin terdengar sedikit berlebihan, tetapi merupakan bagian mendasar dari pemrograman. Tanpa kemampuan untuk selektif melaksanakan bagian dari program, tugas pro grammer adalah dibuat sangat sulit, karena harus mencoba dan merencanakan program sedemikian rupa sehingga sepenuhnya diprediksi. 

Siapapun yang telah bekerja dengan makanan atau komputer tahu bahwa ini adalah hampir mustahil. Pada kenyataannya, sebagian besar hal-hal yang kita lakukan dalam hidup adalah penjumlahan banyak keputusan kecil. Dalam penulisan buku ini, saya membuat banyak keputusan, beberapa baik, mungkin beberapa tidak begitu baik. 

Editor juga membuat keputusan yang lebih, beberapa baik, beberapa yang dipertanyakan oleh penulis, resensi teknis, atau pembaca. Hasilnya adalah sebuah buku yang lebih baik. Hasil mampu membuat keputusan saat memasak yang merupakan reaksi terhadap apa yang sedang terjadi di dapur akan membuat makanan yang lebih baik. 

Sebelum benar-benar dapat membuat keputusan, namun perlu beberapa cara untuk menyimpan hasil dari apa yang telah lakukan sehingga dapat mengujinya menentang hal-hal yang tahu sebelumnya dan dapat menguji.  harus mampu mempertahankan konteks segala sesuatu yang telah pergi pada yang tidak dapat kontrol untuk membandingkannya dengan apa yang bisa. 2.3.2 Penyimpanan Data 

Page 8: Buku c++ Dewayu

Sebuah bagian penting dari setiap program adalah kemampuan untuk menyimpan informasi transiently atau secara permanen. Artinya, informasi dapat diselenggarakan selama masa program atau hanya untuk jangka waktu yang diperlukan. 

Merujuk kembali Bab I, dimana kami melihat komputer dalam hal pengolahan daya dan penyimpanan. Informasi yang butuhkan untuk proses selama siklus hidup program disimpan di memori. 

Apa pun yang mungkin perlu sekali program tersebut telah selesai perlu dimasukkan tempat lain-biasanya pada hard drive komputer. 

Dalam sebuah program, dapat mengalokasikan area memori komputer untuk menyimpan informasi yang butuhkan. Mungkin membantu untuk berpikir memori komputer sebagai hamparan besar pigeonholes, atau slot di kantor pos penyortiran.Masing-masing memiliki nama, sehingga dapat merujuk ke sana, dan dapat menaruh informasi dan mengambil informasi keluar-seperti menulis pada potongan kertas. 

Slot ini juga kode warna, memberikan petunjuk untuk apa sifat dari informasi yang mungkin: 

1. Bilangan2. Kata 3. Karakter 4. Sesuatu yang ditetapkan pengguna 5. Dan seterusnya 

Salah satu batasan yang memakai bahasa pemrograman programmer adalah bahwa hanya jenis informasi yang sama dapat diletakkan dalam slot sebagai pencocokan skema warna. Dengan kata lain, tidak dapat menempatkan string pada slot yang dirancang untuk nomor; jenisnya tidak cocok. 

Dalam istilah pemrograman, slot kode warna yang disebut variabel, dan kode warna ini dikenal sebagai tipe.  C adalah bahasa yang strongly typed, sehingga setiap variabel jenis tertentu hanya bisa menyimpan data dari tipe itu. Karena akan lihat nanti, ada beberapa trik yang dapat digunakan untuk menentukan jenis sendiri juga untuk menyimpan informasi yang kompleks. 

Variabel juga memberikan petunjuk mengenai sifat data. Apakah variabel berlangsung selama masa program atau hanya ketika sedang digunakan, maka dirancang untuk mengandung nilai yang dapat diubah. Ini berbeda dari sesuatu yang dikenal sebagai konstanta, yang nilainya tidak dapat berubah. 

Variabel adalah bentuk penyimpanan sementara-sekali program berhenti berjalan, informasi yang terkandung dalam variabel akan hilang kecuali jika menyimpannya secara permanen di tempat lain.  juga dapat menyimpan informasi secara permanen pada hard drive komputer (atau CD-ROM atau media dapat ditulis lain). 

Mengetahui bagaimana untuk menyimpan data secara permanen diperlukan untuk setiap program yang perlu data impor atau toko. Coba bayangkan sebuah program tanpa kemungkinan untuk merujuk ke keadaan sebelumnya, dan itu menjadi jelas bahwa proyek pemrograman paling akan membutuhkan penyimpanan eksternal. Semua aplikasi yang klasik (word processor, spreadsheet, editor HTML, dan sebagainya) perlu fasilitas untuk menulis data ke suatu tempat secara permanen.

Page 9: Buku c++ Dewayu

Biasanya, penyimpanan eksternal disediakan oleh bahasa komputer, dan semua C ANSI-compliant lingkungan pemrograman menyediakan beberapa fungsi untuk melakukan hal ini. Mereka adalah, bagaimanapun, bukan bagian dari bahasa itu sendiri, seperti dalam bahasa lain seperti BASIC. 

Jadi dalam pemrograman C, dapat menyimpan variabel native menggunakan fasilitas yang ditawarkan oleh bahasa, tetapi karena penyimpanan eksternal adalah fasilitas yang bervariasi dari sistem ke sistem (platform ke platform), perlu untuk memanggil sistem operasi. Oleh karena itu, built-in mendukung tidak diberikan, tetapi sebaliknya, ANSI implementasi menyediakan perpustakaan untuk berinteraksi dengan sistem. 

Salah satu perpustakaan menangani file, dan aku akan mencakup perpustakaan lain pada waktunya. Yang penting untuk mengambil sekarang adalah bahwa penyimpanan eksternal memerlukan dukungan eksternal karena dapat berubah dari platform ke platform.

2.3.2.1 Model Memori Borland C++, mempunyai enam model memori untuk program dan data.

Model-model memori tersebut adalah :a. Model Tinyb. Model Smallc. Model Mediumd. Model Compacte. Model Largef. Model huge

2.3.3 Bagian dari suatu Bahasa Kemampuan untuk mendeklarasikan variabel merupakan bagian dari

fasilitas yang ditawarkan oleh bahasa, seperti yang menetapkan jenis spesifik untuk masing-masing.Deklarasi variabel biasanya pernyataan dalam bahasa yang terdiri dari jenis ditambah nama variabel.  mengatakan bahwa telah mendeklarasikan variabel dari jenis yang diberikan, dan dari saat itu, bahwa variabel hanya dapat berisi data dari tipe yang diberikan. 

Sebuah nama variabel biasanya mengikuti konvensi tertentu.  Misalnya, tidak dapat terdiri hanya angka karena itu mungkin bingung dengan konstan nilai numerik.  Demikian pula, tidak dapat berisi spasi karena akan membuatnya dua kata individu, yang dapat disalahartikan.  Pemrograman adalah latihan yang tepat. 

Kendala lain pada penamaan variabel adalah bahwa mereka dapat tidak bertentangan dengan bagian lain dari bahasa seperti kata kunci. Nama variabel tidak bisa sama dengan kata kunci karena itu juga bisa disalahartikan. Kata kunci menawarkan fungsionalitas built-in untuk mendukung tipe data dan kontrol aliran. 

Jenis data, variabel, dan kata kunci adalah bagian dari setiap bahasa pemrograman, termasuk C. Mereka adalah blok bangunan yang digunakan untuk membangun solusi untuk masalah pemrograman, termasuk satu set fungsi pekerja str, atau perpustakaan. 

Ada beberapa str, ANSI menjadi salah satu dari mereka. ANSI perpustakaan yang disediakan dengan kebanyakan menangani implementasi C

Page 10: Buku c++ Dewayu

dengan fungsi matematika, cara str untuk memungkinkan pengguna untuk berinteraksi dengan sistem, serta perpustakaan khusus untuk memungkinkan pemrograman dengan grafis, suara, dan ekstensi perangkat keras lainnya. 

Semuanya dimulai dengan pemahaman blok bangunan, atau bagian dari bahasa.Mereka juga memungkinkan pengguna untuk menentukan ekstensi mereka sendiri untuk bahasa. Jika ada bagian dari perangkat keras datang yang perlu dihubungkan dengan, maka dapat melayani. Yang meliputi fungsi, tipe data, dan data pengguna yang ditetapkan diperlukan untuk mewakili antarmuka untuk bahasa pemrograman. 

Selama ekstensi ini ditetapkan pengguna tidak bertentangan dengan pelaksanaan bahasa, apapun dapat digunakan. solusi yang ditentukan pengguna tidak bisa, karena itu, mengganti kata dicadangkan atau kata kunci, tetapi mereka dapat memperluas fungsi tersebut.

Penamaan perluasan ini adalah latihan yang hati-hati.  harus menghormati kata kunci dan kata dicadangkan lain dalam bahasa, atau kompiler akan menjadi bingung.Sebuah efek samping adalah bahwa tidak dapat mencoba untuk mengganti kata-kata ini dilindungi dengan fungsi sendiri, tetapi implementasi sendiri dapat memperpanjang bahasa dengan menawarkan alternatif. 

Satu sisi lain dari bahasa pemrograman adalah operator-mereka digunakan untuk menggabungkan kata kunci, tipe data, variabel, fungsi, dan bagian lain dari gauge ¬ lan dengan cara yang memungkinkan programmer untuk melakukan berbagai perbandingan dan assignations. Mayoritas operator C adalah numerik berbasis. 

Operator memiliki paralel di dunia nyata. Sederhana sehari-hari tugas seperti membuat Pastikan memiliki cukup uang di dompet untuk membayar belanjaan melibatkan manipulasi operator, bahkan jika tidak tahu itu. 

Untuk memulai, perlu total atas biaya yang diharapkan berdasarkan perjalanan sebelumnya belanja . Menambahkan ini bersama-sama menggunakan operator tambahan, total yang diubah dengan menambahkan harga item untuk itu. Maka perlu memeriksa bahwa total kurang dari uang yang saat ini miliki; kurang dari perbandingan adalah contoh dari operator lain. 

Dengan kata lain, operator yang disediakan oleh bahasa menyediakan cara untuk membandingkan nilai numerik, tambahkan mereka, melipatgkan mereka, membagi dan mengurangi mereka, serta menetapkan mereka untuk variabel.Pemahaman yang sederhana dan logika matematika dapat membantu dalam hal ini, seperti yang akan lihat. 

Untuk saat ini, semua yang perlu diperhatikan adalah bahwa operator ada.Operator dapat digunakan untuk memodifikasi variabel, dan nilai yang digunakan untuk memodifikasi mereka tidak dapat dari tipe data yang berbeda. Sehingga tidak dapat menambahkan string ke nomor, atau desimal ke integer, atau fungsi ke alamat memori.  2.4 Kompilasi dan Linking (Menghubungkan) 

Seorang pemrogram mengerti kode C/C++ sedangkan sebuah komputer, dibantu oleh sistem operasi (DOS, Linux, Windows, dan sebagainya), memahami kode mesin. Kita perlu cara untuk mendapatkan dari satu ke yang lain, dan ada dua cara dasar untuk mencapai hal ini. 

Yang pertama adalah dengan menggunakan penerjemah. Seperti

Page 11: Buku c++ Dewayu

menerjemahkan dari satu bahasa ke bahasa lain, sebuah menerjemahkan juru bahasa komputer yang ditulis oleh seseorang ke dalam tindakan bahwa komputer mengerti. Namun, sangat tidak praktis atau efisien. Jadi kita menggunakan compiler untuk memvalidasi kode bahwa programmer telah menulis dan kemudian mengubahnya menjadi langkah-demi-langkah proses. Mesin bekerja dengan cara langkah-demi-langkah, pada tingkat tertinggi granularity. Dengan kata lain, mesin dapat bekerja hanya dengan pernyataan sangat sederhana, tapi programmer lebih suka bekerja dengan pernyataan yang kompleks yang dapat mencapai lebih banyak dalam pernyataan tunggal. 

Hal ini membuat pemrograman lebih efisien. Jika harus menulis program yang dimengerti oleh komputer, harus melakukan pekerjaan kompilator, sesuatu yang programmer awal harus dilakukan. Ini hanya langkah pertama dalam proses. Langkah kedua, menghubungkan, mengambil semua fragmen kecil kode dan menempatkan mereka semua bersama-sama sedemikian rupa sehingga set lengkap instruksi dapat diikuti dari awal sampai akhir. Program AC akan terdiri dari banyak berbeda, file sumber terpisah, dan menyusun mereka menghasilkan banyak berbeda, file kode objek terpisah. 

Linker dan perpustakaan bersama-sama akan membuat ini menjadi satu set lengkap, berdekatan instruksi, semua yang diberikan oleh programmer. Namun, bagaimanapun, ada sesuatu yang hilang-ingat bahwa perpustakaan eksternal yang disediakan oleh pihak ketiga yang berinteraksi dengan perangkat keras, sistem operasi, pengguna, dan sebagainya. Terserah oleh linker untuk juga menempatkan perpustakaan ini dikompilasi bersama-sama dengan seluruh kode untuk membuat aplikasi. 

Baik kompilasi dan linking diperlukan sebelum program dapat dilaksanakan, dan keluaran dari proses menghubungkan adalah sebuah aplikasi, atau dieksekusi. Ada juga beberapa operasi yang perlu diterapkan pada executable yang membuatnya berjalan efektif pada platform tertentu. 

Meskipun output dari compiler tidak mungkin berbeda dari platform ke platform, dieksekusi tentu akan berbeda, tergantung pada platform. Objek kode, yang di-antara langkah dari sumber ke executable sebagai output dari compiler, mungkin sama pada semua platform. Dieksekusi itu sendiri, bagaimanapun, akan berbeda-berbeda, sebagai platform yang berbeda membutuhkan dukungan yang berbeda. 

Perlu mengambil tampilan di format dieksekusi hanya untuk melengkapi lingkaran dan pastikan bahwa sepenuhnya memahami apa yang mendapatkan diri ke dalam.  Agar suatu program dalam bahasa pemrograman dapat dimengerti oleh komputer,program haruslah diterjemahkan dahulu ke dalam kode mesin. Adapun penerjemah yang digunakan bisa berupa interpreter atau kompiler. Interpreter adalah suatu jenis penerjemah yang menerjemahkan baris per baris intsruksi untuk setiap saat. Keuntungan pemakaian interpreter, penyusunan program relatif lebih cepat dan bisa langsung diuji sekalipun masih ada beberapa kesalahan secara kaidahdalam program. Sedangkan kelemahannya, kecepatannya menjadi lambat sebab sebelumsuatu instruksi dijalankan selalu harus diterjemahkan terlebih dahulu. Selain itu, saat program dieksekusi, interpreter juga harus berada dalam memori. Program C++ dapat ditulis menggunakan sembarang editor teks seperti notepad ataupun menggunakan editor bawaan dari kompiler. Sebuah program C dan C++ dapat dilihat seperti dibawah ini :

Page 12: Buku c++ Dewayu

Gambar 2.2 Contoh program C dan C++ berekstensi .CPP

Program C/C++ biasa ditulis dengan nama ekstensi .CPP. Agar program ini bisa dijalankan, maka harus dikompilasi terlebih dulu dengan menggunakan kompiler C++.

Pada saat pengkompilasian, program sumber (.CPP) bersama file-file header (berekstensi .H atau .HPP) akan diterjemahkan oleh kompiler C++ menjadi kode obyek (.OBJ). Berikut adalah gambar saat kompilasi dengan menekan Alt+F9 atau memilih project pada menu editor , lalu klik compile.

Gambar 2.3 Kompilasi program

File obyek ini berupa file dalam format biner (berkode 0 dan 1). Selanjutnya file obyek ini bersama-sama dengan file obyek lain yaitu : (.ILC), (.ILD), (.ILF), (.ILS) dan (.TDS) serta file pustaka (.LIB) dikaitkan menjadi satu oleh linker. Hasilnya berupa file yang bersifat executable. File inilah yang bisa dijalankan dari sistem operasi secara langsung. Berikut adalah gambar saat membuat file yang bersifat executable, dengan menekan F9 atau memilih menu project pada tampilan editor, lalu klik make all.

Page 13: Buku c++ Dewayu

Gambar 2.4 Membuat executable file

Berikut adalah skema proses kompilasi dan linking :

Gambar 2.5 Proses kompilasi dan linking

2.5 Format File Eksekusi Sebuah file eksekusi adalah hasil akhir dari kerja keras programmer ini.File

eksekusi adalah hasil proses link. File ini bernama sama dengan file-file sebelumnya dan dapat dijalankan dari prompt DOS. Ekstensi file eksekusi adalah .exe.

Executable Statements adalah perintah-perintah (statements) yang digunakan untuk mengkodekan algoritma, yang nantinya akan ditranslasi oleh compiler C menjadi perintah-perintah dalam bahasa mesin yang bisa dijalankan oleh komputer (executable).Apakah itu bertindak sebagai programmer yang dimaksud adalah material, compiler dan linker akan melakukan yang terbaik untuk membangun aplikasi dari

Page 14: Buku c++ Dewayu

kode sumber dan perpustakaan yang disediakan oleh programmer. Ini file eksekusi bernilai mengetahui dalam sedikit lebih rinci. Masing-

masing berisi tiga bidang penting: startup (atau bootstrap) kode, program dan data segmen, dan pembersihan (atau shutdown) kode. Tempat tinggal aplikasi disebut segmen, yang hanya lokasi di penyimpanan internal komputer, atau memori. 

Namun, sebagian besar bahwa penyimpanan tetap akan di segmen data. Sebuah hasil menghasilkan kode dan lingkungan dari source code, segmen data berisi reserved ruang untuk semua data yang diperlukan oleh program untuk melakukan tugas yang sudah ditetapkan. 

2.6 Eksternal File (File Header) 

Bagian akhir dari puzzle pemrograman melibatkan file eksternal (atau pustaka) yang memungkinkan untuk aplikasi interface dengan sistem. Beberapa bahasa pemrograman (yang paling terkenal C , C + + , dan Objective-C menggunakan file-file header. File-file ini memungkinkan programmer untuk memisahkan unsur-unsur tertentu dari sebuah program source code menjadi file yang dapat digunakan kembali. Header file biasanya berisi forward declaration dari kelas , subrutin , variabel , dan lainnya pengidentifikasi. File header yaitu file yang berisi deklarasi fungsi dan definisi konstanta. Beberapa file judul sudah disediakan di C. File-file ini mempunyai ciri bereksistensi .h. file-file header ini biasanya dipanggil menggunakan fungsi include. Fungsi include sendiri merupakan salah satu jenis pengarah praprosesor yang dipakai untuk membaca file-file header itu sendiri. Contoh format file header :

#include <iostream.h>#include <conio.h>

Struktur program C++

[Preprocessor Directive][Deklarasi Global][Function Prototipe]

[ int|void] main ([args]) {<statement>;

}[Function Definition]

Kode program 2.6 Struktur program C++

Beberapa aturan dasar dalam pembuatan program C++ :1. penamaan file mengikuti kaidah penamaan DOS (8 karakter nama + 3

karakter untuk extention).2. keyword (kata tercadang) harus ditulis dalam huruf kecil.3. penulisan program (penamaan fungsi, penamaan variabel, penamaan

konstanta, dll) bersifat case sensitive.4. setiap pernyataan / statement / ekspresi dalamprogram harus diakhiri

dengan t titik koma (;).

Page 15: Buku c++ Dewayu

2.7 Program Pada C++Kode Program 2.1 menunjukkan uraian tentang bagian-bagian dari Program

C++ sederhana. Ini adalah bagian umum dari format yang dicontohkan pada awal buku ini yang digunakan dalam merancang program dengan bahasa C++.

#include <iostream> // HeaderMain() // Penamaan fungsi{ // Begin

….. // Listing program disini…..…..

} // End

Kode Program 2.7 Rangka program sederhana C++

Untuk memperkenalkan diri dengan program C++ secepat mungkin, harus mulai untuk melihat program ini keseluruhan. Selanjutnya adalah contoh baris program sederhana. Program ini memang tidak melakukan benyak hal, namun point yang diambil adalah bagaimana format umum dari program C tersebut. Program ini memperlihatkan bagian-bagian yang mungkin belum mengerti, kecuali setelah mempelajari bab ini. Namun ini adalah contoh yang bagus untuk memulainya.

#include <iostream.h>main(){

int i, j; //*Pendeklarasian Variabel*char c;float x;

i = 4; j = i + 7;c = ‘A’; x = 9.087;

x = x * 4.5;

// Mencetak hasil pada layarcout << i << “, “ << j << “, “ << c << “, “ << x << “\n”;

return 0; // mengembalikan nilai fungsi

Kode Program 2.8 Contoh Program C++

Sekarang, familiar kan diri dengan contoh program ini. Lihat jika dapat mengerti sebagian atau semua dari program tersebut. Jika baru dalam programming, harus tahu jika computer membaca per baris listing program diatas. Dimulai dari baris paling atas turun hingga baris paling bawah.

2.8 Format Pemrograman C++Tidak sama dengan bahasa pemrograman lain, seperti COBOL, C++ adalah

Page 16: Buku c++ Dewayu

bentuk bahasa pemrograman yang bebas, artinya statemen pada program dapat dimulai dari baris atau kolom mana saja. dapat menyisipkan baris kosong pada program jika mau. Listing di bawah mi adalah suatu programdengan C++ yang sangat sederhana. Bagian bagian dari program ini akan dijelaskan kemudian.

Dari program di atas yang perlu dijelaskan adalah:Komentar dibaca mulai t // sampai akhir dari baris. Jika komentar lebih

darisatu baris, tiap baris dapat dimulai dengan // , atau memakai fasilitas komentar dari bahasa C yaitu komentar dimulai dengan /* ckn diakhiri dengan */.

Program dengan C++ selalu dimulai dengan main() { dan diakhiri dengan }. Semua yang ada diantara kurung { dan kurung ) berada dalam satu blok. Pada program di atas hanya ada satu blok karena hanya ada satu pasang kurung { dan kurung }. main() adalah fungsi yang pertama kali dieksekusi.

C++ adalab case sensitive, artinya huruf kecil dan huruf besar tidak ekivalen, perjanjian yang umum dipakai adalah instruksi dan variabel ditulis dengan huruf kecil, sedang konstanta dan instruksi makro ditulis dengan huruf besar.

#include adalah preprocessor directives, semua preprocessor directive mulai dengan #. Preprocessor directive bukan perintah ke C++ namun perintah ke preprocessornya C++ untuk mengubah program sementara pada saat dikompile. Preprocessor directive ini akan dijelaskan tersendiri.

Kode Program 2.9 Format pemrograman

Semua penyataan yang dapat dieksekusi dalam C++ berakhir dengan t “ ; “sebagai t akhir dari pernyataan-pernyataan tersebut. Perhatikan bahwa baris dimana fungsi main(), t kurung { dan t kurung } tidak diakhiri dengan t “ ; “ karena baris-baris ini merupakan awal dan akhir dari suatu fungsi dan tidak dapat dieksekusi. Demikian juga untuk preprocessor directive, karena bukan perintah untuk C++ maka tidak perlu diakhiri dengan t “ ; ”.

Nama[30] adalah character array yang pada program ini dipakai untuk menampung suatu input string, yaitu nama dari user. Character array dan string dalam C++ akan dijelaskan tersendiri.\n dalam cout adalah escape sequence character yang dipakai untuk melompat ke baris berikutnya. Escape sequence character diti dengan \ dan akan dijelaskan tersendiri.

Pada C++, fasilitas untuk melakukan input dan output dikenal sebagai stream. Pada contoh program di atas cout adalah strd output stream sedangkan cin adalah strd input stream. Format dari cout adalah: cout << data [ << data];Operator << pada cout adalah insertion operator yang dipakai untuk mengarahkan argumennya ke strd output device. Strd output device ini biasanya defaultnya adalah layar, kecuali mengarahkannya ke device yang lain misalnya printer. T [ ] dengan argumen di dalamnya menyatakan bahwa jumlah argumen pada cout dapat variabel. Cout juga dapat mengenali dan menampilkan tipe data yang berbeda. Format dari cin adalah:cin [>> values];cin membaca input dan strd input device yang defaultnya adalah keyboard, kecuali mengarahkannya ke device yang lain misalnya modem. Perlu

//*------------.operasi aritmatika.CPP------------------*

#include<iostream.h> //* Header file untuk operasi I/O pada C++*

#include<stdio.h> //* Header file untuk operasi I/O pada C,misalnya fungsi printf() *

#include<conio.h>

main( ) {

int a,b,c=0,d=0;clrscr();cout<<"Masukan Nilai A=";cin>>a;cout<<"Masukan Nilai B=";cin>>b;c=a+b;d=a*b;cout<<"Hasil dari A + B = "<<c<<endl;cout<<"Hasil dari A * B ="<<d<<endl;getch();

}

Page 17: Buku c++ Dewayu

diperhatikan bahwa cin dan cout sebenarnya bukan merupakan bagian dari C++, cin dan cout ini didefinisikan dalam stream library jadi harus menyisipkan iostream.h agar dapat memakainya. Demikian juga dengan printf() yang bukan bagian dari C, fungsi ini didefinisikan dalam run-time library stdio.h.

Selama program mengerjakan tugasnya dengan benar dan menghasilkan output yang benar, siapa yang peduli sebagus apa listing dari program tersebut? Saat ini dunia mengalami perkembangan yang sangat cepat dalam bidang computer, lebih-lebih pada memori dan disk space. Mungkin suatu saat nanti ingin melihat dan mengubah program C++ , maka jika membuat program dengan struktur yang rapi pada program , akan dapat membaca program tersebut lebih cepat suatu saat nanti. akan lebih cepat mengerti, mengubah, ataupun melakukan menipulasi pada program .

Jika bekerja pada suatu perusahaan Pemrograman, akan mudah mengerti kode program yang telah dibuat oleh orang lain, dan orang lain mungkin akan memodifikasi ulang program . Dalam dunia programming kemampuan sebuah program untuk dibaca sangatlah penting. Perusahaan akan lebih suka jika membuat program yang masih dapat dimanfaatkan di masa yang akan datang, dan tentu saja program itu harus mudah dibaca. 1. Main ( )

Statement yang mengikuti main( ) adalah yang dieksekusi pertama kali oleh program. Bagian dari sebuah program C++ dimulai dari main( ), diikuti oleh karakter pembuka { yang disebut fungsi main. Sebuah program C++ sebenarnya adalah gabungan dari beberapa fungsi yang merupakan pecahan atau bagian-bagian terkecil dari sebuah program.

Pada contoh program yang ditampilkan disini, seluruhnya menggunakan main( ). Dalam main( ), terdapat statement pembukan dan penutup { }, diantara statement tersebut ditulis statement untuk menjalankan program yang selanjutnya disebut blok program. Semua bagian yang dieksekusi oleh program harus memiliki t “ ; ” pada bagian akhir perintah sebagai t statement yang berikan sudah berakhir.

Kode program 2.10 dibawah mengulang contoh pada kode program 2.2. contoh dibawah ini akan menjelaskan pada mengenai bagian-bagian yang terdapat dapam struktur program C.#include <stdio.h>#include <conio.h>#include <iostream.h>main(){int a,b,c=0,d=0;clrscr();cout<<"Masukan Nilai A=";cin>>a;cout<<"Masukan Nilai B=";cin>>b;c=a+b;d=a*b;cout<<"Hasil dari A + B = "<<c<<endl;cout<<"Hasil dari A * B ="<<d<<endl;getch();}

Kode Program 2.10 Bagian program

Ini adalah outputnya :

Page 18: Buku c++ Dewayu

Gambar 2.6 Output program

2. Komentar Pada C++Komentar digunakan untuk memberi penjelasan pada program yang dibuat.

Ada dua bentuk komentar yaitu “//” dan “/* … */”. // digunakan untuk komentar yang panjangnya satu baris sementara /* */ digunakan untuk komentar yang lebih dari satu baris. Jika C menemukan t // atau /* */ maka baris tersebut tidak akan dijalankan oleh compiler sebagai perintah / syntax dalam C. Ini sangat berguna untuk member keterangan atau penjelasan pada bagian coding. Contonya dapat dilihat pada halaman sebelumnya. Pada kanan baris program terdapat kata-kata komentar. Komentar itu tidak akan dieksekusi oleh program.

2.8 Rangkuman Suatu program merupakan satu set instruksi yang dapat dibaca manusia dan

diputar oleh compiler menjadi sesuatu yang komputer dapat digunakan untuk melakukan serangkaian tugas. linker kemudian mengambil versi terkompilasi, menggabungkannya dengan fungsi pendukung yang dibuat oleh pihak ketiga, dan menghasilkan sebuah file yang dapat langsung dijalankan oleh komputer. 

Setiap program terdiri dari satu set instruksi yang menentukan suatu tempat untuk menyimpan informasi sementara, instruksi untuk memanipulasi informasi itu, dan cara untuk menampilkan hasil. Dengan demikian, dapat menetapkan fungsi-fungsi sendiri, ulangi langkah satu atau beberapa kali, dan melakukan perbandingan data nilai untuk selektif mengeksekusi kode. 

Tindakan memproduksi sebuah program yang memenuhi tugas tertentu disebut pemrograman. Dalam rangka untuk memastikan bahwa itu adalah melakukan tugas yang benar, program ini perlu diuji. pengujian yang memadai adalah bagian penting dari kegiatan pemrograman. Perpustakaan menyediakan fungsionalitas tambahan dan dapat disediakan oleh: 1. Penyedia kompilator 2. Para pengembang aplikasi3. Sistem operasi vendor 4. Hardware vendor 5. Open Source solusi

Perpustakaan ini perlu didefinisikan secara eksternal dan dihubungkan dengan aplikasi pada waktu kompilasi atau digunakan secara dinamis pada saat runtime. Dalam kedua kasus, proses membangun harus menyertakan file header untuk bisa memastikan dengan tepat bagaimana perpustakaan ini harus dihubungkan.  Ini kemampuan bahasa memungkinkan penggunaan kembali kode yang ada, sehingga mengurangi beban kerja, dan meningkatkan stabilitas aplikasi dengan perangkat keras memungkinkan, perangkat lunak, dan vendor sistem

Page 19: Buku c++ Dewayu

operasi untuk menciptakan solusi yang terbaik untuk platform mereka.  Semua kebutuhan di atas untuk masuk ke menciptakan sebuah program. Ini adalah kombinasi dari: 

1. Solusinya programmer untuk masalah. 2. Ungkapan bahwa solusi dalam bahasa pemrograman. 3. Aliran kontrol dan data dalam aplikasi. 4. Sistem operasi yang mendukung eksekusi. 5. Perpustakaan eksternal digunakan untuk meningkatkan aplikasi. 

Jika salah satu dari hal ini tidak benar dipahami dan leveraged, aplikasi tidak akan bekerja sebagaimana dimaksud, dan menemukan kesalahan adalah bagian yang kadang-kadang frustasi tapi penting dalam proses pemrograman. 

DAFTAR PUSTAKA

Abdul Kadir, Pemrograman Dasar C untuk Ibm Pc, Andi Offset, Edisi II Cetakan I, 1994http://www.turboexplorer.com/cpp. Cprogramming.com .www.cplusplus.com .