Dasar Pemrograman C++
Ipung Permadi, S.Si, M.Cs
LOGO
Secara garis besar bahasa-bahasa pemrograman dapat dikelompokan menjadi :
1. Bahasa beraras tinggi (high-level language) Bahasa pemrograman yang berorientasi kepada manusia.
2. Bahasa beraras rendah (low-level language) Bahasa pemrograman yang berorientasi kepada mesin. Bahasa ini menggunakan kode biner (kode 0 dan 1).
www.themegallery.com PAI 08113 Algoritma dan Pemrograman
Company Name
Low-level Language Instruksi bahasa mesin
Keterangan
1011 0100 0000 0010
Muatlah bilangan 2 ke register AH
1011 0010 0010 1010
Muatlah bilangan 2A heksadesimal ke register DL
1100 1101 0010 0001
Jalankan interupsi 21 heksadesimal
High-level Language Instruksi
Keterangan
WRITE (“*”);
Pada Pascal
PRINT “*”
Pada BASIC
printf (“*”);
Pada C
cout << “*”;
Pada C++
www.themegallery.com PAI 08113 Algoritma dan Pemrograman
Company Name
Penerjemah Bahasa (Translator) Komputer hanya mengenal bahasa mesin (0 dan1). Agar program dapat dijalankan perlu diterjemahkan terlebih dahulu ke dalam bahasa mesin/kode objek.
Translator dapat berupa : 1. Interpreter 2. Kompiler
www.themegallery.com PAI 08113 Algoritma dan Pemrograman
Company Name
Proses Penerjemahan
Interpreter
Kompiler
Kode Sumber : Instruksi 1 Instruksi 2 Instruksi 3
Kode Sumber : Instruksi 1 Instruksi 2 Instruksi 3
www.themegallery.com PAI 08113 Algoritma dan Pemrograman
Urutan pengerjaan : 1. Instruksi 1 diterjemahkan kemudian dijalankan 2. Instruksi 2 diterjemahkan kemudian dijalankan 3. Instruksi 3 diterjemahkan kemudian dijalankan
Urutan pengerjaan : Instruksi 1 hingga instruksi 3 Diterjemahkan menjadi kode objek Pengeksekusian program : Ketika kode objek dijalankan, Tidak ada penerjemahan lagi Dan tidak bergantung kode sumber Company Name
Interpreter (+) Kemudahan mencari kesalahan seandainya program menghasilkan sesuatu yang dianggap salah ketika program dijalankan, karena kode sumber selalu tersedia (-) 1. Kode sumber harus selalu tersedia 2. Eksekusi lambat Contoh : (PHP, ASP, BASIC, dll)
www.themegallery.com PAI 08113 Algoritma dan Pemrograman
Company Name
Kompiler (+) 1. Eksekusi Cepat 2. Kode objek dapat langsung didistribusikan ke komputer lain tanpa perlu menyertakan kode sumber dan kompiler. (-) Seluruh kode sumber harus benar secara sintaks agar program dapat diuji Contoh : (Pascal, C, C++)
www.themegallery.com
Company Name
Bahasa Pemrograman C++ C++ diciptakan oleh Bjarne Stroustrup di laboratorium Bell sekitar tahun 1982, sebagai pengembangan dari bahasa C oleh Dennis Ritchie (1972) dan Simula. Saat ini, C++ merupakan salah satu bahasa yang paling populer untuk pengembangan software berbasis OOP. Contoh kompiler Produk dari Borland untuk kompiler C++ adalah Turbo C++, Borland C++, Borland C++ Builder. Sedangkan dari Microsoft adalah Ms. Visual C++. Walaupun banyak kompiler yang tersedia, namun pada intinya bahasa pemrograman yang dipakai adalah C++. www.themegallery.com PAI 08113 Algoritma dan Pemrograman
Company Name
TAHAPAN Mulai
Menulis Program
Menjalankan Program
Ada Kesalahanan
Ya
Memperbaiki Program
Tidak Selesai www.themegallery.com PAI 08113 Algoritma dan Pemrograman
Company Name
STRUKTUR BAHASA PEMROGRAMAN
Bagian Pendeklarasian Bagian deklarasi merupakan bagian program untuk mendefinisikan tipe data suatu variable, konstanta, serta fungsi dan prosedur yang akan digunakan pada program.
Bagian Statement Bagian statement merupakan bagian program yang berisi perintah yang akan dieksekusi/dijalankan.
www.themegallery.com PAI 08113 Algoritma dan Pemrograman
Company Name
pertama.cpp Tipe kode keluar program
Menyertakan berkas header iostream.h
#include
Awal tubuh fungsi main ()
int main() { cout << “Selamat Belajar C++\n”; return 0; }
Akhir tubuh fungsi main ()
www.themegallery.com PAI 08113 Algoritma dan Pemrograman
Pernyataan untuk menampilkan string
Pernyataan untuk memberi kode keluar program
Company Name
Penjelasan : • Berkas header (berekstensi .h) adalah berkas yang berisi prototipe fungsi, definisi konstanta, dan definisi variabel. Prototipe fungsi adalah kode C yang diberi nama dan ketika nama tersebut dipanggil maka kumpulan kode tersebut dijalankan. • #include suatu perintah yang digunakan untuk mengatur kompiler agar membaca berkas header yang disertakan di belakang kata include saat pelaksanaan kompilasi. • main() fungsi yang akan dijalankan pertama kali ketika program dieksekusi. int di depan main() menyatakan bahwa program memberikan nilai balik yang bertipe int. Tipe Int adalah tipe yang menyatakan bilangan bulat. www.themegallery.com
Company Name
• return 0 nilai balik program adalah 0. Nilai balik nol biasa digunakan untuk menyatakan bahwa program berhasil dalam melaksanakan tugas yang dibebankan. • Pernyataan di dalam C++ adalah suatu perintah yang dapat berdiri sendiri dalam melaksanakan suatu aksi dan dijalankan ketika program dieksekusi. diakhiri dengan tanda semi colon (;)
www.themegallery.com
Company Name
Beberapa hal yang harus diperhatikan di dalam menulis program adalah :
1. Struktur Program 2. Sintaks Penulisannya 3. Algoritma dari program
www.themegallery.com PAI 08113 Algoritma dan Pemrograman
Company Name
ELEMEN DASAR PEMROGRAMAN • • • •
Pengenal(variabel) dan Tipe Data Konstanta Operator Statement Input dan Output (I/O)
www.themegallery.com PAI 08113 Algoritma dan Pemrograman
Company Name
PENGENAL dan TIPE DATA Pengenal (identifier) merupakan nama yang biasa digunakan untuk suatu peubah (variable), konstanta, fungsi, atau objek lain yang didefinisikan oleh programmer.
Aturan yang berlaku bagi suatu pengenal secara umum adalah: 1.
Pengenal harus diawali dengan huruf (A .. Z, a .. z)
2.
Dapat berupa huruf, angka (0 .. 9) dan karakter garis bawah(_)
3.
Tidak boleh menggunakan Spasi
4.
Panjang pengenal boleh terdiri lebih dari 32 karakter, akan tetapi hanya 32 karakter pertama yang dianggap berarti.
5.
Case sensitive atau non Case sensitive tergantung bahasa pemrogramannya. Misal C dan C++ adalah case sentitive
www.themegallery.com PAI 08113 Algoritma dan Pemrograman
Company Name
Contoh : Benar
Salah
Jumlah
Semester 1
(ada spasi)
X, y, z
3bulan
(diawali dengan angka)
Rata_rata
modal*bunga
(ada tanda *)
Jumlah1, jumlah2
PENDEKLARASIAN VARIABEL : Cara Pendeklarasian variabel sangat tergantung dari struktur program suatu bahasa pemrogramannya.
www.themegallery.com PAI 08113 Algoritma dan Pemrograman
Company Name
Misal : C/C++:
int jumlah; float harga;
www.themegallery.com PAI 08113 Algoritma dan Pemrograman
Pascal:
Var Total : integer; Kode : String[5];
Basic:
DIM A As Integer DIM X As Single DIM Y As Long Atau luas# Double Company Name
TIPE DATA • Pengertian Tipe data menyiratkan suatu nilai yang dapat dinyatakan dalam bentuk konstanta atau variabel. • Data berdasarkan jenisnya dapat dibagi menjadi lima kelompok, yang dinamakan sebagai tipe data dasar, yaitu: – Bilangan bulat (integer) – Bilangan pecahan (float/real) presisi-tunggal – Bilangan pecahan (double/real) presisi-ganda – Karakter(character), dan – Tak bertipe(void). www.themegallery.com PAI 08113 Algoritma dan Pemrograman
Company Name
Contoh Tipe data di C/C++
www.themegallery.com PAI 08113 Algoritma dan Pemrograman
Company Name
luaslingkaran.cpp #include #include int main() { double jari_jari; double luas; cout <<“Masukkan jari-jari: "; cin >>jari_jari; luas = 3.14 * jari_jari * jari_jari; cout <<"Luas lingkaran = " <
} www.themegallery.com PAI 08113 Algoritma dan Pemrograman
Company Name
Konstanta/Literal Konstanta mirip dengan variable, namun memiliki nilai tetap. Konstanta dapat berupa nilai Integer, Float, Karakter dan String. Pendeklarasian konstanta dapat dilakukan dengan 2 cara : • Menggunakan (#define) deklarasi konstanta dengan cara ini, lebih gampang dilakukan karena akan menyertakan #define sebagai preprocessor directive. Dan sintaknya diletakkan bersama – sama dengan pernyataan #include (di atas main()). Format penulisannya adalah : #define pengenal nilai Contoh penggunaan : #define phi 3.14159265 #define Newline ‘\n’ #define lebar 100 pendeklarasian dengan #define tanpa diperlukan adanya tanda = untuk memasukkan nilai ke dalam pengenal dan juga tanpa diakhiri dengan tanda semicolon(;). www.themegallery.com PAI 08113 Algoritma dan Pemrograman
Company Name
•
menggunakan (const) Sedangkan dengan kata kunci const, pendeklarasian konstanta mirip dengan deklarasi variable yang ditambah kata depan const. Contoh : const int lebar = 100; const char tab = ‘\t’; const zip = 1212; Untuk contoh terakhir, deklarasi variable zip yang tanpa tipe data, maka compiler akan secara otomatis memasukkannya ke dalam tipe int.
PAI 08113 www.themegallery.com PAI 08113 Algoritma Algoritma dan dan Pemrograman Pemrograman
Company Name
Karakter Escape Karakter escape adalah sebuah karakter yang ditulis dengan awalan tanda \
www.themegallery.com PAI 08113 Algoritma dan Pemrograman
Company Name
OPERATOR Operator
2+3
Ekspresi
Operand Operand
Di tinjau dari jumlah operand yang dilibatkan dalam sebuah operator terdapat tiga macam oparator : 1. Operator unary, yaitu operator yang hanya melibatkan sebuah operand. +1 -1 www.themegallery.com PAI 08113 Algoritma dan Pemrograman
Company Name
2. Operator binary, yaitu operator yang hanya melibatkan dua buah operand. contoh : 2+3 5*2 5>2 3. Operator tertiary, yaitu operator yang hanya melibatkan tiga buah operand. contoh : a>b?1:0 Ekspresi diatas berarti jika a lebih besar daripada b maka ekspesi menghasilkan nilai 1, sedangkan kalu tidak maka ekspresi menghasilkan nilai 0 www.themegallery.com PAI 08113 Algoritma dan Pemrograman
Company Name
Macam-macam Operator : • Operator Assign • Operator Aritmatika • Operator Naik dan Turun • Operator Majemuk • Operator Relasional • Oprator Logika • Operator kondisi
www.themegallery.com
Company Name
Operator Assign (=)
Operator (=), akan memberikan nilai ke dalam suatu variable. artinya memberikan nilai 5 ke dalam variable a. Sebelah kiri tanda = dalam pernyataan di atas, dikenal dengan lvalue (left value) dan di sebelah kanan tanda = dikenal dengan rvalue (right value). lvalue harus selalu berupa variable, sedangkan rvalue dapat berupa variable, nilai, konstanta, hasil operasi ataupun kombinasinya. www.themegallery.com PAI 08113 Algoritma dan Pemrograman
Company Name
Operator Aritmatika Daftar operator aritmatika
•
Prioritas dalam operator menentukan urutan pengerjaan suatu ekspresi
•
C dan C++ tidak mendukung perpangkatan. Untuk menangani perpangkatan , C dan C++ menyediakan fungsi bernama pow(). Prototipe fungsi ini ada pada berkas header math.h
www.themegallery.com PAI 08113 Algoritma dan Pemrograman
Company Name
www.themegallery.com PAI 08113 Algoritma dan Pemrograman
Company Name
•
Contoh beberapa fungsi yang ada pada Berkas header math.h untuk operasi aritmatika : Fungsi
Keterangan
sqrt(x)
Memberikan nilai balik berupa akar x. Nilai balik bertipe double dan argumen juga bertipe double.
pow(x,y)
Memberikan nilai balik berupa xy. Nilai balik bertipe double dan argumen juga bertipe double.
tan(x)
Memberikan nilai balik berupa tangent x. Argumen x berupa nilai dalam satuan radians. bertipe double
sin(x)
Memberikan nilai balik berupa sinus x. Argumen x berupa nilai dalam satuan radians. bertipe double
cos(x)
Memberikan nilai balik berupa cosinus x. Argumen x berupa nilai dalam satuan radians. bertipe double
www.themegallery.com PAI 08113 Algoritma dan Pemrograman
Company Name
Fungsi
Keterangan
log(x)
Memberikan nilai balik berupa loge x. Nilai balik bertipe double dan argumen juga bertipe double.
log10(x)
Memberikan nilai balik berupa log10 x. Nilai balik bertipe double dan argumen juga bertipe double.
cabs(x)
Memberikan nilai balik berupa absolut x. Nilai balik bertipe int dan argumen juga bertipe int.
fabs(x)
Memberikan nilai balik berupa absolut x. Nilai balik bertipe double dan argumen juga bertipe double.
www.themegallery.com PAI 08113 Algoritma dan Pemrograman
Company Name
Notasi matematika dan ekspresi dalam C dan C++
www.themegallery.com PAI 08113 Algoritma dan Pemrograman
Company Name
Operator Majemuk
www.themegallery.com PAI 08113 Algoritma dan Pemrograman
Company Name
Operator Naik dan Turun (Increment, Decrement)
www.themegallery.com PAI 08113 Algoritma dan Pemrograman
Company Name
www.themegallery.com PAI 08113 Algoritma dan Pemrograman
Company Name
www.themegallery.com PAI 08113 Algoritma dan Pemrograman
Company Name
Operator Relasional
www.themegallery.com PAI 08113 Algoritma dan Pemrograman
Company Name
Operator Logika
www.themegallery.com
Company Name
Operator Kondisi
www.themegallery.com PAI 08113 Algoritma dan Pemrograman
Company Name
Input/Output
www.themegallery.com PAI 08113 Algoritma dan Pemrograman
Company Name
www.themegallery.com PAI 08113 Algoritma dan Pemrograman
Company Name
www.themegallery.com PAI 08113 Algoritma dan Pemrograman
Company Name
www.themegallery.com PAI 08113 Algoritma dan Pemrograman
Company Name
www.themegallery.com PAI 08113 Algoritma dan Pemrograman
Company Name
www.themegallery.com PAI 08113 Algoritma dan Pemrograman
Company Name
www.themegallery.com PAI 08113 Algoritma dan Pemrograman
Company Name
Latihan Latihan 1. Buatlah program untuk menghitung luas bangunan geometri (bujursangkar,lingkaran, segitiga dan trapesium). Data masukkan dibaca dari piranti masukkan dan luas bangun ditampilkan sebagai keluaran. 2. Buatlah program untuk menghitung harga total suatu barang, dimana jumlah barangnya 5, harga perunit 5203.02. 3. Buatlah program untuk penggunaan operasi aritmatika yaitu penjumlahan, pembagian, perkalian, dan pengurangan dengan variabel yang diinputkan. 4. Mencetak sejumlah deret bilangan ganjil antara 1 sampai N, dimana N dimasukkan oleh user. www.themegallery.com
Company Name