Pemrograman C++ · Dasar-dasar C++ : 2.1 Variabel dan Assignments Variabel C++ dapat digunakan...

52
1 Pemrograman C++ Pertemuan 3 Dasar dasar C++

Transcript of Pemrograman C++ · Dasar-dasar C++ : 2.1 Variabel dan Assignments Variabel C++ dapat digunakan...

Page 1: Pemrograman C++ · Dasar-dasar C++ : 2.1 Variabel dan Assignments Variabel C++ dapat digunakan untuk menampung data bilangan atau tipe lain Variabel C++ SELALU mempunyai nilai yang

1

Pemrograman C++

Pertemuan 3

Dasar – dasar C++

Page 2: Pemrograman C++ · Dasar-dasar C++ : 2.1 Variabel dan Assignments Variabel C++ dapat digunakan untuk menampung data bilangan atau tipe lain Variabel C++ SELALU mempunyai nilai yang

2

Apa yang mesti diketahui ?

Sebelum menulis program

Mengerti masalah secara menyeluruh

Hati-hati merencanakan pendekatan solusi

Ketika menulis program

Menggunakan prinsip pemrograman yang

baik

Page 3: Pemrograman C++ · Dasar-dasar C++ : 2.1 Variabel dan Assignments Variabel C++ dapat digunakan untuk menampung data bilangan atau tipe lain Variabel C++ SELALU mempunyai nilai yang

3

Algoritma

Masalah komputasi :

Diselesaikan dengan mengeksekusi sederetan aksi

dengan urutan tertentu

Algoritma adalah prosedur untuk menentukan :

Aksi-aksi untuk dieksekusi

Urutan eksekusi

Kontrol program :

Menentukan urutan pernyataan yang mana yang

akan dieksekusi

Page 4: Pemrograman C++ · Dasar-dasar C++ : 2.1 Variabel dan Assignments Variabel C++ dapat digunakan untuk menampung data bilangan atau tipe lain Variabel C++ SELALU mempunyai nilai yang

4

Pseudocode

Pseudocode :

Semu, bahasa informal yang digunakan untuk

mengembangkan algoritma

Mirip bahasa komunikasi manusia sehari-hari

Tidak dieksekusi komputer

Digunakan untuk “merenungkan” program sebelum

coding (proses menulis kode program)

Hanya pernyataan yang dapat dieksekusi

– Tidak perlu mendeklarasikan variabel

Page 5: Pemrograman C++ · Dasar-dasar C++ : 2.1 Variabel dan Assignments Variabel C++ dapat digunakan untuk menampung data bilangan atau tipe lain Variabel C++ SELALU mempunyai nilai yang

5

Flowchart

Representasi graphikal dari algoritma

Menggunakan simbol khusus yang

dihubungkan dengan panah (garis arus)

Page 6: Pemrograman C++ · Dasar-dasar C++ : 2.1 Variabel dan Assignments Variabel C++ dapat digunakan untuk menampung data bilangan atau tipe lain Variabel C++ SELALU mempunyai nilai yang

6

Contoh algoritma :

menjumlah 3 bilangan bulat

Algoritma mencari jumlah 3 bilangan bulat

{menghitung jumlah 3 bilangan bulat, algoritma menerima masukan 3 buah bilangan

bulat, menjumlahkan, lalu mencetak hasil penjumlahannya}

Deklarasi a, b, c : integer {input}

jumlah : integer {output}

Deskripsi

read(a, b, c)

jumlah a + b + c

write(jumlah)

Page 7: Pemrograman C++ · Dasar-dasar C++ : 2.1 Variabel dan Assignments Variabel C++ dapat digunakan untuk menampung data bilangan atau tipe lain Variabel C++ SELALU mempunyai nilai yang

7

Contoh pseudocode

Input bilangan ke-1

Input bilangan ke-2

Input bilangan ke-3

Jumlahkan bilangan ke-1, bilangan ke-2 dan bilangan

ke-3

Output hasil penjumlahan

