makalah C++

27
BAB I PENDAHULUAN A. Sejarah Visual C++ Tahun 1978, Brian W. Kerninghan & Dennis M. Ritchie dari AT & T Laboratories mengembangkan bahasa B menjadi bahasa C. Bahasa B yang diciptakan oleh Ken Thompson sebenarnya merupakan pengembangan dari bahasa BCPL ( Basic Combined Programming Language ) yang diciptakan oleh Martin Richard. Sejak tahun 1980, bahasa C banyak digunakan pemrogram di Eropa yang sebelumnya menggunakan bahasa B dan BCPL. Dalam 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 1

Transcript of makalah C++

Page 1: makalah C++

BAB I PENDAHULUAN

A. Sejarah Visual C++

Tahun 1978, Brian W. Kerninghan & Dennis M. Ritchie dari AT & T

Laboratories mengembangkan bahasa B menjadi bahasa C. Bahasa B yang

diciptakan oleh Ken Thompson sebenarnya merupakan pengembangan dari

bahasa BCPL ( Basic Combined Programming Language ) yang diciptakan

oleh Martin Richard.

Sejak tahun 1980, bahasa C banyak digunakan pemrogram di Eropa

yang sebelumnya menggunakan bahasa B dan BCPL. Dalam

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.

1

Page 2: makalah C++

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 :

2

Page 3: makalah C++

#include

int main()

{

cout<<”HEY, you, I’m alive! Oh, and Hello World!”;

return 0;

}

a) Program C++ pertama

Contoh program sederhana C++ untuk hello world dengan

menggunakan Pustaka Dasar C++ dapat dilihat di bawah ini:

#include <iostream> // provides std::cout

int main()

{

std::cout << "Hello, world!\n";

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;

}

3

Page 4: makalah C++

b) Pustaka dasar C++

Dalam bahasa pemrograman C++, Pustaka Dasar adalah kumpulan

class dan fungsi yang menjadi inti bahasa pemrograman C++. Pustaka Dasar

C++ terdiri dari container umum dan fungsi untuk memanipulasinya, string

dan stream (termasuk fungsi untuk antarmuka pengguna serta fungsi untuk

menulis dan membaca file (file I/O)), serta fungsi-fungsi yang sering

digunakan seperti fungsi untuk mencari akar kuadrat dari sebuah bilangan.

Pustaka Dasar C++ sudah termasuk Pustaka Dasar ISO C90 untuk bahasa

pemrograman C. Fitur-fitur dalam Pustaka Dasar C++ dinyatakan dalam

namespace std.

Pustaka Pola Dasar (The Standard Template Library atau STL)

adalah bagian dari Pustaka Dasar C++. Pustaka Pola Dasar C++ terdiri dari

container, algorithm, iterator dan lain sebagainya. Orang kadang

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.

c) Kata yang dipesan

Kelompok Pertama

C++ mempunyai 32 buah kata yang dipesan (reserved words). Kata

kunci kelompok pertama merupakan turunan dari bahasa C, di antaranya:

4

auto const double float int short struct unsigned

break continu

e

else for long signed switch void

case default enum goto registe

r

sizeof typede

f

volatile

char do extern if return static union while

Page 5: makalah C++

Kelompok Kedua

Kata yang dipesan kelompok kedua berjumlah 30. Kata-kata ini adalah

baru dan hanya ada di bahasa C++.

asm dynamic_cast namespac

e

reinterpret_cast try

bool explicit new static_cast typeid

catch false operator template typename

class friend private this using

const_cast inline public throw virtual

delete mutable protected true wchar_t

Kata-kata yang dipesan tersebut di atas tidak boleh dipakai sebagai nama

variable, class, enum, macro, dan struct.

d) Tipe data dasar

Untuk menyimpan suatu variabel diperlukan tempat khusus di dalam

memori komputer. Besar dan tipe dari variabel-variabel di dalam standar

program C++ dispesifikasikan sebagai berikut.

Nama Keterangan Ukuran Jangkauan

char Abjad/karakter atau untuk

bilangan bulat kecil

1 byte signed: -128 to 127

unsigned: 0 to 255

short int

(short)

Bilangan bulat dengan jangkauan

pendek

2 byte signed: -32768 to 32767

unsigned: 0 to 65535

int Bilangan bulat 4 byte signed: -2147483648 to

2147483647

unsigned: 0 to

4294967295

long int

(long)

Integer dengan jangkauan panjang 4 byte signed: -2147483648 to

2147483647

5

Page 6: makalah C++

unsigned: 0 to

4294967295

bool Boolean, dapat bernilai benar atau

salah (true or false)

1 byte true or false

float Angka dengan titik mengambang

(bilangan cacah)

4 byte 3.4e +/- 38 (7 digit)

double Bilangan cacah dengan ketelitian

ganda

8 byte 1.7e +/- 308 (15 digits)

long

double

Bilangan cacah dengan ketelitian

ganda panjang

8 byte 1.7e +/- 308 (15 digits)

wchar_t Karakter lebar, biasa dipakai

untuk Unicode karakter

2 byte 1 karakter lebar

e) Daftar C++ compiler

Untuk mengubah kode-kode C++ program menjadi suatu program aplikasi

yang dimengerti oleh sistem operasi dan komputer, diperlukan sebuah

kompilator C++.

Berikut ini adalah beberapa kompilator C++ yang dapat digunakan secara

gratis.

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

6

Page 7: makalah C++

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 yang ditulis dalam bahasa

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

7

Page 8: makalah C++

B. Header dan Fungsi main()

Beberapa bagian yang harus di perhatikan adalah header dan fungsi. Header

