BAB I. PENDAHULUAN
1.1
LATAR BELAKANG
Bahasa
komputer telah melalui evolusi yang dramatis sejak komputer yang
pertama dibuat untuk bantuan dalam kalkulasi sejak perang dunia
ke dua. Awalnya programmer bekerja dengan instruksi komputer
yang sangat primitif yaitu machine language (bahasa mesin).
Pada
bahasa mesin instruksi-instruksi terdiri dari suatu kalimat yang
panjang yang berupa tulisan 1 (satu) dan 0 (nol). Selanjutnya
assembler digunakan untuk memetakan instruksi mesin ke
mnemoniscs yang dapat dibaca dan ditangani oleh manusia seperti ADD
dan MOV.
Kemudian,
lahirlah bahasa tingkat tinggi seperti BASIC dan COBOL. Bahasa
ini memungkinkan orang bekerja dengan sejumlah kata dan kalimat
tertentu dalam seperti Let I=100. Instruksi ini akan
diterjemahkan kembali menjadi bahasa mesin dengan mengunakan suatu
interpreter ataupun compiler. Suatu interpreter bekerja dengan
menterjemahkan baris program sesaat dibaca, mengubahnya menjadi
bahasa mesin, dan menjalankannya.
Compiler
bekerja dengan menterjemahkan program menjadi suatu bentuk
intermediasi. Tahap ini disebut sebagai Compiling dan
menghasilkan suatu file object. Kemudian compiler akan
membangkitkan linker, yang mana akan mengubah file object menjadi
suatu program yang executable (dapat dijalankan langsung).
Karena interpreter membaca kode sambil menjalankan baris per
baris, maka interpreter terasa lebih mudah oleh programmer
dalam menggunakannya. Dengan adanya tambahan langkah pada
Compiler seperti tahap compiling dan lingking pada kode,
sehingga terasa kurang nyaman.
Compiler
akan menghasilkan suatu program yang sangat cepat pada saat
dijalankan karena waktu untuk menterjemahkan program telah
dihilangkan. Keuntungan dari suatu Compiler adalah menghasilkan
program executable yang tidak tergantung kepada program
sumber. Sedangkan pada interpreter anda harus menjalankannya
dengan menggunakan program sumber.
Untuk
beberapa tahun, prinsip utama dari programmer komputer adalah menulis
suatu kode yang sependek mungkin, dan dapat dijalankan dengan
cepat. Program tersebut harus berukuran kecil karena memori
komputer sangat mahal, dan harus cepat karena tenaga pemrosesesan
(CPU) sangat mahal.
Setelah
komputer menjadi semakin kecil, murah dan cepat, dan harga dari
memori telah jatuh. Prioritas ini telah berubah. Sekarang biaya
tenaga programmer jauh lebih mahal dibandingkan dengan harga
komputer yang digunakan dalam bisnis. Program yang ditulis dengan
baik dan mudah ditangani adalah suatu yang bernilai tinggi. Mudah
ditangani artinya adalah pada saat kebutuhan bisnis berubah,
program dengan mudah dapat dikembangkan tanpa adanya biaya yang
sangat besar.
1.2 TUJUAN
- Untuk dapat membuat program-program yang lebih kompleks dengan dasar mata kuliah Dasar Algoritma dan Pemrograman
- Mahasiswa mengetahui dasar-dasar dari pemrograman C++
- Mahasiswa dapat mendefinisikan suatu variabel
BAB II. PEMBAHASAN
2.1.
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. .
Hello World
Berikut
ini contoh program C++ yang sederhana
#include
<iostream.h>
#include
<conio.h>
void
main()
{
cout
<< “Hello Semua.\n”;
getch
();
}
Setelah dicompile dan dirun, hasilnya adalah muncul pada layar Hello Semua.
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.
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 sayang tidak sama dengan Sayang
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*/
- 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.
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.
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).
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, Semua!\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.
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,
Semua!. 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.
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 |
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--
|
2.4.Operator
Binary
A.
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
|
KESIMPULAN
BAHASA
PEMROGRAMAN C++
C++
dan C sebagai bahasa pendahulunya, C merupakan termasuk bahasa
pemrograman tingkat menengah. Pencipta C adalah Brian W.
Kernighan dan Dennis M. Ritchie pada tahun 1972. C merupakan
bahasa pemrograman terstruktur yang membagi program ke dalam
sejumlah blok (subprogram). Tujuannya adalah untuk memudahkan dalam
pembuatan dan pengembangan
program. Program yang ditulis dengan C mudah sekali dipindahkan dari satu jenis
mesin ke mesin lain. Hal ini karena adanya standarisasi C yaitu ANSI (American
National Standards Institute) yang menjadi acuan para pembuat compiler C. C++
diciptakan satu dekade setelah C. C++ diciptakan oleh Bjarne Stroustroup dari
Laboratorium Bell, AT&T pada tahun 1983. Pada awalnya C++ diberi nama “A better
C”. Nama C++ sendiri diberinama oleh Rick Mascitti. Adapun anda ++ berasal dari
operator increment pada bahasa C.
program. Program yang ditulis dengan C mudah sekali dipindahkan dari satu jenis
mesin ke mesin lain. Hal ini karena adanya standarisasi C yaitu ANSI (American
National Standards Institute) yang menjadi acuan para pembuat compiler C. C++
diciptakan satu dekade setelah C. C++ diciptakan oleh Bjarne Stroustroup dari
Laboratorium Bell, AT&T pada tahun 1983. Pada awalnya C++ diberi nama “A better
C”. Nama C++ sendiri diberinama oleh Rick Mascitti. Adapun anda ++ berasal dari
operator increment pada bahasa C.
Keistimewaan
C++ adalah karena bahasa ini mendukung OOP
(Object Oriented Programming). Tujuan utama pembuatan C++ adalah untuk
eningkatkan produktivitas pemrogram dalam membuat aplikasi. Kebanyakan pakar
setuju bahwa OOP dan C++ mampu mengurangi kompleksitas terutama program yang
terdiri dari 10.000 baris lebih, bahkan dapat meningkatkan produktivitas 2x
lipat dari C, Pascal dan Basic.
(Object Oriented Programming). Tujuan utama pembuatan C++ adalah untuk
eningkatkan produktivitas pemrogram dalam membuat aplikasi. Kebanyakan pakar
setuju bahwa OOP dan C++ mampu mengurangi kompleksitas terutama program yang
terdiri dari 10.000 baris lebih, bahkan dapat meningkatkan produktivitas 2x
lipat dari C, Pascal dan Basic.
B
Program C++
Program
C++ dapat dibuat menggunakan sebarang editor
teks maupun editor sekaligus compilernya. Program utama berekstensi (.CPP). Pada
saat kompilasi program utama bersama dengan file header (.h) akan diterjemahkan
oleh compiler menjadi file obyek (.OBJ). Selanjutnya file obyek ini bersama-sama
dengan file obyek lain dan file library (.LIB) dikaitkan menjadi satu oleh
linker. Hasilnya adalah file (.EXE) executable.
teks maupun editor sekaligus compilernya. Program utama berekstensi (.CPP). Pada
saat kompilasi program utama bersama dengan file header (.h) akan diterjemahkan
oleh compiler menjadi file obyek (.OBJ). Selanjutnya file obyek ini bersama-sama
dengan file obyek lain dan file library (.LIB) dikaitkan menjadi satu oleh
linker. Hasilnya adalah file (.EXE) executable.
C.
Compiler C++
Compiler
C++ yang telah beredar di pasaran antara lain
Microsoft C/C++ dan Visual C++. Keduanya dari Microsoft. Sementara Borland
international juga mengeluarkan Turbo C++ dan Borland C++
Microsoft C/C++ dan Visual C++. Keduanya dari Microsoft. Sementara Borland
international juga mengeluarkan Turbo C++ dan Borland C++