Page 8: Pemrograman C++ · Dasar-dasar C++ : 2.1 Variabel dan Assignments Variabel C++ dapat digunakan untuk menampung data bilangan atau tipe lain Variabel C++ SELALU mempunyai nilai yang

8

Contoh Flowchart

Start

End

Jumlah = A+B+C

Cetak

Jumlah

Input

A, B, C

Page 9: Pemrograman C++ · Dasar-dasar C++ : 2.1 Variabel dan Assignments Variabel C++ dapat digunakan untuk menampung data bilangan atau tipe lain Variabel C++ SELALU mempunyai nilai yang

9

Transformasi ke C++

Bahasa C++

1. #include <iostream.h>

2. main() {

3. int a,b,c,jumlah;

4. cout << "Bilangan 1 : "; cin >> a;

5. cout << "Bilangan 2 : "; cin >> b;

6. cout << "Bilangan 3 : "; cin >> c;

7. jumlah = (a + b + c);

8. cout << "Jumlah 3 bilangan = " << jumlah;

9. return 0; 10. }

Page 10: Pemrograman C++ · Dasar-dasar C++ : 2.1 Variabel dan Assignments Variabel C++ dapat digunakan untuk menampung data bilangan atau tipe lain Variabel C++ SELALU mempunyai nilai yang

10

Dasar-dasar C++

Variabel dan Penugasan

(Assignments)

Input dan Output

Tipe Data dan Ekspresi (Expressions)

Kontrol Arus Sederhana

Gaya Program (Program Style)

Page 11: Pemrograman C++ · Dasar-dasar C++ : 2.1 Variabel dan Assignments Variabel C++ dapat digunakan untuk menampung data bilangan atau tipe lain Variabel C++ SELALU mempunyai nilai yang

11

Dasar-dasar C++ :

2.1 Variabel dan Assignments

Variabel C++ dapat digunakan untuk menampung data

bilangan atau tipe lain

Variabel C++ SELALU mempunyai nilai yang disimpan di

dalamnya

Variabel C++ diimplementasikan sebagai lokasi memori.

Informasi disimpan dalam bentuk binary -- 0 dan 1.

Alamat yang sesungguhnya bukan merupakan hal yang

penting (untuk saat ini)

Page 12: Pemrograman C++ · Dasar-dasar C++ : 2.1 Variabel dan Assignments Variabel C++ dapat digunakan untuk menampung data bilangan atau tipe lain Variabel C++ SELALU mempunyai nilai yang

12

Identifier

Nama variabel (atay apapun dalam C++ yang memerlukan

nama) dinamakan identifier.

Identifier harus dimulai dengan huruf atau simbol underscore

(_) diikuti dengan huruf, angka atau simbol underscore

Contoh yang valid :

x x_1 _abc A2b ThisIsAVeryLongIdentifier

Contoh yang tidak valid :

12 3X %change myFirst.c data-1

Mengapa tidak valid?

Identifier yang sudah digunakan dalam C++ dinamakan

keywords, atau reserved words.

Page 13: Pemrograman C++ · Dasar-dasar C++ : 2.1 Variabel dan Assignments Variabel C++ dapat digunakan untuk menampung data bilangan atau tipe lain Variabel C++ SELALU mempunyai nilai yang

13

Keyword dalam C++

C++ Keywords

Keywords common to the

C and C++ programming

languages

auto break case char const

continue default do double else

enum extern float for goto

if int long register return

short signed sizeof static struct

switch typedef union unsigned void

volatile while

C++ only keywords

asm bool catch class const_cast

delete dynamic_cast explicit false friend

inline mutable namespace new operator

private protected public reinterpret_cast

static_cast template this throw true

try typeid typename using virtual

wchar_t

Page 14: Pemrograman C++ · Dasar-dasar C++ : 2.1 Variabel dan Assignments Variabel C++ dapat digunakan untuk menampung data bilangan atau tipe lain Variabel C++ SELALU mempunyai nilai yang

14

Identifier

Contoh yang tidak sah :

12 3X %change myFirst.c data-1

Mengapa tidak sah?

12 , %change, dan 3x tidak dimulai dengan huruf

myFirst.c mempunyai karakter „.‟ yang tidak diperbolehkan