adalah diana kita memasukkan library yang ada dalam C++ kedalam kode

program kita. Fungsi adalah “tempat” dimana kita bisa “bereksperimen”.

Didalamnya terdapat semua statement yang kita buat. Program yang paling

sederhana yang pernah diketahui umat manusia (seram amat kata-katanya)

adalah:

#include <iostream>

using namespace std;

void main () {

cout << “Hello, World!\n”;

}

Pada baris pertama, seperti yang kita lihat, ada perintah #include

<iostream>. Tanda ‘#’ adalah preprocessor directive. Preprocessor directive

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 sendiri ada karena kita

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

8

Page 9: makalah C++

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.

C. Penulisan Dalam Bahasa C++

Penulisan dalam bahasa C++ adalah case sensitive. Yang berarti, C++

membedakan huruf kecil dan kapital. Yang berarti (lagi): variabel_pertama

tidak sama dengan variabel_Pertama atau mboknya_echi tidak sama dengan

mboknya_Echi.

Komentar dalam C++ ditulis dengan ‘//’ untuk komentar dengan panjang

satu baris atau ‘/*’ dan ‘*/’ untuk komentar lebih dari satu baris, dimana tanda

/* merupakan “pembuka” komentar dan */ adalah “penutup” komentar.

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

9

Page 10: makalah C++

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 aneh,

tapi ini juga betul :) */

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;

Sedangkan penulisan yang salah adalah:

int a, b, c

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 lalu yang dimasukkan adalah hasil

pembagian yang tidak bulat hasilnya? Maka:

int hasil_bagi_bulat = 5 / 2;

10

Page 11: makalah C++

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 /

pecahan. Contoh penggunaannya adalah:

double mydouble = 5.00;

double pecahan_pertama = 2.5, pecahan_kedua = 9.9;

char adalah tipe data karakter yang bisa menyimpan mulai dari: a – z, A – Z, ‘!’,

‘@’, dsb. Penggunannya ± sama dengan tipe - tipe yang sebelumnya:

char huruf = ‘c’;

char inisial1 = ‘A’, inisial2 = ‘W’;

char simbol = ‘#’;

bool adalah tipe yang hanya “menyimpan” nilai “benar” dan “salah” yaitu, true

dan false (boolean). Contoh:

bool benar_atau_salah = true;

string adalah tipe yang khusus untuk menampung semua masukan dari user /

gabungan karakter yang sangat panjang. Misalnya:

string string_gue = “nah, kyk gini deh contohnya string...”;

E. Operator Aritmatika

Operator aritmatika yang sering digunakan dalam C++ adalah:

‘+’ = penjumlahan

‘-‘ = pengurangan

‘*’ = perkalian

‘/’ = pembagian

‘%’ = sisa bagi (modulo)

11

Page 12: makalah C++

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”;

}

F. Contoh Program Algoritma dan C++

Contoh 1 Algorima & C++

Dosen sebuah Universitas digaji berdasarkan jumlah jam kerjanya selama satu

bulan. Gaji per jam adalah Rp 15.000,00. Bila jumlah jam kerjanya lebih dari 224

jam, maka sisanya dianggap sebagai jam sampingan. Upah jam sampingan adalah

Rp 20.000,00. Dibaca jumlah jam kerja seorang dosen, tentukan gaji bulanannya.

Misalkan jumlah jam kerja dosen adalah jjk.

Analisis kasus :

Kasus jjk ≤ 224 → jjk * 15000

Kasus jjk≥ 224 → jjk * 15000 + (jjk-224) * 20000

12

Page 13: makalah C++

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 { jumlah jam kerja }

gaji : real

Algoritma

read (nama , jjk)

if jjk ≤ 224 then

gaji ← jjk * 15000

else

gaji ← 224 * 15000 + (jjk – 224 ) * 20000

endif

write (gaji)

#include <iostream.h>

main ()

{

nama char;

int jjk; /* jumlah jam kerja */

float gaji;

std : : cin >> nama , jjk;

If jjk ≤ 224;

gaji = jjk * 15000;

else

gaji = 224 * 15000 + (jjk – 224) * 20000;

std : : cout << “gaji = “ << gaji << “\n”;

}

13

Page 14: makalah C++

Contoh 2

ALGORITMIK

Program Peledakan_Bom

{ Hitung mundur peledakan bom }

Kamus

b : integer

Algoritma

for b←60 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

Page 15: makalah C++

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’ : write ( ‘Indra Nurgahayu, SPd.’ )

mk = ‘kalkulus’ : write ( ‘Deni Sofiansyah, MPd.’ )

mk = ‘fisika dasar’ : write ( ‘Taofik, SSi.’)

endcase

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

Page 16: makalah C++

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

Page 17: makalah C++

#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 { waktu }

Algoritma

v←5

s←20

t←s/v

output(“waktu = “,t);

17

Page 18: makalah C++

C++

#include <iostream.h>

Main ()

{

Int v;

Int s;

float t;

v = 5;

s = 20;

t = s/v;

cout<<“waktu:””<<t;

}

18

Page 19: makalah C++

BAB III PENUTUP

3.1. Kesimpulan

Adapun beberapa kesimpulan yang dapat diambil adalah :

1. Dalam bahasa C++ semua hal-hal yang berhubungan dengan

sintaks harus diperhatikan secara seksama, hal ini dikarenakan sebuah

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

Page 20: makalah C++

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. Addison-Wesley.

Schildt, Herbert. 1998. C++: The Complete Reference. McGraw-Hill.

Munir, Rinaldi. 1999. Algoritma dan Pemrograman dalam bahasa pascal dan c.

informatika : Bandung

20