BAB I. PENGENALAN C++

15
1 BAB I STRUKTUR UMUM DAN ELEMEN –ELEMEN POKOK PROGRAM I. Dasar Teori A. Struktur Umum Program Program C/C++ harus diawali dengan pengarah praprosesor. Pengarah ini berfungsi untuk membaca pustaka-pustaka tertentu yang telah terdefinisikan dalam program dengan cara mendefinisikan file-judul (header file) di awal program. File- judul berisi deklarasi fungsi-fungsi yang terkandung dalam suatu pustaka tertentu, sedang deklarasi tubuh fungsi biasanya dikandung oleh file-sumbernya (source file). File-judul diakhiri dengan ekstensi .h dan .hpp, sedang file-sumber diakhiri dengan ekstensi .c dan .cpp. Akhiran ekstensi .h dan .c dipakai untuk pustaka yang ditulis dalam bahasa C, sedang akhiran ekstensi .hpp dan .cpp untuk pustaka yang ditulis dalam bahasa C++. Bentuk umum pendeklarasian pengarah praprosesor adalah atau Jika bentuk pertama (# include <nama_file>) dipakai maka pencarian file pustaka akan dilaksanakan pada direktori khusus (direktori include). Sedang jika bentuk kedua (# include nama_file “) dipakai maka pencarian file pustaka pertama kali akan dilaksanakan pada direktori aktif tempat program sumber dan seandainya tidak ditemukan maka pencarian akan dilanjutkan pada direktori lain yang sesuai dengan perintah pada sistem operasi (PATH). Contoh 1.1: #include <stdio.h> #include <iostream.h> #include “awal.hpp” Program C/C++ pada dasarnya tersusun atas sejumlah blok-blok fungsi . Sebuah program C/C++ minimal mengandung sebuah fungsi yakni fungsi utama atau fungsi main(). Setiap fungsi terdiri atas satu atau beberapa pernyataan. Pernyataan-pernyataan yang terdapat dalam fungsi main() secara keseluruhan disebut sebagai tubuh program. Setiap pernyataan dalam suatu fungsi main() diakhiri dengan tanda titik-koma (;).Pernyataan dalam tubuh fungsi main() dapat berupa deklarasi suatu variabel, konstanta, operai aritmetika, operasi i/o dan berbagai macam operasi lainnya. Selain pernyataan atau perintah, dalam tubuh fungsi juga dapat diisi komentar untuk dokumentasi program. Komentar tidak ikut diproses pada saat eksekusi program. Komentar diawali dengan tanda dua garis miring (\\) ( atau diawali dengan tanda /* dan diakhiri dengan tanda*/ ). Tubuh fungsi diawali dan diakhiri dengan tanda kurung kurawal buka dan tutup ( { } ). Bentuk umum fungsi utama atau fungsi main() adalah : # include <nama_file> # include “nama_file”

description

Pengenalan C++

Transcript of BAB I. PENGENALAN C++

Page 1: BAB I. PENGENALAN C++

1

BAB ISTRUKTUR UMUM

DAN ELEMEN –ELEMEN POKOK PROGRAM

I. Dasar TeoriA. Struktur Umum Program

Program C/C++ harus diawali dengan pengarah praprosesor. Pengarah iniberfungsi untuk membaca pustaka-pustaka tertentu yang telah terdefinisikan dalamprogram dengan cara mendefinisikan file-judul (header file) di awal program. File-judul berisi deklarasi fungsi-fungsi yang terkandung dalam suatu pustaka tertentu,sedang deklarasi tubuh fungsi biasanya dikandung oleh file-sumbernya (source file).File-judul diakhiri dengan ekstensi .h dan .hpp, sedang file-sumber diakhiri denganekstensi .c dan .cpp. Akhiran ekstensi .h dan .c dipakai untuk pustaka yang ditulisdalam bahasa C, sedang akhiran ekstensi .hpp dan .cpp untuk pustaka yang ditulisdalam bahasa C++. Bentuk umum pendeklarasian pengarah praprosesor adalah

atau

Jika bentuk pertama (# include <nama_file>) dipakai maka pencarian filepustaka akan dilaksanakan pada direktori khusus (direktori include). Sedang jikabentuk kedua (# include “ nama_file “) dipakai maka pencarian file pustakapertama kali akan dilaksanakan pada direktori aktif tempat program sumber danseandainya tidak ditemukan maka pencarian akan dilanjutkan pada direktori lain yangsesuai dengan perintah pada sistem operasi (PATH).

Contoh 1.1:#include <stdio.h>#include <iostream.h>#include “awal.hpp”

Program C/C++ pada dasarnya tersusun atas sejumlah blok-blok fungsi. Sebuah program C/C++ minimal mengandung sebuah fungsi yakni fungsiutama atau fungsi main(). Setiap fungsi terdiri atas satu atau beberapapernyataan. Pernyataan-pernyataan yang terdapat dalam fungsi main()secara keseluruhan disebut sebagai tubuh program. Setiap pernyataan dalamsuatu fungsi main() diakhiri dengan tanda titik-koma (;).Pernyataan dalamtubuh fungsi main() dapat berupa deklarasi suatu variabel, konstanta, operaiaritmetika, operasi i/o dan berbagai macam operasi lainnya.

Selain pernyataan atau perintah, dalam tubuh fungsi juga dapat diisikomentar untuk dokumentasi program. Komentar tidak ikut diproses padasaat eksekusi program. Komentar diawali dengan tanda dua garis miring (\\) (atau diawali dengan tanda /* dan diakhiri dengan tanda*/ ). Tubuh fungsidiawali dan diakhiri dengan tanda kurung kurawal buka dan tutup ( { } ).Bentuk umum fungsi utama atau fungsi main() adalah :

# include <nama_file>

# include “nama_file”

Page 2: BAB I. PENGENALAN C++

2

Bentuk struktur umum program dalam bahasa pemprogaman C++adalah sebagai berikut :

Contoh 1.2:# include <iostream.h> // praprosesor untuk pustaka i/o streamvoid main(){

int a, b,c ; // deklarasi variabela=2; b=3; c=2*3; // pernyataan dan operasi

cout << c ; }

B. PENGENALPengenal (Identifier) merupakan nama, simbol atau kata-kata yang

dipakai untuk mendefinisikan variabel, konstanta, fungsi atau objek yang laindalam suatu program.

Aturan dalam mendefinisikan pengenal:Pengenal harus diawali dengan huruf (A..Z, a..z) atau karakter garisbawah (_). Karakter berikutnya dapat berupa huruf, angka (0..9), karaktergaris bawah atau tanda dollar ($)Panjang pengenal maksimal 32 karakterPengenal tidak boleh sama dengan kata kunci (keyword). Kata kunciadalah kata-kata yang sudah terdefinisikan secara baku dalam program.Daftar kata kunci dapat dilihat pada tabel 1.1 ber

Tabel 1. 1 Daftar kata kunciasm else Operator templeauto enum Private thisbreak extern Protected typedefcase float Public union

# pengarah_praprosesor . .void main () { tubuh program }

void main (){

pernyataan ; // komentar . tubuh program . . }

Page 3: BAB I. PENGENALAN C++

3

Tabel 1. 1 Daftar kata kunci (lanjutan)char for Register unsignedclass friend Return virtualconst goto Short voidcontinue If Signed volatiledefault inline Sizeof whiledelete Int Staticdo long Structdouble new Switch

C. TIPE DATATipe data menunjukkan jenis data yang dipakai di dalam mendefinisikan

suatu variabel atau konstanta. Tipe data dasar adalah tipe data yang dapatditurunkan menjadi berbagai tipe data turunan lainnya. Terdapat tujuh tipedata dasar pada c++, yakni char, int, short, long, float, double dan longdouble. Dari tipe data dasar ini dapat diturunkan berbagai jenis tipe dataturunan yang lain. Tipe data char dapat juga dipakai untuk mendefinisikansuatu karakter. Tipe data char, int, short dan long dipakai untukmendefinisikan bilangan bulat. Tipe data float, double dan long doubledipakai untuk mendefinisikan bilangan pecahan.

Tipe data terkait dengan pengalokasian ruang memori yang akandigunakan program. Alokasi memori untuk berbagai tipe data dasar dapatdilihat pada tabel 1.2.

Tabel 1. 2. Alokasi memori untuk berbagai tipe data dasarTipe Data Alokasi

Memori(byte)Jangkau

NilaiJumlah

Digit PresisiChar 1 -128 s/d +127 -Int 2 -32768 s/d +32767 -Long 4 -2.147.438.648 s/d

+2.147.438.647-

Float 4 3.4 x 10-38 s/d 3.4 x10+38

6 – 7

double 8 1.7 x 10-308 s/d 1.7 x10+308

15-16

longdouble

10 1.1 x 10-4932 s/d 1.1 x10+4932

19

Penambahan kata kunci unsigned di depan tipe data int, long danchar berarti menggeser range atau kisaran tipe data ini ke kisaran positifyang dimulai dari nol. Sebagai contoh tipe data int memiliki nilai berkisar –32768 s/d 32767, maka seteleh diberi tambahan unsigned didepannya(unsigned int) kisarannya menjadi 0 s/d 65535.

D. VARIABEL DAN KONSTANTAVariabel adalah tempat untuk menampung suatu nilai data yang

berubah-ubah dalam program selama eksekusi program berlangsung.Sebelum dipakai variabel harus dideklarasikan terlebih dahulu.Pendeklarasian variabel berarti memesan ruang memori dan menentukanjenis data yang dapat disimpan didalamnya. Bentuk umum pendeklarasiansuatu variabel adalah:

tipe daftar_variabel ;

Page 4: BAB I. PENGENALAN C++

4

Pada pendeklarasian di atas, tipe berupa salah satu jenis tipe datatertentu yang dipilih sesuai dengan alokasi memori dan jangkau nilai datayang akan digunakan. Sedang daftar_variabel merupakan nama pengenalyang diberikan untuk variabel bersangkutan.

Contoh 1.3:int jumlah;float harga_unit, harga_total;char nilai;

Suatu variabel perlu diberi nilai terlebih dahulu sebelum dipakai.Pemberian nilai suatu variabel harus sesuai dengan jangkau nilai dari tipedata yang dipakai. Nilai suatu variabel dengan tipe data char harus diapitdengan tanda petik tunggal di atas (‘).

Contoh 1.4:Jumlah = 10;harga_unit = 12.5;nilai = ‘C’;Jika suatu variabel diisi dengan nilai di luar jangkauanya, maka nilai

yang akan tersimpan akan diubah sesuai dengan jangkauannya. Misalnya,bila suatu variabel bertipe int diberi nilai 75000, maka yang tersimpan padavariabel itu menjadi 9464 sebab nilai positip terbesar pada tipe int adalah32767.

Pendeklarasian variabel juga dapat langsung diikuti inisialisasi(pengisian nilai awal) suatu variabel. Bentuk umumnya adalah :

Contoh 1.5:int jumlah = 100;float harga_unit =30.2 , harga_total =0.78;char nilai =’A’;

Pengisian tipe data karakter (char) dilaksanakan dengan meletakkankarakter dalam tanda petik tunggal (‘ ’ ), seperti contoh diatas. Karakter yangdidahului oleh tanda garis miring (\) mempunyai arti tersendiri. Karakter-karakter yang didahului oleh tanda garis miring (\) sering disebut sebagaikarakter-karakter khusus. Tabel 1.3 menunjukkan karakter-karakter khususdalam C++.

Tabel 1.3 Karakter-karakter khusus dalam C++Karakter Keterangan

\ 0 Karakter ber-ASCII nol (Karakter null)\a Karakter bel\b Karakter backspace\f Karakter formfeed (ganti halaman)\n Karakter newline (pindah baris)\r Karakter carriage return (ke awal baris) tanpa linefeed\t Karakter tab horisontal\v Karakter tab vertikal\\ Karakter \\’ Karakter ‘

tipe daftar_variabel =nilai ;

Page 5: BAB I. PENGENALAN C++

5

Tabel 1.3 Karakter-karakter khusus dalam C++ (lanjutan)Karakter Keterangan

\” Karakter “\? Karakter ?\ooo Karakter yang nilai oktalnya 000 (3 digit oktal)\xhh Karakter yang nilai heksadesimalnya hh (dua digit heksa

desimal)

Konstanta adalah suatu tempat menampung data yang memiliki nilaitetap selama eksekusi program. Konstanta dideklarasikan dan diberi nilaidiawal program. Selama eksekusi program nilai yang dikandung pada suatukonstanta bersifat tetap dan tidak dapat dirubah. Bentuk umum deklarasisuatu konstanta adalah :

Atau

Contoh 1.6:const float pi ;pi = 3.14 ;

const int maxint ; maxint= 100 ;const char nilai ;nilai =’B’ ;

Contoh 1.7 :const float pi = 3.14 ;const int maxint = 100 ;const char nilai =’B’ ;

E. STRINGString merupakan deretan karakter yang diawali dan akhiri dengan

tanda petik ganda (“), misalnya “ C++”. String disimpan dimemori secaraberurutan. Setiap karakter menempati memori sebesar 1 byte. Setelahkarakter yang terakhir terdapat karakter NULL (karakter dengan nilai ASCIIsama dengan nol dan disimbolkan dengan ‘\0’). Bila suatu string hanya berisikarakter NULL, maka string itu disebut string kosong. Dengan demikian,string pada dasarnya adalah larik karakter yang diakhiri oleh karakter NULL.Bentuk pemakaian memori oleh string “C++” di atas adalah :

Gambar 1.1 Format string “ C++”

const tipe nama_konstanta;nama_konstanta = nilai ;

C + + /0

awal stringakhir string

karakter NULL

const tipe nama_konstanta= nilai;

Page 6: BAB I. PENGENALAN C++

6

String dapat disimpan di varibel string dengan panjang tertentu. Untukmemasukkan string yang terdiri dari satu buah kata (tidak ada pemisahan olehspasi kosongnya) dari keyboard dapat dilaksanakan dengan fungsi cin diikutioperator >>. Sedang untuk memasukkan string yang terdiri dari beberapa katadapat dilakukan dengan fungsi cin.get() dan fungsi cin.getline(). Fungsicin.get() dipakai jika dilakukan pembacaan string yang mengabaikan spasi putih(spasi, tab atau newline (\n)). Sedang fungsi cin.getline() dipakai untukmerekam string per baris, karena ia memperhitungkan spasi putih termasuktanda newline.

Contoh 1.8:char teks[15] ; //string dengan panjang maksimal 14 karaktercout << “Masukkan sebuah kata” << endl;cin >> teks ; // memasukkan string dari keyboardcout << “ Kata yang anda masukkan adalah ” << teks <<endl;

Contoh 1.9:char pesan[60] ; //string dengan panjang maksimal 59 karaktercout << “Masukkan pesan anda” << endl;cin.getline ( pesan, sizeof (pesan)); // memasukkan string dari keyboardcout << “ Pesan yang anda masukkan adalah ” << pesan <<endl;

Variabel string dapat diinisialisasi (diberi nilai awal) pada permulaanprogram. Oleh karena variabel string pada dasarnya adalah jenis larik khusus,yakni larik karakter, maka inisialisasinya hampir menyerupai inisialisasi larikkarakter.

Contoh 1.10:char nama [ ] = {‘S’, ’u’, ’b’, ’a’, ’n’, ’d’, ’r’, ’i’, ’o’, ’\0’};char bahasa [ ] ={‘b’ , ‘a’, ‘h’, ‘a’, ‘s’, ‘a’, ‘\0’, ‘C’, ‘+’, ‘+’, ‘\0’} ;

Penyalinan variabel string harus dilakukan dengan menggunakan formatpenyalinan larik atau dengan menggunakan fungsi strcopy(string,string) yangada pada pustaka string.h.

Contoh 1.11:# include <iostream.h># include <string.h>void main(){

char nama[ ] = ” Marjiyo”;char data[20] ;strcpy(data, nama);cout << “Isi data :” <<data <<endl;

}

F. OPERATOROperator merupakan simbol atau karakter yang dipakai dalam program untuk

melakukan suatu operasi atau manipulasi, seperti menjumlahkan dua nilai, mengisinilai ke suatu variabel atau membandingkan kesamaan dua buah nilai. Terdapatbeberapa tipe operator dalam program C/C++ yakni operator binary, operator unary ,

Page 7: BAB I. PENGENALAN C++

7

operator ternary, operator penugasan, operator manipulasi bit , operator penaikan danpenurunan, operator majemuk, operator relasi dan operator logika.

Jenis-Jenis Operator dalam program C/C++ :o Operator penugasan

Operator penugasan adalah operator yang berfungsi untukmemberikan sembarang nilai ke suatu variabel. Operator ini berupatanda sama dengan (=). Operator ini dapat dikenakan sebagaiungkapan atau berdiri sendiri sebagai pernyataan.

Contoh 1.12:a =1 ; // ungkapanb = 2 +a ; // pernyataanc = 2 +(d=2) // penugasan dalam ungkapana=b=c=d= 34 ; // penugasan berganda

o Operator binerOperator biner adalah adalah operator yang dikenakan terhadap

dua buah nilai (operand). Jenis-jenis operator biner dapat dilihat padatabel 1.4.

Tabel 1.4. operator binerOperator Keterangan Contoh

* Perkalian 2 * 3/ Pembagian 8 / 2

% Sisa pembagian ( modulus ) 9 % 2+ Penjumlahan 7 + 3

- Pengurangan 11 - 2

Contoh 1.13:float a , b, c, d, e, f;a = 2.1 ; b = 4.6c = a* b; d = a / b ; e = a + b; f = a – bcout << “ a = ” <<a <<endl;cout <<” b = ” <<b <<endl;cout << “ Hasil perkalian “ << a <<” dengan ” << b

<< “adalah” << c << endl;cout << “ Hasil pembagian “<< a <<” oleh ” << b

<< “adalah” << d<< endl;cout << “ Hasil penjumlahan “<< a <<” dengan ” << b

<< “adalah” << e << endl;cout << “ Hasil pengurangan “<< a <<” oleh ” << b

<< “adalah” << f<< endl;

o Operator unaryOperator unary adalah operator yang hanya dikenakan terhaap

satu operand. Jenis-jenis operator unary dapat dilihat pada tabel 1.5.

Tabel 1.5 operator unaryOperator Keterangan Contoh

- Tanda minus -2+ Tanda plus +3

Page 8: BAB I. PENGENALAN C++

8

Contoh 1.14:int a , b, c, d, e, f;a = 10 ; b = 21;c = -a ;d = +b ;cout <<” Minus dari ” << a <<” adalah” << c ;

o Operator ternaryOperator ternary adalah operator yang melibatkan tiga operand.Contoh 1.15 :

float a , b, c, d, e, f;a = 2.1 ; b = 4.6 ;c = (a>b) ? a : b ; // a lebih kecil dari b maka c diisi b

o Operator manipulasi bitOperator manipulasi bit berfungsi untuk memanipulasi data dalam

bit, C++ menyediakan enam buah operator manipulasi bit seperti yangterlihat pada tabel 1. 6 berikut .

Tabel 1.6 Operator manipulasi bit (bitwise)Operator Keterangan Contoh

<< Geser bit ke kiri (left shift) 25 << 2>> Geser bit ke kanan (right shift) 25 >> 2& Bitwise AND (dan) 25 & 2| Bitwise Or (atau) 25 | 2 ^ Bitwise XOR 25 ^ 2~ Bitwise NOT (komplemen) ~ 25

Contoh 1.16 :unsigned char x =93 ; y =40 ;cout << “ Nilai x semula = ” << x << endl;x <<1 ;cout << “ Nilai x setelah digeser ke kiri 1 kali =” <<x << endl;cout << “ Nilai y semula = ” << y << endl;y>>2 ;cout << “Nilai y setelah digeser ke kanan 2 kali = “ << y <<endl ;

o Operator penaikan dan penurunanOperator penaikan atau penurunan adalah operator yang

digunakan untuk menaikkan (increment) atau menurunkan(decrement) suatu nilai variabel sebesar satu. Tabel 1.7 menunjukkanvariasi operator penaikan dan penurunan.

Tabel 1. 7 operator penaikan dan penurunanOperator Keterangan Contoh

++ Menaikkan satu nilai variabel a++-- Mengurani satu nilai variabel a--

Contoh 1.17:int a , b ;a = 2; b=10 ;cout << “Nilai mula-mula ” << a << “ dan ” << b<< endl;a++; b++ ;

Page 9: BAB I. PENGENALAN C++

9

cout << “Nilai setelah dinaikkan ” << a << “ dan ” << b<< endl;a-- ; b--;cout << “Nilai setelah diturunkan” << a << “ dan ” << b<< endl;

o Operator majemukOperator majemuk adalah operator yang digunakan untuk

memendekkan operasi-operasi penugasan. Tabel 1. menunjukkanjenis-jenis operator majemuk dan contoh-contohnya.

Tabel 1.8 operator majemukOperator Contoh Keterangan

+= x + = 2; Kependekan x = x + 2 ;-= x - = 2; Kependekan x = x – 2 ;*= x * = 2; Kependekan x = x * 2 ;/= x / = 2; Kependekan x = x / 2 ;%= x % = 2; Kependekan x = x % 2 ;<<= x << = 2; Kependekan x = x << 2 ;>>= x >> = 2; Kependekan x = x >> 2 ;&= x & = 2; Kependekan x = x & 2 ;|= x | = 2; Kependekan x = x | 2 ;^= x ^ = 2; Kependekan x = x ^ 2 ;

Contoh 1.18:int a , b ;a = 2; b=10 ;cout << “Nilai mula-mula ” << a << “ dan ” << b<< endl;a += 2; b+= 3 ;cout << “Nilai setelah dinaikkan ” << a << “ dan ” << b<< endl;a - = 4 ; b - = 6;cout << “Nilai setelah diturunkan” << a << “ dan ” << b<< endl;

o Operator operator relasiOperator relasi biasanya digunakan untuk membandingkan dua

buah nilai. Jika benar maka hasilnya akan bernilai 1 dan jika salahhasilnya akan bernilai nol. Jenis-jenis operator relasi dapat dilihatpada tabel 1.9.

Tabel 1. 9 Operator relasiOperator Keterangan

== Sama dengan (bukan ) penugasan!= Tidak sama dengan> Lebih besar dari< Kurang dari

>= Lebih dari atau sama dengan<= Kurang dari atau sama dengan

Contoh 1.19:int nilai ;nilai = 3>4 // hasil ungkapan salahcout << “nilai ” <<nilai << endl;nilai = 3>2 // hasil ungkapan benarcout << “nilai ” <<nilai << endl;

Page 10: BAB I. PENGENALAN C++

10

o Operator logikaOperator logika biasanya dipakai untuk menghubungkan dua

buah ungkapan kondisi. Tabel 1.10 menunjukkan jenis-jenis operatorlogika dalam C++. Sedang hasil dari operasi logika dapat dilihat padatabel 1.11.

Tabel 1. 10 Operator logikaOperator Keterangan

&& Operator logika dan|| Operator logika atau! Operator logika bukan

Tabel 1. 11 Hasil operator logika atau (||) serta dan (&&)Ungkapan1 Ungkapan2 Hasil atau ( || ) Hasil dan (&&) Salah Salah Salah SalahSalah Benar Benar SalahBenar Salah Benar SalahBenar Benar Benar Benar

Contoh 1.20 :int x = 200;cout << “((x > =1) && (x<=50) )------->”

<< ((x > =1) && (x<=50) ) << endl;cout << “((x > =1) || (x<=50) )------->”

<< ((x > =1)|| (x<=50) ) << endl;

Prioritas OperatorPrioritas pengerjaan atau eksekusi operator berlainan antara satu operator

dengan operator lainnnya. Operator yang memiliki prioritas tinggi akan di dahulukanpengeksekusiannya daripada operator dengan prioritas rendah. Tabel 1.12 iniditunjukkan prioritas operator dalam C++, dengan urutan prioritas tinggi menujuprioritas rendah ke bawah . Beberapa diantaranya tidak dibahas pada bab ini,melainkan akan dibahas pada bab lain. Operator-operator yang berada pada kotakyang samna mempunyai prioritas yang sama.

Tabel 1. 12 Prioritas operator C++

Simbol Nama PrioritasUrutanpengerjaan

:: Resolusi lingkup Tertinggi Kiri ke kanan++--()[]->

.

Post-incrementPost-decrementPemanggilan fungsiElemen larikPenunjuk ke anggotakelas atau strukturAnggota struktur, unionatau kelas

Kiri ke kanan

Page 11: BAB I. PENGENALAN C++

11

Tabel 1. 12 Prioritas operator C++ (lanjutan)

++--!~-+&*newdeletesizeof(tipe)tipe ()

Pre-incrementPre-decrementLogika bukan (Not)Bitwise komplemenUnary minusUnary plusAlamat (addres)IndirectionPengalokasian memoriDealokasi memoriUkuran tipe dataType castingType casting

Kanan ke kiri

.*->*()

Dereferensi C++Dereferensi C++Kurung untukungkapan

Kiri ke kanan

*/%

PerkalianPembagianSisa pembagian(modulus)

Kiri ke kanan

+-

PenjumlahanPengurangan

Kiri ke kanan

<<>>

Geser kiriGeser kanan

Kiri ke kanan

<><=>=

Kurang dariLebih dariKurang dari atau samadenganLebih dari atau samadengan

Kiri ke kanan

==!=

Sama denganTidak sama dengan

Kiri ke kanan

& Bitwise dan (AND) Kiri ke kanan^ Bitwise exclusive or

(XOR)Kiri ke kanan

| Bitwise atau (OR) Kiri ke kanan&& Logika dan (AND) Kiri ke kanan|| Logika atau (OR) Kiri ke kanan?: Operator kondisi Kiri ke kanan=*=, / =, %=, +=,- =<<=, >>=, &=, ^=|=

PenugasanOperator majemuk

Kanan ke kiri

, Operator koma terendah Kiri ke kanan

II. Studi Kasusq Studi kasus 1

Berikut ini contoh program untuk menampilkan data pribadi mahasiswake layar .

Page 12: BAB I. PENGENALAN C++

12

//***************************************************//KETERANGAN : Membuat Data Pribadi mahasiswa//***************************************************#include<iostream.h>#include<conio.h>

void main(){ clrscr; cout<<" DATA PRIBADI\n\n\n"; cout<<" Nama : Iwan Setia Handoko"<<endl; cout<<" No.MHS : 00/136659/PA/08145"<<endl; cout<<" Fak/Jur/Prod : MIPA/FISIKA/GEOFISIKA"<<endl; cout<<" Tempat/Tgl.Lahir : Kebumen/18 April 1982"<<endl; cout<<" Jenis Kelamin : laki-laki"<<endl; cout<<" Alamat Rumah : RT II/RW 01 Pekuncen-Sempor, Kab.Kebumen55198"<<endl; cout<<" Alamat Kost : RT IV/RW 31 Jomlangan-Bangutapan, Kab.Bantul55863"<<endl; cout<<" Hobby : renang dan mancing"<<endl; cout<<" Status : belum Kawin"<<endl; cout<<" Makanan Favorit : sate kambing dan pecel"<<endl; cout<<" Minuman Favorit : soda gembira dan legen"<<endl; cout<<" Musik favorit : slow rock dan POP"<<endl; cout<<" Tinggi/berat badan : 1,68 M/56 Kg"<<endl; cout<<" Bentuk Wajah : bulat"<<endl; cout<<" Bentuk/warna rambut : ikal/hitam"<<endl; cout<<" Warna Kulit : sawo matang"<<endl; cout<<" Warna Mata : coklat"<<endl; cout<<" No.Sepatu/Sandal : 44/10,5"<<endl; cout<<" Ciri Khusus : Bekas jahitan operasi di tangan kanan"<<endl; getch();}

q Studi kasus 2Berikut ini contoh program untuk menghitung luas dan keliling lingkaran

dengan harga jari-jari diketahui dari masukan lewat key board.//*****************************************************// Program menghitung keliling dan luas lingkaran//*****************************************************#include <iostream.h>#include <conio.h>void main(){

const pi=3.14;float r,L,K;

cout<<"Program untuk menghitung luas dan keliling lingkaran"<<endl; cout<<"Masukkan harga jari-jari lingkaran"<<endl; cin>>r; L=pi*r*r; K=2*pi*r; cout<<"Luas lingkaran tersebut adalah "<<L<<endl; cout<<"Keliling lingkaran tersebut adalah "<<K<<endl; getch();}