data-1 mengandung karakter „-‟ yang tidak diperbolehkan

Aturan penulisan Identifier :

Identifier harus dimulai dengan huruf atau underscore diikuti

huruf, digit atau underscore.

Page 15: Pemrograman C++ · Dasar-dasar C++ : 2.1 Variabel dan Assignments Variabel C++ dapat digunakan untuk menampung data bilangan atau tipe lain Variabel C++ SELALU mempunyai nilai yang

15

Display 2.1 Program C++

#include <iostream>

using namespace std;

int main()

{

int panjang;

float lebar, keliling;

cout << "Panjang sisi (integer) : ";

cin >> panjang;

cout << "Lebarnya (float) : ";

cin >> lebar;

keliling = 2 * ( panjang + lebar );

cout << "Keliling persegi panjang dengan \n";

cout << "Panjang : \t" << panjang << " dan lebar :\t" << lebar;

cout << "\nadalah " << keliling;

return 0;

}

Page 16: Pemrograman C++ · Dasar-dasar C++ : 2.1 Variabel dan Assignments Variabel C++ dapat digunakan untuk menampung data bilangan atau tipe lain Variabel C++ SELALU mempunyai nilai yang

16

Deklarasi Variabel

Setiap variabel dalam C++ HARUS dideklarasikan

lebih dulu.

Deklarasi memperkenalkan suatu nama kepada

compiler dan menentukan tipe data yang disimpan

dalam variabel.

Deklarasi variabel berbentuk :

Type_name variable_name1, variable_name2, … ;

Contoh:

double distance;

Page 17: Pemrograman C++ · Dasar-dasar C++ : 2.1 Variabel dan Assignments Variabel C++ dapat digunakan untuk menampung data bilangan atau tipe lain Variabel C++ SELALU mempunyai nilai yang

17

Pernyataan Penugasan

Pernyataan :

keliling = 2 * (panjang + lebar);

Dalam pernyataan penugasan, bagian sisi kanan ekspresi dievaluasi (dihitung nilaina), kemudian variabel pada bagian sisi kiri diberi nilai dari bagian sisi kanan

Sintaks:

variabel = ekspresi;

Contoh : distance = rate * time;

count = count + 2;

Page 18: Pemrograman C++ · Dasar-dasar C++ : 2.1 Variabel dan Assignments Variabel C++ dapat digunakan untuk menampung data bilangan atau tipe lain Variabel C++ SELALU mempunyai nilai yang

18

Pemberian nilai awal (Variable initialization)

Sintaks :

int x = 3; double pi = 3.14159;

int x(3); double pi(3.14159);

Page 19: Pemrograman C++ · Dasar-dasar C++ : 2.1 Variabel dan Assignments Variabel C++ dapat digunakan untuk menampung data bilangan atau tipe lain Variabel C++ SELALU mempunyai nilai yang

19

Tip Programming

Gunakan nama variabel yang bermakna.

Nama yang mengikat kode program

terhadap masalah yang diselesaikan

akan membuat kode lebih mudah dibaca

dan di-debug.

Page 20: Pemrograman C++ · Dasar-dasar C++ : 2.1 Variabel dan Assignments Variabel C++ dapat digunakan untuk menampung data bilangan atau tipe lain Variabel C++ SELALU mempunyai nilai yang

2.2 Input and OutputOutput menggunakan cout

cout << jumlah_kelas << “ kelas \n”;

<< adalah insertion operator

Tidak diperbolehan membagi konstan

string e dua baris.

cout << “Baris ini tidak boleh dipisah

ke baris berikutnya.\n”;

20

Page 21: Pemrograman C++ · Dasar-dasar C++ : 2.1 Variabel dan Assignments Variabel C++ dapat digunakan untuk menampung data bilangan atau tipe lain Variabel C++ SELALU mempunyai nilai yang

Include Direktori dan Namespace

21

#include <iostream>

using namespace std;

Deklarasi untuk mempersiapkan kepustakaan iostream.

C++ membagi kumpulan namake dalam namespace. Untuk

