C++ adalah bahasa pemrograman komputer yang di buat
oleh (Bjarne Stroustrup) merupakan perkembangan dari bahasa C
dikembangkan di Bell Labs (Dennis Ritchie) pada awal tahun 1970-an,
Bahasa itu diturunkan dari bahasa sebelumnya, yaitu BCL, Pada awalnya,
bahasa tersebut dirancang sebagai bahasa pemrograman yang dijalankan
pada sistem Unix, Pada perkembangannya, versi ANSI (American National
Standart Institute) Bahasa pemrograman C menjadi versi dominan, Meskipun
versi tersebut sekarang jarang dipakai dalam pengembangan sistem dan
jaringan maupun untuk sistem embedded, Bjarne Stroustrup pada Bel labs
pertama kali mengembangkan C++ pada awal 1980-an, Untuk mendukung
fitur-fitur pada C++, dibangun efisiensi dan sistem support untuk
pemrograman tingkat rendah (low level coding).Pada C++ ditambahkan
konsep-konsep baru seperti class dengan sifat-sifatnya seperti
inheritance dan overloading. Salah satu perbedaan yang paling mendasar
dengan bahasa C adalah dukungan terhadap konsep pemrograman berorientasi
objek (Object Oriented Programming). Perbedaan Antara Bahasa
pemrograman C dan C++ meskipun bahasa-bahasa tersebut menggunakan
sintaks yang sama tetapi mereka memiliki perbedaan, C merupakan bahasa
pemrograman prosedural, dimana penyelesaian suatu masalah dilakukan
dengan membagi-bagi masalah tersebut kedalam su-submasalah yang lebih
kecil, Selain itu, C++ merupakan bahasa pemrograman yang memiliki sifat
Pemrograman berorientasi objek, Untuk menyelesaikan masalah, C++
melakukan langkah pertama dengan menjelaskan class-class yang merupakan
anak class yang dibuat sebelumnya sebagai abstraksi dari object-object
fisik, Class tersebut berisi keadaan object, anggota-anggotanya dan
kemampuan dari objectnya, Setelah beberapa Class dibuat kemudian masalah
dipecahkan dengan Class. STANDARISASI Pada tahun 1998, C++ Standar
Komite (ISO/IEC JTC1/SC22/WG21 Working Group)mengeluarkan Standar
Internasional ISO/IEC 14882:1998 yang digunakan selama beberapa tahun.
Pada tahun 2003 dirilis versi yang telah dikoreksi, ISO/IEC 14882:2003.
Pada tahun 2005, Laporan Teknis yang disebut “Laporan Teknis
Perpustakaan 1” (sering dikenal sebagai TR1),dirilis. Revisi terbaru
dari standar C++ adalah C+11 (sebelumnya dikenal C++0x) telah disetujui
oleh ISO/IEC pada tanggal 12 Agustus 2011. Telah diterbitkan sebagai
14882:11.
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.
.
Hello World
3
Berikut ini contoh program C++ yang sederhana
#include <iostream.h>
void main()
{
cout << “Hello world.\n”;
}
Setelah dicompile dan dirun, hasilnya adalah muncul pada layar Hello World.
2.1.1 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.
4
2.1.2. 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
- 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;
5
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.
2.2. FUNGSI
Fungsi adalah sekumpulan perintah operasi program yang dapat menerima
argumen input dan dapat memberikan hasil output yang dapat berupa nilai
ataupun sebuah hasil perasi.
Nama fungsi yang definisikan sendiri oleh pemrogram tidak boleh sama dengan nama build-in function pada compiler C++.
Fungsi digunakan agar pemrogram dapat menghindari penulisan bagian
program (kode) berulang-ulang, dapat menyusun kode program agar terlihat
lebih rapi dan kemudahan dalam debugging program.
Definisi lainnya yang terdapat dari beberapa sumber, Fungsi merupakan bagian dari kode program yang terpisah dari program utama.
Bagain kode program ini di-
execute jika diperlukan untuk melakukan tindakan
khusus dalam program. Fungsi banyak dilibatkan dalam program dengan tujuan
untuk mengurangi duplikasi pengkodean dan untuk mempermudah pemahaman.
Secara sederhana terdapat fungsi yang tidak mengambil satu parameterpun dan
menghasilkan void (data yang tidak memiliki nilai). Namum pada fungsi yang
lain akan mengambil suatu parameter dan mungkin menghasilkan suatu nilai
tertentu.
6
Parameter merupakan suatu nilai yang di-
pass-kan
(diseberangkan) pada fungsi yang berguna untuk mengubah operasinya atau
untuk menunjukan operasi yang lebih luas. Sebelum fungsi digunakan,
fungsi harus dideklarasikan dulu. Deklarasi fungsi (
prototype) berguna untuk memberitahukan
compiler tentang bagaimana fungsi diambil dan tipe data yang
diambil/dihasilkan. Fungsi dapat dipanggil oleh fungsi yang lain maupun dirinya sendiri (
rekursif).
Syntax deklarasi fungsi:
Re_type function_name(parameter);
Parameter berisi pengenal (
argument) dan tipe pengenal (
argument) yang
berfungsi sebagai masukkan. Masukkan tersebut akan diproses sehingga
dihasilkan nilai tertentu sesuai tipe datanya (
re_type).
Syntax fungsi:
Re_type function_name(parameter)
{statement-statement}
Dalam C++, program merupakan kumpulan dari fungsi-fungsi. C++ mempunyai fungsi utama yang disebut
main.
Fungsi merupakan subprogram dan berguna untuk menjadikan program
bersifat modular sehingga dapat digunakan kembali, baik untuk program
itu sendiri maupun untuk program lain yang memiliki proses yang sama.
Fungsi dibedakan menjadi
user-define function (didefinisikan sendiri) dan
built-in function (disediakan oleh
compiler).
7
2.2.1
. Header dan Fungsi main()
Beberapa bagian yang harus di perhatikan adalah header dan fungsi.
Header adalah dimana 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
using namespace std;
void main ()
{
cout << “Hello, World!\n”; } Pada baris pertama, seperti yang
kita lihat, ada perintah #include . 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
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.
8
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.
9
2.3.
Tipe Data
Tipe – tipe data yang dikenal dalam C++ adalah sebagai berikut:
Tipe Bilangan Bula
Tipe Data |
Ukuran( dalam bit) |
Jangkauan |
Int |
16 atau 32 |
-32.767 sampai 32.767 |
Unsigned int |
16 atau 32 |
0 sampai 65.535 |
Signed int |
16 atau 32 |
Sama seperti int |
Short int |
16 |
-32.767 sampai 32.767 |
Unsigned short int |
16 |
0 sampai 65.535 |
Signed short int |
16 |
Sama seperti int |
Long int |
32 |
-2.147.483.647 sampai 2.147.483.647 |
Unsigned long int |
32 |
0 sampai 4.294.967.295 |
Signed long int |
32 |
Sma seperti long int |
Tipe Bilangan Desimal
Tipe Data |
Ukuran (dalam bit) |
jangkauan |
Float |
32 |
Enam digit presisi |
Double |
64 |
Sepuluh digir presisi |
Long double |
80 |
Sepuluh digit presisi |
10
Tipe Logika
boolean
adalah tipe yang hanya “menyimpan” nilai “benar” dan “salah” yaitu, true dan false (boolean). Contoh:
bool benar_atau_salah = true;
Tipe Krakter/String
Tipe Data |
Ukuran (dalam bit) |
Jangkauan |
Char |
8 |
-127 sampai 127 |
Unsigned char |
8 |
0 sampai 255 |
signed |
8 |
-127 sampai 127 |
Operator
1.Operator Assigment
Operator Assigment adalah operator yang berfungsi untuk memasukan (
assign)nilai ke dalam suatu variable ataupun konstanta.Operator ini dilambngkan dengan
samadengan (=).
2.Operator Unary
Operator |
Jenis Operasi |
contoh |
+ |
Membuat nilai positif |
+9 |
– |
Membuat nilai negative |
-9 |
== |
Increment |
C++ |
— |
Decrement |
C– |
11
2.4.Operator Binary
- Operator Aritmatika
operator |
Jenis Operasi |
Contoh |
= |
Penjumlahan |
3+4 =7 |
– |
Pengurangan |
7-4=3 |
* |
Perkalian |
3*4=12 |
/ |
Pembagian |
10.0/3.0=3.3333 |
% |
Sisa bagi/modulus |
13%3=1 |
B.Operator logika
Operator |
Jenis operasi |
Contoh |
&& |
And (dan) |
1&&1 = 1 |
|| |
Or (atau) |
1||0 = 1 |
! |
Not (negasi) |
!0 =1 |
C.Operator Relasi
Operator |
Jenis operasi |
Contoh |
> |
Lebih besar |
(8>5)=1 |
< |
Lebih kecil |
(8<5)=0 |
>= |
Lebih besar atau sama dengan |
(8>=3)=1 |
<= |
Lebih kecil atau sama dengan |
(8<=3)=0 |
== |
Samadengan |
(8==5)=0 |
!= |
Tidak sama dengan |
(8!=3)=1 |