Makalah C++
Makalah C++
perkembangannya, bahasa C menjadi bahasa paling populer diantara bahasa lainnya, seperti PASCAL, BASIC, FORTRAN. Tahun 1989, dunia pemrograman C mengalami peristiwa penting dengan dikeluarkannya standar bahasa C oleh American National Standards Institute (ANSI). Bahasa C yang diciptakan Kerninghan & Ritchie kemudian dikenal dengan nama ANSI C. Mulai awal tahun 1980, Bjarne Stroustrup dari AT & T Bell Laboratories mulai mengembangkan bahasa C. Pada tahun 1985, lahirlah secara resmi bahasa baru hasil pengembangan C yang dikenal dengan nama C++. Sebenarnya bahasa C++ mengalami dua tahap evolusi. C++ yang pertama, dirilis oleh AT&T Laboratories, dinamakan cfront. C++ versi kuno ini hanya berupa kompiler yang menterjemahkan C++ menjadi bahasa C. Pada evolusi selanjutnya, Borland International Inc. mengembangkan kompiler C++ menjadi sebuah kompiler yang mampu mengubah C++ langsung menjadi bahasa mesin (assembly). Sejak evolusi ini, mulai tahun 1990 C++ menjadi bahasa berorientasi obyek yang digunakan oleh sebagian besar pemrogram professional.
BAB II PEMBAHASAN
A. Pengertian C++
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 : C++ Borland, C++ Microsoft Visual, C/386 Watcom, dan DJGPP. Anda dapat mendownload DJGPP atau mungkin saja anda telah memiliki kompiler lain. Setiap kompiler ini agak berbeda. Setiap kompiler akan dapat menjalankan fungsi fungsi standar C++ ANSI/ISO, tetapi masing masing kompiler juga akan dapat menjalankan fungsi fungsi nonstandard (fungsi fungsi ini, agak mirip dengan ucapan yang tidak standar yang diucapkan orang diberbagai pelosok negeri. Sebagai contoh, di New Orleans kata median disebut neutral ground). Kadang kadang pemakaian fungsi nonstandard akan menimbulkan masalah pada saat anda hendak mengkompilasi kode sumber data (source code) (yaitu program berbahasa C++ yang ditulis oleh seorang programer) mempergunakan kompiler yang berbeda. Tutorial ini tidak terlepas dari masalah seperti itu. Bila anda belum mempunyai sebuah kompiler, disarankan agar anda segera memiliki sebuah kompiler. Sebuah kompiler sederhana sudah cukup untuk dipergunakan oleh anda dalam mengikuti tutorial ini. Bahasa pemrograman C++ adalah bahasa yang amat berbeda. Untuk kompiler C++ berbasis DOS, akan memerlukan beberapa kata kunci (keywords); keyword sendiri tidak cukup untuk difungsikan sebagai input dan output. Walau hampir semua fungsi dalam file library tampaknya bias diakses oleh header filenya. Coba kita lihat program sesungguhnya :
#include int main() { cout<<HEY, you, Im alive! Oh, and Hello World!; return 0; }
Berikut ini adalah contoh program sederhana yang akan mencetak kalimat "Hello, World!" dengan menggunakan pustaka stdio.h (ANSI C):
#include <stdio.h> int main(void) { printf("Hello, World!\n"); return 0; }
menyebutkan Pustaka Dasar C++ dan Pustaka Pola Dasar C++ untuk merujuk pada hal yang sama. Kepala (header) untuk penggunaan Pustaka Dasar C++ ditulis tanpa akhiran .h.
auto
const
short
struct
unsigned void
signed switch
Kelompok Kedua
Kata yang dipesan kelompok kedua berjumlah 30. Kata-kata ini adalah baru dan hanya ada di bahasa C++. asm bool catch class dynamic_cast namespace reinterpret_cast try explicit false friend new operator private public protected static_cast template this throw true typeid typename using virtual wchar_t
Kata-kata yang dipesan tersebut di atas tidak boleh dipakai sebagai nama variable, class, enum, macro, dan struct.
unsigned: 0 to 4294967295 bool Boolean, dapat bernilai benar atau salah (true or false) float Angka dengan titik mengambang (bilangan cacah) double Bilangan cacah dengan ketelitian ganda long double wchar_t Bilangan cacah dengan ketelitian ganda panjang Karakter lebar, biasa dipakai untuk Unicode karakter 2 byte 1 karakter lebar 8 byte 1.7e +/- 308 (15 digits) 8 byte 1.7e +/- 308 (15 digits) 4 byte 3.4e +/- 38 (7 digit) 1 byte true or false
Microsoft Visual C++ 2005 Express Turbo C++ Explorer Apple Xcode for Mac OS X Open Source Watcom / OpenWatcom C/C++ Compiler Digital Mars C/C++ Compiler (Symantec C++ Replacement) Bloodshed Dev-C++ C++ Compiler Free Microsoft .NET Framework Software Development Kit (SDK) / Free Microsoft Visual C++ Compiler
Intel C++ Compiler for Linux Non-Commercial Version Sun Studio Compilers and Tools
Open64 Compiler Tools Apple's Macintosh Programmer's Workshop (C and C++ compilers) TenDRA C/C++ Compiler GNU C/C++ Compiler Ch Embeddable C/C++ Interpreter (Standard Edition) DJGPP C and C++ Compilers CINT C and C++ Interpreter SDCC C Cross-compiler Cygwin Project (C & C++ Compilers) SDCC C Cross-compiler Code::Blocks
f)
Kompilator Kompilator (Inggris: compiler) adalah sebuah program komputer yang berguna untuk menerjemahkan program komputer yang ditulis dalam bahasa pemrograman tertentu menjadi program pemrograman lain. Terlepas dari pengertiannya yang demikian relatif luas, istilah kompilator biasa digunakan untuk program komputer yang menerjemahkan program yang ditulis dalam bahasa pemrograman tingkat tinggi (semacam bahasa Pascal, C++, BASIC, FORTRAN, Visual Basic, Visual C#, Java, xBase, atau COBOL) menjadi bahasa mesin, biasanya dengan bahasa Assembly (assembler) sebagai perantara. Kompilator berbeda dengan assembler karena biasanya kompilator akan menghasilkan kode obyek (object code) yang bisa berupa file executable pada sisten operasi Windows atau file bin pada sisten operasi berbasis Unix. Kompilator melakukan proses kompilasi dengan cara menganalisis kode sumber secara keseluruhan, sehingga waktu yang dibutuhkan untuk melakukan kompilasi lebih lama, namun hasilnya lebih cepat dalam proses eksekusi daripada program yang dibuat dengan menggunakan teknik interpretasi dengan interpreter yang ditulis dalam bahasa
Pada baris pertama, seperti yang kita lihat, ada perintah #include
<iostream>.
adalah perintah perintah yang diberikan kepada compiler untuk melakukan definisi, memasukkan file library, dll. Contoh contoh dari preprocessor ini adalah: #define maximum_number 100000 #include fileku.h #ifdef maximum_number
#undef maximum_number #define maximum_number_2 1000 #endif
Itu berarti bahwa kita memasukkan (include) library iostream ke dalam kode program kita. iostream itu adalah header yang dibutuhkan untuk kegiatan input dan output dari program. Perintah
cout
memasukkan iostream ke dalam kode program kita dan juga using namespace
std;
dimana ada member cout di dalamnya. Berikut beberapa header yang terdapat dalam C++:
ctime = header waktu cstdio = header untuk perintah C seperti printf dan scanf
cmath = header untuk operasi matematika seperti sin, cos, sqrt, dan tan cstring = header untuk memanipulasi string seperti strcpy, strcat, dll
main ()
adalah fungsi utama (main) yang harus ada dalam setiap program
C++ kita. Di sini yang digunakan adalah dengan main tanpa nilai kembalian dan tanpa paramater. Apa itu nilai kembalian dan apa itu paramater? Saksikan setelah pesan pesan berikut eh salah, lihat dalam bab berikutnya . Jika diperhatikan ada perintah \n pada akhir kalimat Hello, World!. Apa itu? \n adalah perintah dalam banyak bahasa pemrograman sebagai baris baru (new line). Perintah dengan menggunkan backslash (\) juga ada beberapa jenis, diantaranya: \a = untuk menghasilkan bunyi alert \t= tabulasi \0 = null terminated dalam array Tanda { juga harus ada dalam setiap fungsi C++, itu menandakan awal dari fungsi / program dan } menandakan akhir dari fungsi / program.
Komentar dalam C++ ditulis dengan // untuk komentar dengan panjang satu baris atau /* dan */ untuk komentar lebih dari satu baris, dimana tanda
/*
Komentar adalah cataatan ang ditulis oleh programmer untuk sebagai pengingat atau penjelasan ketika membaca sebuah kode. Kata kata dalam sebuah komentar tidak akan dieksekusi oleh compiler. Beberapa kesalahan dalam penulisan dalam C++ adalah:
int int; /*salah karena nama sebuah variabel tidak boleh sama dengan seuah tipe data (int)*/ int Jam_9; //salah karena nama variabel dimulai dengan huruf besar
int 90jam; /*nah, ini juga salah karena nama sebuah variabel tidak boleh dimulai dengan bilangan*/
Penulisan yang benar dalam C++ adalah: int myint; //betul char kata_2; //betul juga... double bilangan_KeDuA; /*walaupun nama identifiernya
tapi ini juga betul :) */ aneh,
Setiap statement dalam C++ harus diberi tanda ; pada akhir dari statement. Contoh penulisan statement yang benar dalam C++ adalah:
int a, b, c; a = 1; b = 2; c = a + b;
karena itu dianggap error oleh compiler, karena merupakan statement yang tidak lengkap.
D. Tipe Data
Tipe tipe data yang dikenal dalam C++ adalah sebagai berikut:
int
adalah tipe data bilangan bulat (integer). Contoh penggunaan tipe int
adalah:
int a = 1; int num1 = 2, num2 = 4;
Perhatikan bahwa dalam nilai nilai yang masuk di assign (masukkan) ke dalam variabel variabel bertipe int adalah angka angka / bilangan bulat. Seperti namanya, int hanya bisa bernilai bulat dan bukan pecahan (desimal). Bagaimana kalau yang tipenya int
int hasil_bagi_bulat = 5 / 2;
10
Hasilnya:
2
Ini karena 5 dibagi 2 = 2,5 kemudian karena hasil_bagi_bulat adalah integer (bilangan bulat) 2,5 kemudian dibulatkan menjadi 2. Untuk bilangan desimal sendiri ada tipe tertentu untuk bilangan ini.
double
adalah tipe yang khusus untuk bilangan yang tidak bulat alias desimal /
char
bool
adalah tipe yang hanya menyimpan nilai benar dan salah yaitu, true
string
adalah tipe yang khusus untuk menampung semua masukan dari user /
E. Operator Aritmatika
Operator aritmatika yang sering digunakan dalam C++ adalah: + = penjumlahan - = pengurangan * = perkalian / = pembagian % = sisa bagi (modulo)
11
Contoh dari pemakaian masing masing operator tersebut adalah sebagai berikut:
#include <iostream> using namespace std; void main () { int satu, dua, tiga, empat, lima; satu = 1 + 0; dua = 4 - 2; tiga = 1 * 3; empat = 20 / 5; //mencari sisa bagi dari 25 / 10 lima = 25 % 10; cout << satu << \n; cout << dua << \n; cout << tiga << \n; cout << empat << \n; cout << lima << \n; }
12
Program Gaji_Dosen { Menentukan gaji bulanan seorang dosen. Masukan yang dibaca dari papan kunci adalah nama Dosen, golongan, dan jumlah jam kerja. Nama Dosen dan gajinya dicetak ke piranti keluaran } Kamus nama : string jjk : integer gaji : real Algoritma read (nama , jjk) if jjk 224 then gaji jjk * 15000 else gaji 224 * 15000 + (jjk 224 ) * 20000 endif write (gaji) { jumlah jam kerja }
#include <iostream.h> main () { nama char; int jjk; float gaji; std : : cin >> nama , jjk; If jjk 224; gaji = jjk * 15000; else gaji = 224 * 15000 + (jjk 224) * 20000; std : : cout << gaji = << gaji << \n; } /* jumlah jam kerja */
13
Contoh 2 ALGORITMIK Program Peledakan_Bom { Hitung mundur peledakan bom } Kamus b : integer Algoritma for b60 downto 0 do write ( b ) endfor write ( Beledug ) { bom meledak }
C++ #include <iostream.h> main () { int b; for ( b = 60 ; b >= 1; b - - ); std : : cout << b; sdt : : cout <<Beledug; } /* bom meledak */
14
Contoh 3 ALGORITMIK Program Dosen_Mata_Kuliah_TI { Diberikan mata kuliah. Harus ditentukan nama Dosennya. } Kamus mk : string { mata kuliah } Algoritma read ( mk ) case ( mk ) mk = algoritma dan pemrograman : write ( Yudi Herdiana, ST. ) mk = bahasa indonesia mk = kalkulus mk = fisika dasar endcase : write ( Indra Nurgahayu, SPd. ) : write ( Deni Sofiansyah, MPd. ) : write ( Taofik, SSi.)
C++ #include <iostream.h> main () { char mk [ 15 ] ; /* mata kuliah */ cout << ketikan mata kuliah:; cin >> mk; if ( strcm ( mk, algoritma dan pemrograman)) cout << Yudi Herdiana, ST.\n; else if ( strcm ( mk, bahasa Indonesia )) cout << Indra Nurgahayu, SPd.\n; else
15
if ( strcm ( mk, kalkulus )) cout << Deni Sofiansyah, MPd.\n; else if ( strcm ( mk, fisika dasar )) cout << Taofik, SSi.\n; /*endif*/ /*endif*/ /*endif*/ /*endif*/ }
Contoh 4 ALGORITMIK Program Jalan_Alternatif { menentukan jalan alternatif bila jalan Pasar Baru di majalaya macet }
Kamus jl : string { jalan } Algoritma Read ( jl ) If jl = pasar baru macet then write ( coba jalan Ebah ) else write ( coba jalan anyar ); endif C++
16
#include <iostream.h> main () { char jl; if jl = (pasar baru macet) cout << coba jalan ebah; else cout << coba jalan anyar; } Contoh 5 ALGORITMIK Program Ngukur_Waktu { mengukur waktu berdasarkan jarak dan kecepatan } Kamus v : integer { kecepatan } s : integer { jarak } t : real Algoritma v5 s20 ts/v output(waktu = ,t); { waktu }
17
C++ #include <iostream.h> Main () { Int v; Int s; float t; v = 5; s = 20; t = s/v; cout<<waktu:<<t; }
18
program tidak akan bisa di running apabila salah satu sintak itu missing. 2. Pada Visual C++ terdapat empat kompiler umum yaitu : C++ Borland, C++ Microsoft Visual, C/386 Watcom, dan DJGPP.
3.2. Saran
1. Semoga makalah ini menjadi sebuah titik pendorong bagi pemula yang ingin belajar bahasa C++ secara mendalam. 2. Semoga makalah ini menjadi pegangan pembaca dalam memahami setiap sintak umum yang ada pada bahasa C++
19
Daftar Pustaka
http://id.wikipedia.org/wiki/C%2B%2B http://selinliz.wordpress.com/2008/09/11/pengertian-bahasa-pemograman-c/ http://ericwanda.wordpress.com/2008/09/24/bone/ http://ilmukomputer.org/2009/05/pemrograman-dengan-c-part-i / http://ilmukomputer.org/2009/05/pemrograman-dengan-c-part-ii/ http://ilmukomputer.org/2009/05/pemrograman-dengan-c-part-iii/ http://www.cplusplus.com/info/history.html Drs. Suarga, M.Sc., M. Math., Ph.D., Algoritma Pemrograman, Penerbit ANDI, 2006 Robert Setiadi, Algoritma Itu Mudah, PT. Prima Infosarana Media, 2008 Kernighan, Brian W. and Ritchie, Dennis M. 1988. C Programming Language 2nd Edition. Prentice-Hall. Stroustrup, Bjarne. 1997. C++ Programming Language Third Edition. AddisonWesley. Schildt, Herbert. 1998. C++: The Complete Reference. McGraw-Hill. Munir, Rinaldi. 1999. Algoritma dan Pemrograman dalam bahasa pascal dan c. informatika : Bandung
20