mengakses nama dalam namespace, baris kedua di atas,

menggunakan direktif using. Ini berarti program daat

menggunakan nama dalam namespace std.

Selain nama, namespace C++ kadang juga berisi kode.

Dapat juga menggunakan <iostream.h>, sehingga

kompilator tidak memerlukan direktif.

Page 22: Pemrograman C++ · Dasar-dasar C++ : 2.1 Variabel dan Assignments Variabel C++ dapat digunakan untuk menampung data bilangan atau tipe lain Variabel C++ SELALU mempunyai nilai yang

22

Deretan Karakter Escape

\ (backslash) g mendahului karakter memberitahu

kompilator bahwa karakter berikutnya mempunyai

makna yang berbeda.

Deretan karakter escape adalahtipe dengan 2

karakter tanpa spasi.

\\ adalah karakter backslash beneran.

\n baris baru (newline)

\t karakter tab (sama dengan control-h)

\a alert, atau bell

\” double quote

Page 23: Pemrograman C++ · Dasar-dasar C++ : 2.1 Variabel dan Assignments Variabel C++ dapat digunakan untuk menampung data bilangan atau tipe lain Variabel C++ SELALU mempunyai nilai yang

23

Format untuk bilangan titik desimal

Pernyataan berikut akan menyebabkan output floating point ditampilkan dengan 2 tempat desimal.

cout.setf(ios::fixed);

cout.setf(ios::showpoint);

cout.precision(2);

//Output format:78.50

Page 24: Pemrograman C++ · Dasar-dasar C++ : 2.1 Variabel dan Assignments Variabel C++ dapat digunakan untuk menampung data bilangan atau tipe lain Variabel C++ SELALU mempunyai nilai yang

24

Input menggunakan cin

Ketika program sampai pada pernyataan :

cin >> pernyataan

Program menunggu respon input. Programmer bertanggung jawab memberitahu pengguna sedemikian sehingga menjamin kebenaran input ke program. Misal diberi komentar.

Sintaks :

cin >> number >> size;

cin >> time_to_go

>> points_needed;

cout << “Masukkan bilangan pertama : “; // komentar

cin >> bilangan;

Page 25: Pemrograman C++ · Dasar-dasar C++ : 2.1 Variabel dan Assignments Variabel C++ dapat digunakan untuk menampung data bilangan atau tipe lain Variabel C++ SELALU mempunyai nilai yang

25

2.3 Data Type and ExpressionsThe types int and double

Dalam C++, 2 dan 2.0 adalah berbeda.

2 bertipe int tidak mempunyai bagian “pecahan”

2.0 bertipe double mempunyai bagian “pecahan”

walaupun 0.

int dan float disimpan dengan cara yang berbeda

Page 26: Pemrograman C++ · Dasar-dasar C++ : 2.1 Variabel dan Assignments Variabel C++ dapat digunakan untuk menampung data bilangan atau tipe lain Variabel C++ SELALU mempunyai nilai yang

26

Tipe bilangan yang lain

Memory Type used Range Precision

short 2 bytes -32,767 NA (a.k.a. short int) to 32,767

int 4 bytes -2,147483,647 NAto 2,147483,647

long 4 bytes same as int NA

float 4 bytes approximately 7 digits

10-38 to 1038

double 8 bytes approximately 15 digits10-308 to 10308

long double 10 bytes approximately 15 digits

10-4932 to 104932

Page 27: Pemrograman C++ · Dasar-dasar C++ : 2.1 Variabel dan Assignments Variabel C++ dapat digunakan untuk menampung data bilangan atau tipe lain Variabel C++ SELALU mempunyai nilai yang

27

Tipe char (karakter) dan bool (boolean)

char adalah tipe yang dirancang untuk

menangani anggota tunggal dari himpunan

karakter ASCII.

bool adalah tipe yang ditambahkan ke C++

Draft ANSI Standard pada tahun 1995. Hanya

ada 2 harga : true dan false.

Page 28: Pemrograman C++ · Dasar-dasar C++ : 2.1 Variabel dan Assignments Variabel C++ dapat digunakan untuk menampung data bilangan atau tipe lain Variabel C++ SELALU mempunyai nilai yang

