LOGO
Dasar Pemrograman C++
www.themegallery.com Company Name
PAI 08113 Algoritma dan Pemrograman
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).
Secara garis besar bahasa-bahasa pemrograman dapat dikelompokan menjadi :
www.themegallery.com Company Name
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
Low-level Language
High-level Language
Instruksi Keterangan
WRITE (“*”); Pada Pascal PRINT “*” Pada BASIC printf (“*”); Pada C
cout << “*”; Pada C++
www.themegallery.com Company Name
Penerjemah Bahasa (Translator)
Komputer hanya mengenal bahasa mesin (0dan1). Agar program dapat dijalankan perlu
diterjemahkan terlebih dahulu ke dalam bahasa mesin/kode objek.
Translator dapat berupa :
1.
Interpreter
2.
Kompiler
www.themegallery.com Company Name
Proses Penerjemahan
Kode Sumber : Instruksi 1 Instruksi 2 Instruksi 3 Urutan pengerjaan : 1. Instruksi 1 diterjemahkan kemudian dijalankan 2. Instruksi 2 diterjemahkan kemudian dijalankan 3. Instruksi 3 diterjemahkan kemudian dijalankan Kode Sumber : Instruksi 1 Instruksi 2 Instruksi 3 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
Interpreter
Kompiler
www.themegallery.com 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 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
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 Company Name
TAHAPAN
Mulai Menulis Program Menjalankan Program AdaKesalahanan Memperbaiki Program
Selesai
Tidak
Ya
www.themegallery.com 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 Company Name
pertama.cpp
#include <iostream.h> int main()
{
cout << “Selamat Belajar C++\n”; return 0; } Menyertakan berkas header iostream.h Tipe kode keluar program
Awal tubuh fungsi main ()
Pernyataan untuk memberi kode keluar program
Pernyataan untuk menampilkan string
Akhir tubuh fungsi main ()
www.themegallery.com 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.
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.
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 Company Name
ELEMEN DASAR PEMROGRAMAN
•
Pengenal(variabel) dan Tipe Data
•
Konstanta
•
Operator
•
Statement Input dan Output (I/O)
www.themegallery.com 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 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 Company Name
Misal :
C/C++:
Pascal:
Basic:
int jumlah; float harga; Var Total : integer; Kode : String[5]; DIM A As Integer DIM X As Single DIM Y As Long Atau luas# Doublewww.themegallery.com 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 Company Name
Contoh Tipe data di C/C++
www.themegallery.com Company Name
luaslingkaran.cpp
#include <iostream.h> #include <conio.h> int main() { double jari_jari; double luas;cout <<“Masukkan jari-jari: "; cin >>jari_jari;
luas = 3.14 * jari_jari * jari_jari;
cout <<"Luas lingkaran = " <<luas << "\n"; getch();
return 0; }
www.themegallery.com 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 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 Algoritma dan Pemrograman PAI 08113 Algoritma dan Pemrograman
www.themegallery.com Company Name
Karakter Escape
Karakter
escape
adalah sebuah karakter
yang ditulis dengan awalan tanda \
www.themegallery.com Company Name
OPERATOR
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
2 + 3
Operator Ekspresi Operand Operandwww.themegallery.com 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 Company Name
Macam-macam Operator :
•
Operator Assign
•
Operator Aritmatika
•
Operator Naik dan Turun
•
Operator Majemuk
•
Operator Relasional
•
Oprator Logika
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 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 PAI 08113 Algoritma dan Pemrograman
www.themegallery.com Company Name
www.themegallery.com Company Name
•
Contoh beberapa fungsi yang ada pada Berkas header math.h untukoperasi 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 x
y. Nilai balik
bertipe double dan argumen juga bertipe
double.
tan(x) Memberikan nilai balik berupa Argumen x berupa nilai dalam satuan tangent x. radians. bertipe double
sin(x) Memberikan nilai balik berupa Argumen x berupa nilai dalam satuan sinus x. radians. bertipe double
cos(x) Memberikan nilai balik berupa Argumen x berupa nilai dalam satuan cosinus x. radians. bertipe double
www.themegallery.com 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 Company Name
Notasi matematika dan ekspresi dalam C dan C++
www.themegallery.com Company Name
Operator Majemuk
www.themegallery.com Company Name
Operator Naik dan Turun (Increment, Decrement)
www.themegallery.com Company Name
www.themegallery.com Company Name
www.themegallery.com Company Name
Operator Relasional
www.themegallery.com Company Name
www.themegallery.com Company Name
Operator Kondisi
www.themegallery.com Company Name
Input/Output
www.themegallery.com Company Name
www.themegallery.com Company Name
www.themegallery.com Company Name
www.themegallery.com Company Name
www.themegallery.com Company Name
www.themegallery.com Company Name
www.themegallery.com Company Name
Latihan
Latihan1. 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.