Page 13: BAB I. PENGENALAN C++

13

q Studi kasus 3Berikut ini contoh program untuk menghitung jumlah pembelian barang

setelah didiskon.

//****************************************// Program Harga barang setelah didiskon//****************************************#include <iostream.h>#include <conio.h>#include <string.h>void main(){

long harga_awal,diskon,harga_akhir;char nama[30];

cout<<"Program pendiskonan harga anda"<<endl; cout<<"Masukkan nama anda "<<endl; cin.getline(nama,sizeof(nama)); cout<<"Berapa Total belanja anda "<<endl; cin >>harga_awal; diskon = 0.2*harga_awal;//belanja didiskon 20% harga_akhir = harga_awal-diskon; cout<<"Nama :"<<nama<<endl; cout<<"Harga belanja sebelum didiskon :"<<harga_awal<<endl; cout<<"Harga belanja setelah didiskon :"<<harga_akhir<<endl; getch();}

q Studi kasus 4Berikut ini contoh program untuk mengkonversi jam dari bentuk pecahan

menjadi bentuk jam dan menit dan akhirnya total menit.//**********************************************// Program konversi jam ke bentuk jam dan menit//**********************************************#include <iostream.h>#include <conio.h>

void main(){

int jam;float jam_input,menit,tot_menit;

cout<<" Program konversi Jam"<<endl; cout<<"Masukkan harga jam "<<endl; cin>>jam_input; jam = (int) jam_input; //konversi menit=(jam_input-(int)jam_input)*60; tot_menit = jam*60+menit; cout<<jam_input<<"="<<jam<<":"<<menit<<endl; cout<<"total menitnya adalah :"<<tot_menit<<endl;}

q Studi kasus 5Berikut ini contoh program untuk menghitung energi kinetik benda

bermassa m yang bergerak dengan kecepatan v.

Page 14: BAB I. PENGENALAN C++

14

//*******************************************// Program menghitung energi kinetik benda//*******************************************#include <iostream.h>#include <conio.h>

void main(){

float massa,kec,Ek; cout<<"Program penghitung energi kinetik benda"<<endl; cout<<"Masukkan besar massa benda :"<<endl; cin>>massa; cout<<"Masukkan kecepatan gerak benda :"<<endl; cin>>kec; Ek = 0.5*massa*kec*kec; cout<<"Energi kinetik benda itu adalah :"<<Ek<<endl;}

III. Latihanq Latihan 1

Buatlah program yang dapat meminta informasi tentang data pribadiseseorang dan tampilkan hasilnya dilayar. Orang yang diminta informasi akanmengisi data pribadinya lewat keyboard.

q Latihan 2Buatlah progam untuk menghitung gaya Coulomb, potensial listrik dan

kuat medan listrik. Gaya Coulomb dihitung dengan memasukkan nilai duamuatan dan jarak antar muatan. Potensial listrik dihitung denganmemasukkan nilai muatan dan jarak titik yang dihitung dari posisi muatan.Sedang medan listrik dihitung dengan memasukkan nilai besar suatu muatandan jarak titik yang di tinjau nilai medannya dari muatan tersebut.

q Latihan 3Buatlah progam untuk menghitung isi dan luas permukaan dari :

a. Bolab. Balokc. Tabungd. Kerucute. Trapesium

q Latihan 4Buatlah progam untuk menampilkan jumlah hari, jam, menit dan detik dari

masukan berupa lamanya waktu dalam detik. Sebagai contoh, masukan100.000 detik akan menghasilkan 1 hari, 3 jam 46 menit dan 40 detik.

q Latihan 5

Buatlah progam untuk menghitung nilai persamaan matematika berikut inijika diketahui nilai x dan y- nya

a. ( ) 383 3 −+= xxxf

b. ( ) 22 53, xyxyyxf −+=

amri
Typewriter
V=4/3*pi*r*r*r Lp=4*pi*r*r
amri
Typewriter
V=p*l*t Lp=2*(p*l+l*t+p*t)
amri
Typewriter
amri
Typewriter
amri
Typewriter
Page 15: BAB I. PENGENALAN C++

15

q Latihan 6Buatlah program untuk menghitung berat badan ideal seseorang jika

diketahui tinggi badannya. Berat badan seseorang dihitung dengan caramengurangi tinggi badan dengan 100 kemudian mengurangi lagi dengan10%. Atau dalam bentuk berikut : Berat badan ideal = Tinggi badan –100x0.1

q Latihan 7Buatlah program untuk menghitung percepatan dan gaya sentripetal dari

benda bermassa m yang bergerak melingkar dengan kecepatan sudut ωdan jari-jari lingkaran r