28

Page 29: Pemrograman C++ · Dasar-dasar C++ : 2.1 Variabel dan Assignments Variabel C++ dapat digunakan untuk menampung data bilangan atau tipe lain Variabel C++ SELALU mempunyai nilai yang

29

Display 2.3 Tipe char

#include <iostream>

using namespace std;

int main( )

{

char simbol1, simbol2, simbol3;

cout << "Masukkan 2 huruf awal nama anda:\n";

cin >> simbol1 >> simbol2;

cout << "Nama awal anda :\n";

cout << simbol1 << simbol2 << endl;

cout << "Ditampilkan dengan pemisah spasi :\n";

simbol3 = ' ';

cout << simbol1 << simbol3 << simbol2 << endl;

cout << "Selamat belajar.";

return 0;

}

Page 30: Pemrograman C++ · Dasar-dasar C++ : 2.1 Variabel dan Assignments Variabel C++ dapat digunakan untuk menampung data bilangan atau tipe lain Variabel C++ SELALU mempunyai nilai yang

30

Operator Aritmetika dan Ekspresi

Operator aritmatika yang sering digunakan:

Penjumlahan + Perkalian *

Pengurangan - Pembagian /

Page 31: Pemrograman C++ · Dasar-dasar C++ : 2.1 Variabel dan Assignments Variabel C++ dapat digunakan untuk menampung data bilangan atau tipe lain Variabel C++ SELALU mempunyai nilai yang

31

Operator Aritmetika dan Ekspresi

Aritmetika dengan + = dan * dapat digunakan untuk tipe integer dan floating point.

Aritmetika dengan / khusus untu tipe bilangan floating point. Akan memiliki harga berbeda jika menggunakan tipe integer (short, int, long)

Pembagian integer hasilnya akan DIPOTONG (TRUNCATING) – menghilangkan bagian pecahan.

Page 32: Pemrograman C++ · Dasar-dasar C++ : 2.1 Variabel dan Assignments Variabel C++ dapat digunakan untuk menampung data bilangan atau tipe lain Variabel C++ SELALU mempunyai nilai yang

32

Pembagian / dan modulus % operasi yang komplemen

Mod (modulus) %, hanya untuk tipe integer.

4 12 / 3 adalah quotient

3 12

12

0 12 % 3 = 12 mod 3 is the remainder

4 14 / 3 quotient = 3 THIS IS NOT 4.66

3 14

12

2 14 % 3 remainder after dividion

S

Operator Aritmetika dan Ekspresidivision /, and modulus %, for integer values

Page 33: Pemrograman C++ · Dasar-dasar C++ : 2.1 Variabel dan Assignments Variabel C++ dapat digunakan untuk menampung data bilangan atau tipe lain Variabel C++ SELALU mempunyai nilai yang

33

Operator Aritmetika dan Ekspresi Precedence

Ketika dua operator muncu dalam ekspresi

aritmetika, terdapat aturan PRESEDENSI.

Hitunglah ekspresi berikut ,

2 + 3 * 4

Gunakan tanda kurung bila :

(2 + 3) * 4

Page 34: Pemrograman C++ · Dasar-dasar C++ : 2.1 Variabel dan Assignments Variabel C++ dapat digunakan untuk menampung data bilangan atau tipe lain Variabel C++ SELALU mempunyai nilai yang

34

2.4 Kontrol arus sederhanaMekanisme percabangan sederhana

Membuat keputusan dalam program komputer memerlukan peruabahan

eksekusi dari instruksi ke instrukusi berikutnya dan seterusnya. Ini

dinamakan Kontrol arus.

Ada 2 tipe kontrol arus : pemilihan (selection) dan perulangan (looping).

Looping mengulang aksi.

Selection memilih di antara beberapa aksi.

Selection:

if (ekspresi) ekspresi kontrol mengembalikan harga boolean

action1; Dieksekusi jika ekspresi bernilai true

else

action2; Dieksekusi jika ekspresi bernilai false

Page 35: Pemrograman C++ · Dasar-dasar C++ : 2.1 Variabel dan Assignments Variabel C++ dapat digunakan untuk menampung data bilangan atau tipe lain Variabel C++ SELALU mempunyai nilai yang

35

Operator Pembandingan

C++ menyediakan operator pembandingan untuk membuat

keputusan dalam program komputer. Operator

mengembalikan nilai bertipe bool: true atau false.

Math C++ C++ Math

Symbol English Notation Sample Equivalent

= equal to == x + 7 == 2 * y x + 7 = 2y

not equal to != ans != „n‟ ans „n‟

< less than < count < m + 3 cout < m + 3

less than <= time <= limit time limitor equal to

> greater than > time > limit time > limit

greater than >= age >= 21 age 21or equal to

Page 36: Pemrograman C++ · Dasar-dasar C++ : 2.1 Variabel dan Assignments Variabel C++ dapat digunakan untuk menampung data bilangan atau tipe lain Variabel C++ SELALU mempunyai nilai yang

36

Operator Logika

Operator „and‟ : &&

Sintaks:

(Comparison_1) && (Comparison_2)

Contoh :

bool jangkauan;

jangkauan = (0 < score) && (10 < score);

berarti score nilainya berada di antara 0 dan 10

Operator „or‟ : ||

Contoh – dalam pernyataan if-else

if ( (x ==1) || (x == y) )

cout << “x is 1 or x equals y. \n”;

else

cout < “x is neither 1 nor equal to y.\n”;

Page 37: Pemrograman C++ · Dasar-dasar C++ : 2.1 Variabel dan Assignments Variabel C++ dapat digunakan untuk menampung data bilangan atau tipe lain Variabel C++ SELALU mempunyai nilai yang

37

PITFALL: pertidaksamaan string

Misalkan x, y dan z berharga integer.

if (x < y < x) // ini SALAH walau akan tetap dikompilasi. cout << “z antara x dan y” ;

Mengapa salah ?

Dalam matematika x < y < z adalah kependekan x < y && y < z.

Dalam C++, berbeda dengan matematika. Dalam C++ aturan precedensi, x < y < z dievaluasi sebagai :

(x < y) < z

Ekspresi dalam kurung bernlai boolean. Operator < memerlukan tipe yang sama pada kedua sisi. Harga boolean dikonversi ke harga int 0 (untuk false) atau 1 (untuk true). Bila 0 <z atau 1 < z hasilnya jawaban adalah salah!

Page 38: Pemrograman C++ · Dasar-dasar C++ : 2.1 Variabel dan Assignments Variabel C++ dapat digunakan untuk menampung data bilangan atau tipe lain Variabel C++ SELALU mempunyai nilai yang

38

PITFALL: Gunakan == sebagai ganti =

if (x = 12)cout << “x is equal to 12”;

elsecout << “x is not equal to 12”; // tidak pernah dieksekusi

Ekspresi

x = 12 TELAH di-ASSIGN harga 12 ke x.

Ekspresi x = 12 mengembalikan 12, yang dikonversi ke

harga boolean true.

TULISLAH :

if (x == 12)cout << “x is equal to 12”;

elsecout << “x is not equal to 12”;

Page 39: Pemrograman C++ · Dasar-dasar C++ : 2.1 Variabel dan Assignments Variabel C++ dapat digunakan untuk menampung data bilangan atau tipe lain Variabel C++ SELALU mempunyai nilai yang

39

Mekanisme Perulangan Sederhana

C++ menyediakan pernyataan perulangan :

while

for

do while

Bagian kode yang dieksekusi perulangan

dinamakan badan.

Setiap eksekusi perulangan badan dinamakan

iterasi.

Page 40: Pemrograman C++ · Dasar-dasar C++ : 2.1 Variabel dan Assignments Variabel C++ dapat digunakan untuk menampung data bilangan atau tipe lain Variabel C++ SELALU mempunyai nilai yang

40

Display 2.10 Perulangan while

#include <iostream>

using namespace std;

int main( )

{

int count_down;

cout << "Berapa kali ucapan disampaikan? ";

cin >> count_down;

while (count_down > 0)

{

cout << "Assalamualaikum \n";

count_down = count_down - 1;

}

cout << endl;

cout << "Sudah semua\n";

return 0;

}

Page 41: Pemrograman C++ · Dasar-dasar C++ : 2.1 Variabel dan Assignments Variabel C++ dapat digunakan untuk menampung data bilangan atau tipe lain Variabel C++ SELALU mempunyai nilai yang

41

Display 2.13 Perulangan do-while

#include <iostream>

using namespace std;

int main( )

{

char jawab;

do

{

cout << "Assalamualaikum wr.wb.\n";

cout << "Anda ingin salam lagi?\n"

<< "Tekan y jika ya, t jika tidak,\n"

<< "kemdian tekan return: ";

cin >> jawab;

} while (jawab == 'y' || jawab == 'Y');

cout << "Selamat belajar\n";

return 0;

}

Page 42: Pemrograman C++ · Dasar-dasar C++ : 2.1 Variabel dan Assignments Variabel C++ dapat digunakan untuk menampung data bilangan atau tipe lain Variabel C++ SELALU mempunyai nilai yang

42

Pitfall: semicolon yang berbahaya !!

Loop body dengan beberapa pernyataan

while(ekspresi boolean)

{

beberapa pernyataan

}

Loop body dengan satu pernyataan

while(ekspresi boolean)

statement;

Semicolon di sini akan

menyebabkan infinite

loop.

Semicolon di sini akan

menyebabkan infinite

loop.

Page 43: Pemrograman C++ · Dasar-dasar C++ : 2.1 Variabel dan Assignments Variabel C++ dapat digunakan untuk menampung data bilangan atau tipe lain Variabel C++ SELALU mempunyai nilai yang

43

Pitfall: Jangan LUPA semicolon !!

Loop body dengan beberapa pernyataan

do { beberapa pernyataan

} while(ekspresi boolean); Jangan lupa semicolon

di sini.

Loop body dengan satu pernyataan

do

pernyataan;

while(ekspresi boolean); Jangan lupa semicolon

di sini.

Page 44: Pemrograman C++ · Dasar-dasar C++ : 2.1 Variabel dan Assignments Variabel C++ dapat digunakan untuk menampung data bilangan atau tipe lain Variabel C++ SELALU mempunyai nilai yang

44

Operator Increment dan decrement

C++ menyediakan operator ++ dan --. Masing-masing dapat diletakkan sebelum maunpun sesudah variabel (prefiks atau postfiks).

Misal :

variabel x.

Increment dapat ditulis x++ atau ++x.

Decrement dapat ditulis x-- atau --x.

Gunakan x++; sebagai sinonim untuk x = x + 1;

dan x-- sebagai sinonim untuk x = x - 1;

Page 45: Pemrograman C++ · Dasar-dasar C++ : 2.1 Variabel dan Assignments Variabel C++ dapat digunakan untuk menampung data bilangan atau tipe lain Variabel C++ SELALU mempunyai nilai yang

45

Hati-hati !!! Infinite Loops

Perulangan yang menggunakan ekspresi kontrol Boolean bernilai true akan selalu tidak pernah berhenti. Perulangan yang demikian dinamakan infinite loop.

Infinite loop merupakan kesalahan BESAR dan FATAL.

Contoh :

Loop yang berhenti: Infinite loop:

x = 2; x = 1;

while (x != 12) while (x != 12)

{ {

cout << x << endl; cout << x << endl;

x = x + 2; x = x + 2;

} }

Mengapa?

Page 46: Pemrograman C++ · Dasar-dasar C++ : 2.1 Variabel dan Assignments Variabel C++ dapat digunakan untuk menampung data bilangan atau tipe lain Variabel C++ SELALU mempunyai nilai yang

46

Nilai pertambahan investasi

#include <iostream>

using namespace std;

int main() {

double balance = 50.00;

int count = 0;

cout << "Program berikut adalah program untuk mengaumulasi nilai tabungan \n"

<< "sampai minimal $100, dengan saldo awal $50.\n"

<< "Bunga yang diberikan sebesar 5% per bulan.\n";

while ( balance < 100.00 ) {

balance = balance + 0.05 * balance;

count++;

}

cout << "Sesudah " << count << " bulan,\n";

cout.setf( ios::fixed );

cout.setf( ios::showpoint );

cout.precision( 2 );

cout << "Saldo anda sebesar $" << balance << endl;

return 0;

}

Page 47: Pemrograman C++ · Dasar-dasar C++ : 2.1 Variabel dan Assignments Variabel C++ dapat digunakan untuk menampung data bilangan atau tipe lain Variabel C++ SELALU mempunyai nilai yang

47

2.5 Programming Style Komentar

Bagian program yang sulit unuk dipelajari

biasanya diberikan komentar

Komentar harus selalu terkait dengan solusi

masalah, termasuk “trik” kode yang dibuat.

/* komentar model pertama */

Bisa menyangkut banyak baris.

// komentar model kedua

mulai dari // sampai akhir baris.

Page 48: Pemrograman C++ · Dasar-dasar C++ : 2.1 Variabel dan Assignments Variabel C++ dapat digunakan untuk menampung data bilangan atau tipe lain Variabel C++ SELALU mempunyai nilai yang

48

Indentasi

Indentasi : element yang dimaksudkan sebagai

kelompok.

if-else, while, dan do-while harus diindentasikan.

Bagian program yang terkena perulangan juga

diindentasikan.

Page 49: Pemrograman C++ · Dasar-dasar C++ : 2.1 Variabel dan Assignments Variabel C++ dapat digunakan untuk menampung data bilangan atau tipe lain Variabel C++ SELALU mempunyai nilai yang

49

Koentar diawal Program

Dalam sebuah program, ada baiknya diberikan komentar

untuk menggambarkan informasi penting dari program

yang bersangkutan.

Isi komentar biasanya menyangkut :

Nama file

Nama Pembuat

Alamat pembuat

Kegunaan program

Apa yang dilakukan program

Tanggal dan versi program

Page 50: Pemrograman C++ · Dasar-dasar C++ : 2.1 Variabel dan Assignments Variabel C++ dapat digunakan untuk menampung data bilangan atau tipe lain Variabel C++ SELALU mempunyai nilai yang

50

Konstanta

Nama yang dideklarasikan sebagai kostanta

diawali dengan keyword const.

Sebaiknya menggunakan huruf besardengan

pemisah underscore.

Contoh:

const int BRANCH_COUNT = 10;

const double TAX_RATE = 0.04;

const float PHI = 3.14;

Page 51: Pemrograman C++ · Dasar-dasar C++ : 2.1 Variabel dan Assignments Variabel C++ dapat digunakan untuk menampung data bilangan atau tipe lain Variabel C++ SELALU mempunyai nilai yang

51

Summary (1 of 2)

Use meaningful name for variables.

Check that variables have been declared before use,

and have the correct data type.

Be sure variables have been assigned a value before

use. This can be done by initialization at definition, or

by assigning a value before first use.

Use enough parentheses to make the order of

operations clear. Remember, code is meant to be read,

which implies writing for an audience.

Always have your program prompt the user for

expected input. Always echo user‟s input.

An if-else statement chooses between two blocks of

code to execute. An if statement chooses whether to

execute a block of code.

Page 52: Pemrograman C++ · Dasar-dasar C++ : 2.1 Variabel dan Assignments Variabel C++ dapat digunakan untuk menampung data bilangan atau tipe lain Variabel C++ SELALU mempunyai nilai yang

52

Summary (2 of 2)

A do-while always executes its body at least once. A

while loop may not execute its body at all.

Almost all numeric constants should be given

meaningful names to be used instead of the numbers.

Use the const modifier to do this.

Use indenting, spacing, and line break patterns similar

to the sample code to group sections of code such as

the body of a while statement, or the affirmative and

negative clauses of an if-else statement.

Insert commentary to explain major subsections of your

code, or to explain any unclear part of your program.

Make your code clear. Remember, a program is meant

to be read by programmers, not just compilers.