Halaman

Selasa, 26 Juni 2012

latihan menghadapi uas algoritma & pemograman 1

atihan soal UAS C++ semester 1
1. Langkah untuk membuka program Borland C++ adalah … a. Start-All Program-Borland C++ 5.02-Borland C++ b. Start-All Program c. Start-All Program-Borland C++ 5.02 d. Start 2. type data yang tepat untuk bilangan desimal adalah... a. Float c. Integer b. Long Integer d. Salah Semua 3. Jenis array yang terbagi ke dalam suatu bentuk baris dan kolom disebut juga… a. array dimensi satu c. array dimensi tiga b. array dimensi dua d. array dimensi empat 4. int nilai_akhir[5] = {56, 67, 57, 76, 72}; jumlah index (subscript) pada deklarasai diatas adalah : a. 67 c. 5 b. 72 d. 67 5. Alt+f9 adalah langkah untuk… a. Mengkompile program b. Menjalankan program c. Melakukan pengujian program (debugging) d. Mengaitkan objek dan library ke program 6. char nama[5][20]; jumlah maksimum dari isi variabel nama adalah : a. 5 c. 20 b. 25 d. salah semua 7. Untuk mengurangi pengulangan penulisan program yang sama dan supaya Program menjadi lebih terstruktur, sehingga mudah dipahami dan dapat lebih dikembangkan. Merupakan tujuan dari… a. Array c. Pointer b. Struktur d. Fungsi 8. Pada pemanggilan dengan cara memasukkan nilai parameter aktual keparameter formal. Sehingga nilai parameter aktual tidak bisa berubah merupakan cara pemanggilan fungsi berdasarkan… a. Value c. salah semua b. Reference d. benar semua 9. int kuadrat (float x) { Return x*x; }
Nama fungsi dari deklarasi diatas adalah: a. X c. kuadrat b. Int d. return 10. Tipe data untuk fungsi pada deklarasi nomor 9 adalah… a. X c. float b. int d. kuadrat 11. struct { X; ..... } Y [Z]; Bagian yang di beri label Y adalah : a. Tipe data c. elemen struct b. Variabel d. nama struct 12. Bagian yang diberi label X pada no. 11 adalah.. a. Tipe data c. elemen struct b. Variabel d. nama struct 13. Label a dan b yang ditunjukkan oleh panah adalah… a. parameter aktual b. parameter formal c. nama fungsi d. variabel global 14. Perintah dalam C++ yang digunakan untuk mengatur lebar tampilan antara nilai variabel yang tercetak yaitu… a. Setprecision c. setw b. Setbase d. setiosflags 15. Bentuk diatas merupakan contoh dari… a. Fungsi c. array dimensi satu b. Struct d. array dimensi dua 16. Dalam pemrograman berbasis OOP, pewarisan sifat disebut juga dengan… a. Inheritance c. constructor b. Encapsulation d. Polymorphism 17. Berikut ini yang bukan termasuk metode pengurutan data pada elemen array… a. Buble sort c. Selection sort b. Insertion sort d. distance sort 18. Nilai data kelas baris kedua kolom ketiga pada data berikut adalah…
Bulan ke Kelas A Kelas B Kelas C Kelas D 1 50 48 64 44 2 54 51 66 44 3 53 51 64 43 a. 64 c. 44 b. 66 d. 51 19. Suatu fungsi dalam C++ yang berfungsi mengirimkan nilai dari suatu fungsi kepada fungsi lain yang memanggilnya disebut … a. Return c. void b. main d. clrscr() 20. Penulisan Struct yang kurang tepat berikut ini adalah… a. struct{char nama[15]; c. struct{char kdbrg[4]; }cust; }barang[5]; b. struct{int hrg; d. struct{char kode }jual; }barang; 21. Berikut sifat operator, kecuali : a. unary c. binary b. fournary d. ternary 22. for(i=1;i<=5;i++) bagian yang disebut sebagai pengubah nilai pencacah adalah… a. i c. i++ b. i<=5 d. i=1 23. Simbol dari operator pointer dereference adalah… a. & c. || b. * d. && 24. Nilai dari RAKA adalah… a. 75 c. 0x0012ff50 b. Amir d. ilham 25. Jenis variabel dalam c++ adalah… a. Variabel lokal b. Variabel Eksternal c. Variabel Global d. Semua Benar 26. Gambaran atau abstraksi karakter dan sifat dari suatu objek disebut…
a. Structure c. method b. Class d. object 27. Deklarasi variabel atau item-item yang ada di dalam kelas dapat diakses dari luar kelas merupakan jenis class… a. Public c. semua benar b. Private d. semua salah 28. Kemampuan 2 buah object yang berbeda untuk merespon pesan permintaan yang sama dalam suatu cara yang unik disebut… a. Inheritance c. Destruktor b. Konstruktor d. Polimorphism 29. File header yang membawahi perintah setw, setiosflags, setprecision adalah… a. iostream.h c. conio.h b. Iomanip.h d. string.h 30. Model yang ditunjukkan pada gambar adalah contoh dari konsep OOP, yaitu… a. Enkapsulasi c. Inheritance b. Polymorphism d. Konstruktor
1. Bahasa C dikembangkan di :
a. UNIX c. BCL
b. Ricthie d. Bell Lab
2. Kepanjangan dari IDE adalah :
a. Integrated Development Environment
b. Integrasi Develop Environment
c. Integrate Develop Enviro
d. Integrated Develop Environment 2
3. Tempat munculnya pesan kesalahan disebut
jendela :
a. Jendela Editor c. Jendela Message
b. Baris Peralatan d. Baris Menu
4. Tempat untuk mengetik program dan membuat
program adalah :
a. Jendela Editor c. Jendela Message
b. Baris Peralatan d. Baris Menu
5. Struktur Penulisan C++ yang benar adalah:
a. #include <fille header>
Main()
{
pernyataan
}
d. #include <fille header>
Main();
{
pernyataan;
}
c. #include <fille header>
{
pernyataan
}
b. #include <fille header>
Main()
{
pernyataan;
}
6. Jika ingin menggunakan perintah printf
maka file header yang harus ada adalah :
a. conio c. stdio
b. iomanip d. Iostream
7. Jika ingin menggunakan perintah cin
maka file header yang harus ada adalah :
a. conio c. stdio
b. iomanip d. iostream
8. Jika ingin menggunakan perintah clrscr
maka file header yang harus ada adalah :
a. conio c. stdio
b. iomanip d. Iostream
9. Jika ingin menggunakan perintah setw
maka file header yang harus ada adalah :
a. conio c. stdio
b. iomanip d. iostream
10. Conio adalah singkatan perintah dari :
a. Consol Input Output
b. Control Input Output
c. Central Input Output
d. Collaboration Input Output
11. Stdio adalah singkatan perintah dari:
a. String input output
b. Stray Input output
c. Standar input output
d. Stream input output
12. Jika ingin pindah ke baris baru maka
menggunakan perintah:
a. \n c. \b
b. \\ d. \t
13. Jika ingin memberikan tabulasi maka
menggunakan perintah:
a. \n c. \b
b. \\ d. \t
Perhatikan perintah diawah ini:
Printf(―Halo apa kabar‖);
\\Printf(―Nama Saya Tina‖);
Printf (―Kelas 12.1A‖);
14. Maka keluaran yang dihasilkan adalah :
a. Halo apa kabar Nama Saya Tina Kelas 12.1A
b. Nama Saya Tina Kelas 12.1A
c. Halo apa kabar Nama Saya Tina
d. Halo apa kabar Kelas 12.1A
15. Untuk menerjemahkan program dari
bahasa manusia dengan cara menekan :
a. Ctrl +f9 c. alt+fn+f9
b. Alt+f9 d. f9
16. Untuk menjalankan program dengan
cara menekan :
a. Ctrl +f9 c. alt+fn+f9
b. Alt+f9 d. f9
17. Tipe data yang tidak dikenali dalam c++
adalah:
a. Real c. integer
b. Float d. char
18. Jangkauan nilai dari -32768 sd 32767
dimiliki oleh tipe data:
a. Real c. integer
b. Float d. char
19. Yang termasuk perintah keluaran adalah :
a. scanf c. cin
b. gets d. Putchar
20. Yang termasuk bukan perintah masukan
adalah :
a. scanf c. cin
b. gets d. putchar
21. Format tipe data untuk float adalah:
a. %d c. %f
b. %c d. %s
22. Format tipe data untuk float adalah:
a. %d c. %f
b. %c d. %s
25. Yang termasuk fungsi manipulasi string
adalah:
a. atoi c. atof
b. strcpy d. Strwl
26. Yang termasuk fungsi konversi string
adalah:
a. atoi c. strrev
b. strcpy d. strlen
27. Fungsi ini digunakan untuk
membandingkan sebuah string dan
menghasilkan data integer adalah:
a. strln c. strcmp
b. strcpy d. Strcat
28. Fungsi ini digunakan untuk mengubah
huruf besar menjadi huruf kecil adalah:
a. atof c. atoi
b. strupr d. strlwr
29. Untuk menggunakan fungsi atof
ditambahkan file header:
a. String.h c. stdlib.h
b. Math.h d. ctype.h
30. Untuk menggunakan fungsi strcat
ditambahkan file header:
a. String.h c. stdlib.h
b. Math.h d. ctype.h
31. Perhatikan perintah dibawah ini :
a. Putri Sekar c. Putri Ayu
b. Putri d. Ayu
main()
{ char nama[20];
Cout<<―Nama Anda = ―;cin>>nama;
Cout<<―Nama Saya adalah ―<<nama<<endl;
}
Jika dimasukkan Nama adalah : Putri Sekar Ayu,
maka yang akan dicetak adalah
32. Perhatikan perintah dibawah ini :
a. 3 c. 0
b. 1 d. error
/
{ int a,b,c,d;
Cout<<―Masukkan Nilai A= ―;cin>>a;
Cout<<―Masukkan Nilai B= ―;cin>>b;
C= a % b;
Cout<<―Nilai C adalah ―<<c<<endl;
}
Jika dimasukkan Nilai A= 10 dan Nilai B = 3, maka
Nilai C = ?? adalah
33. Perhatikan perintah dibawah ini :
a. Undefined identifier c. 0
b. 1 d. error
Diberikan Nilai A = 5, B = 1, C = 10
Maka hasil dari perintah dibawah ini adalah :
D = C + A > 10 || B * A <= C * B
34. Perhatikan perintah dibawah ini :
a. Undefined identifier c. 0
b. 1 d. error
Diberikan Nilai A = 2 , B = 4, C = 8
Maka hasil dari perintah dibawah ini adalah :
D = !(C + A > 10 || B * A <= C * B)
35. Perhatikan perintah dibawah ini :
a. 5 c. 12
b. 15 d. error
main()
{ char nama[20];
Cout<<―Nama Anda = ―;cin>>nama;
Cout<<―Nama Saya Sepanjang ―<<strlen(nama)<<endl;
}
Jika dimasukkan Nama adalah : Putri Sekar Ayu, maka
yang akan dicetak adalah
36. Perhatikan perintah dibawah ini :
a. PC c. Web Programming
b. Pemograman C d. Error
main()
{ char kd,nabuk[20];
Cout<<―Kode Buku [PC/WP]= ―;cin>>kd;
If (kd==―PC‖)
Nabuk=―Pemograman C‖;
Else
Nabuk=―WebProgramming‖;
Cout<<―Nama Buku―<<nabuk<<endl;
}
Jika dimasukkan kode nya adalah PC, maka yang akan
dicetak adalah
37. Perhatikan perintah dibawah ini :
a. PC c. Web Programming
b. Pemograman C d. Error
main()
{ char kd,nabuk[20];
Cout<<―Kode Buku [PC/WP]= ―;cin>>kd;
Switch (kd)
{ case ―PC‖ :
Nabuk=―Pemograman C‖;
Case ―WP‖:
Nabuk=―WebProgramming‖;
Cout<<―Nama Buku―<<nabuk<<endl;
}
Jika dimasukkan kode nya adalah PC, maka yang akan
dicetak adalah
38. Perhatikan perintah dibawah ini :
a. 12345678910 c. 110
b. 13579 d. 13579111315…
main()
{ int a;
clrscr();
for(a = 1; a <= 10; a+=2)
cout<<a;
}
Maka yang akan dicetak adalah
39. Perhatikan perintah dibawah ini :
a. Mengulang tak berhenti c. 12345678910
b. 101112131415… d. 13579111315…
main()
{int bil;
clrscr();
for (bil = 1; bil >=10; bil++)
printf("%d", bil);
}
Maka yang akan dicetak adalah
40. Perhatikan perintah dibawah ini :
a. 1 2 3 4 5 6 7 8 9 10 c. 12345678910
b. 101112131415… d. 13579111315…
main()
{int bil=1;
clrscr();
while(bil<=10)
{
printf(" %d ",bil);
++bil;
}
Maka yang akan dicetak adalah
SELESAI
Jawaban
1. D
2. A
3. C
4. A
5. B
6. C
7. D
8. A
9. B
10. A
11. C
12. A
13. D
14. D
15. B
16. A
17. A
18. C
19. D
20. D
21. C
22. D
23. A
24. C
25. B
26. A
27. C
28. D
29. B
30. D
31. B
32. B
33. B
34. C
35. A
36. D
37. D
38. B
39. A
40. A 28
―Your word is a lamp to my foot, and a light to my roadway.‖—PSALM 119:105
Created by RYH
Soal Quiz 1 : Selasa, 25 Oktober 2011 (MI) Rabu, 26 Oktober 2011 (KA)
1. Borland C++ memiliki . . .
a. 7 tipe data dasar dan 2 tipe data tambahan
b. 7 tipe data dasar dan 3 tipe data tambahan
c. 3 tipe data dasar dan 7 tipe data tambahan
d. 6 tipe data dasar dan 3 tipe data tambahan
2. Deklarasi Tipe data yang bisa menampung data berupa karakter atau kata-kata adalah
a. Charachter
b. String
c. Char
d. Text
3. Suatu nilai yang bersifat tetap disebut . . .
a. Variabel
b. Konstanta Bilangan
c. Konstanta Teks
d. Konstanta
4. Tempat menampung data atau konstanta di memori yang mempunya nilai atau data yang dapat berubah-ubah selama proses program disebut . . .
a. Tipe data
b. Variabel
c. Konstanta
d. String
5. Perintah keluaran yang disediakan oleh Borland C++ diantaranya adalah . . .
a. cout dan cin
b. cin dan gets
c. cout dan printf
d. cout dan scanf
6. Perintah masukan yang disediakan oleh Borland C++ diantaranya adalah . . .
a. cout dan cin
b. cin dan gets
c. cout dan printf
d. cout dan scanf
7. Escape sequences \n berfungsi untuk . . .
a. membuat baris baru
b. membuat garis baru
c. membuat paragraf baru
d. membuat halaman baru
8. File header dari fungsi cout adalah . . .
a. conio.h
b. string.h
c. stdio.h
d. iostream.h
9. File header conio.h harus digunakan untuk salah satu fungsi dibawah ini, yaitu . . .
a. cout
b. getch
c. cin
d. gets
10. Fungsi manipulasi string yang berfungsi untuk menambahkan string sumber ke awal string tujuan adalah . . .
a. strcat( )
b. strcmp( )
c. strcpy( )
d. strlen( )
11. Fungsi manipulasi string yang berfungsi untuk menyalin string asal ke variabel string tujuan adalah . .
a. strcat( )
b. strcmp( )
c. strcpy( )
d. strlen( )
12. Fungsi manipulasi string yang berfungsi untuk membandingkan string pertama dengan string kedua adalah . . .
a. strcat( )
b. strcmp( )
c. strcpy( )
d. strlen( )
13. Fungsi manipulasi string strrev() berfungsi . . .
a. menyalin string asal ke variabel string tujuan
b. menambahkan string sumber ke tujuan
c. membalikkan letak urutan pada string
d. membandingkan string pertama dan kedua
14. cout<<“Masukan Kata :”;cin>>kata;
cout<<strlen(kata);
kata yang dimasukkan adalah Pondok Indah, maka hasil dari strlen(kata) adalah . . .
a. 11
b. 12
c. 13
d. 14
15. File header yang harus disertakan untuk fungsi strcat( ) adalah . . .
a. string.h dan stdio.h
b. conio.h dan iostream.h
c. stdio.h dan ctype.h
d. string.h dan ctype.h
12.1. Pengertian OOP
Object Oriented Programming atau yang lebih dikenal dengan OOP adalah
pemrograman yang menitikberatkan kepada objek-objek untuk menyelesaikan tugas
atau proses dari program tersebut. Sedangkan penitikberatkan ini dimaksudkan
adanya interaksi pengiriman nilai, pesan atau pernyataan antar objek. Kemudian
objek yang merespon hasil dari interaksi tersebut akan membentuk suatu tindakan
atau aksi (methode).
Class
Calss merupakan gambaran atau abstraksi karakter dan sifat dari suatu objek. Class
juga dapat mendefinisikan ciri dan perilaku objek tersebut.
Object
Object (objek) adalah suatu data atau entitas yang berwujud maupun tidak berwujud,
memiliki sifat (karakteristik) tertentu sesuai dengan kondisi atau status dari
penggunaannya. Data atau entitas di dalam pemrograman dapat disebut dengan blok
fungsi.
Contoh pensil adalah suatu objek yang memiliki attribute (karakter) jenis, warna,
panjang dan lain-lain.
Methode
Metoda merupakan tata cara objek tersebut diperlakukan, atau penggunaan atau
manfaat dari objek tersebut.
Pensil juga memiliki methode (perilaku) seperti diruncingkan, digunakan dan lainlain.
12.1.1. Keuntungan Penggunaan OOP
Adapun keuntungan atau manfaat dari penggunaan OOP adalah:
1. Natural
OOP dapat melakukan pendekatan terhadap objek yang menggambarkan segala
sesuatu yang nyata, seperti sifat suatu benda maupun kegunaan dari benda
tersebut.
2. Modular
Objek yang sudah dibentuk dapat dikelompokkan kembali dengan objek-objek
yang lain, seperti kelompok alat tulis yang dapat dikelompokkan kembali dengan
kelompok pensil, kelompok buku dan lain-lain
3. Mudah diperbaharui
Dikarenakan sifat jangkauan dari objek memiliki bagian private dan public, maka
jika bagian private ingin digunakan pada objek-objek lain dapat diperbaharui
dengan menempatkan objek lain tersebut di bagian public.
4. Dapat didaur ulang
Suatu objek yang telah didefinisikan baik jenis, bentuk, ciri maupun perilaku
dapat didefinisikan kembali dengan objek yang lain. Misalkan objek rumah yang
memiliki ciri umum ada pintunya, jendelanya, atapnya, temboknya dan lian-lain,
dapat didefinisikan kembali ciri-ciri tersebut dengan menyebutkan cirinya masingmasing
seperti temboknya yang memiliki ciri jenisnya, ketebalannya, warna
catnya dan lain-lain.12
IDE merupakan singkatan dari Integrated Development Environment
Operator
Borland C++
Operator merupakan simbol atau karakter yang biasa dilibatkan dalam
program, yang digunakan untuk melakukan sesuatu operasi atau manipulasi, seperti
penjumlahan, pengurangan dan lain-lain.
Operator mempunyai sifat sebagai berikut:
Unary
Sifat Unary pada operator adalah hanya melibatkan sebuah operand pada suatu
operasi aritmatik
Contoh : -5
Binary
Sifat Binary pada operator adalah melibatkan dua buah operand pada suatu
operasi aritmatik
Contoh : 4 + 8
Ternary
Sifat Tenary pada operator adalah melibatkan tiga buah operand pada suatu
operasi aritmatik
Contoh :
(10 % 3) + 4 + 2
3.4. Operator Relasi
Operator Relasi digunakan untuk membandingkan dua buah nilai. Hasil
perbandingan operator ini menghasilkan nilai numerik 1 (True) atau 0 (False).
Tabel. 3.5. Tabel Operator Relasi
Operator Keterangan
== Sama Dengan ( bukan pemberi nilai )
!= Tidak Sama dengan
> Lebih Dari
< Kurang Dari
>= Lebih Dari sama dengan
<= Kurang Dari sama dengan
3.5. Operator Logika
Operator Relasi digunakan untuk menghubungkan dua buah operasi relasi
menjadi sebuah ungkapan kondisi. Hasil dari operator logika ini menghasilkan nilai
numerik 1 (True) atau 0 (False).
Tabel. 3.5. Tabel Operator Relasi
Operator Keterangan
&& Operator Logika AND
|| Operator Logika OR
! Operator Logika NOT
3.6. Operator Bitwise
Operator Bitwise digunakan untuk memanipulasi data dalam bentuk bit.
Borland C++ menyediakan enam buah operator bitwise.
Tabel. 3.6. Tabel Operator Bitiwise
Operator Keterangan
~ Bitwise NOT
<< Bitwise Shift Left
>> Bitwise Shift Right
& Bitwise AND
^ Bitwise XOR
| Bitwise OR
4.1.1. Fungsi strcat( )
Fungsi ini digunakan untuk menambahkan string sumber kebagian akhir dari
string tujuan. File header yang harus disertakan adalah string.h dan ctype.h
Bentuk Penulisan : strcat(tujuan, sumber);
4.1.2. Fungsi strcmp( )
Fungsi ini digunakan untuk membandingkan string pertama dengan string
kedua. Hasil dari fungsi ini bertipe data integer (int). File header yang harus
disertakan adalah string.h
Bentuk Penulisan : var_int = strcmp(str1, str2);
4.1.3. Fungsi strcpy( )
Fungsi ini digunakan untuk menyalin string asal ke-variabel string tujuan,
dengan syarat string tujuan harus mempunyai tipe data dan dan ukuran yang sama
dengan string asal. File header yang harus disertakan adalah string.h.
Bentuk Penulisan : strcpy(tujuan, asal);
4.1.4. Fungsi strlen( )
Fungsi ini digunakan untuk memperoleh banyaknya karakter dalam string.
File header yang harus disertakan adalah string.h
Bentuk Penulisan : strlen(str);
4.1.5. Fungsi strrev( )
Fungsi ini digunakan untuk membalik letak urutan pada string. String urutan
paling akhir dipindahkan keurutan paling depan dan seterusnya. File header yang
harus disertakan adalah string.h
Bentuk Penulisan : strrev(str);
4.2.1. Fungsi atof( )
Fungsi ini digunakan untuk mengubah string (teks) angka menjadi bilangan
numerik float. File header yang harus disertakan adalah math.h
4.2.2. Fungsi atoi( )
Fungsi ini digunakan untuk mengubah string (teks) angka menjadi bilangan
numerik integer. File header yang harus disertakan adalah stdlib.h
4.2.3. Fungsi atol( )
Fungsi ini digunakan untuk mengubah string (teks) angka menjadi bilangan
numerik long integer. File header yang harus disertakan adalah stdlib.h
4.2.4. Fungsi strlwr( )
Fungsi ini digunakan untuk mengubah setiap huruf kapital ( huruf besar )
dalam string menjadi huruf kecil. File header yang harus disertakan adalah string.h
Bentuk Penulisan : strlwr(str);
4.2.5. Fungsi strupr( )
Fungsi ini digunakan untuk mengubah setiap huruf kecil dalam string
menjadi huruf kapital ( huruf besar ). File header yang harus disertakan adalah
string.h
5.1. Pernyataan IF
Pernyataan if mempunyai pengertian, ― Jika kondisi bernilai benar, maka
perintah akan dikerjakan dan jika tidak memenuhi syarat maka akan diabaikan‖.
Dari pengertian tersebut dapat dilihat dari diagram alir berikut:
5.1.1. Pernyataan IF - ELSE
Pernyataan if mempunyai pengertian, ―Jika kondisi bernilai benar, maka
perintah-1 akan dikerjakan dan jika tidak memenuhi syarat maka akan mengerjakan
perintah-2‖. Dari pengertian tersebut dapat dilihat dari diagram alir berikut:
7.1. Array Berdimensi Satu
Bentuk Umum pendeklarasian array: Tipe_Data Nama_Variabel[Ukuran]
7.1.2. Mengakses Array Berdimensi Satu
Suatu array, dapat diakses dengan menggunakan subscript atau indexnya.
Bentuk umum pengaksesan dengan bentuk : Nama_Array[Subscript/Index]
7.2. Array Berdimensi Dua
Array dimensi dua tersusun dalam bentuk baris dan kolom, dimana indeks
pertama menunjukan baris dan indeks kedua menunjukan kolom. Array dimensi dua
dapat digunakan seperti pendatan penjualan, pendataan nilai dan lain sebagainya.
Bentuk Umum pendeklarasian array : Tipe_Data Nama_Variabel[index-1][index-2]
8.1. Preprocessor Directives
Preprocessor directive merupakan suatu perintah yang termasuk kedalam
program, tetapi bukanlah instruksi dari program itu sendiri, tetapi untuk
preprocessor. Preprocessor ini dijalankan secara otomatis oleh kompiler, ketika
didalam proses penterjemahan (Compile) program berlangsung, didalamnya
membuat nilai pembuktian pertama dan menterjemahkan code program didalam kode
objek. Didalam penggunaan preprocessor directive selalu dimulai dengan tanda : #
Ada beberapa preprocessor directive, diantaranya adalah:
8.1.1. # define
Digunakan untuk mendefinisikan suatu nilai tertentu kepada suatu nama
konstanta. Bentuk umum dari preprocessor directive #define ini adalah:
#define nama_konstanta teks
Contoh :
Teks
#define A 6
Nama_Konstanta
Dalam pendeklarasian preprocessor directive #define, Nama_Konstanta
sebaiknya ditulis dengan menggunakan huruf besar, guna untuk membedakannya
dengan nama_variabel. Sedangkan Teks merupakan suatu nilai yang diberikan pada
nama_konstanta. Teks dapat berupa:
• Numerik contoh: #define PI 3.14
• Karakter contoh: #define HURUF ‗B‘
• String contoh: #define JABATAN ―INSTRUCTOR‖
• Pernyataan contoh: #define CETAK (―Borland C++‖)
• Fungsi Sederhana contoh: #define LUAS_KUBUS (n*n)
10.1.2. # include
Preprocessor #include telah dibahas pada bab sebelumnya, yaitu berfungsi
untuk memasukkan atau menyertakan file-file header kedalam program yang akan
dibuat. Dalam penulisan #include ada dua bentuk penulisan :
#include "nama_file_header"
atau
#include <nama_file_header>
Pada bentuk penulisan #include mempunyai arti yang berbeda, yaitu:
• #include "nama_file_header"
―Pertama kali compiler akan mencari file header yang disebutkan pada directori
yang sedang aktif dan apa bila tidak ditemukan akan mencari pada directori
dimana file header tersebut berada ―.
• #include <nama_file_header>
―Pertama kali compiler akan mencari file header yang disebutkan pada directori
yang ada file headernya, kecuali pada directori yang sedang aktif.
10.1.3. # if - #endif
Preprocessor #if - #endif digunakan untuk mengkompilasi jika pernyataan
kondisi pada #if bernilai benar, jika tidak maka, diabaikan. Pernyataan kondisi
berupa ekspresi konstanta yang dideklarasikan dengan #define.
Benuk Penulisan #if ekspresi-konstanta
penyataan;
#endif
10.1.4. # if - #else - #endif
Preprocessor #if - #else -#endif digunakan untuk mengkompilasi jika
pernyataan kondisi pada #if bernilai benar, jika #if bernilai salah maka, pernyataan
#else dikompilasi. Pernyataan kondisi berupa ekspresi konstanta yang dideklarasikan
dengan #define.
Benuk Penulisan #if ekspresi-konstanta
Penyataan-1;
#else
Penyataan-2;
#endif
10.1.5. # elif
Preprocessor #elif digunakan untuk mengkompilasi dari pernyataan
bertingkat. Dalam hal ini #elif sama halnya seperti #elseif, merupakan kombinasi
dari #if dan #else. Perintah dijalankan sesuai dengan kondisi yang telah ditentukan,
Hasil hanya dapat dijalankan sesuai dengan ketentuan yang benar. Bentuk #elif
diikuti oleh ekspresi-konstanta.
Benuk Penulisan #if ekspresi-konstanta-1
Penyataan-1;
#elif ekspresi-konstanta-2
Penyataan-2;
# elif ekspresi-konstanta-n
Penyataan-n;
#endif
10.1.6. #undef
Preprocessor #undef digunakan untuk menghilangkan nilai yang telah
didefiniskan dari daftar definisi
10.1.7. # ifdef - # ifndef
Preprocessor #ifdef dan #ifendef memberikan bagian dari program yang akan
dikompile, hal ini dapat dilakukan jika sudah konstanta didefiniskan pada bagian
#define, hal ini merupakan parameter yang khusus yang harus terdefinisi.
Benuk umum penulisan sebagai berikut:
#ifdef
nama-konstanta pernyataan;
#endif
Penjelasan: Jika nama-konstanta terdefinisi maka, pernyataan akan dijalankan, jika
nama-konstanta tidak terdefinisi maka, pernyataan akan diabaikan.
Pointer
Merupakan sebuah variabel yang berisi alamat dari variabel lain. Suatu
pointer dimaksudkan untuk menunjukan ke suatu alamat memori sehingga alamat
dari suatu variabel dapat diketahui dengan mudah.
9.1. Operator Pointer
Terdapat dua macam operator pointer yang disediakan oleh Borland C++:
1. Operator dereference ( & )
2. Operator reference ( * )
Fungsi
Fungsi (Function) merupakan blok dari kode yang dirancang untuk
melaksanakan tugas khusus. Kegunaan dari fungsi ini adalah untuk:
- Mengurangi pengulangan penulisan program yang berulangan atau sama.
- Program menjadi lebih terstruktur, sehingga mudah dipahami dan dapat lebih
dikembangkan.
Fungsi-fungsi yang sudah kita kenal sebelumnya adalah fungsi main(), yang
bersifat mutlak, karena fungsi ini program akan dimulai, sebagai contoh yang lainnya
fungsi printf(), cout() yang mempunyai tugas untuk menampilkan informasi atau data
kelayar dan masih banyak lainnya.
10.1. Struktur Fungsi
Sebuah fungsi sederhana mempunyai bentuk penulisan sebagai berikut:
nama_fungsi(argumen)
{
… pernyataan / perintah;
… pernyataan / perintah;
… pernyataan / perintah;
}
• Parameter formal adalah variabel yang terdapat pada daftar parameter yang
berada didalam definisi fungsi.
• Parameter Aktual adalah variabel yang digunakan pada pemanggilan suatu
Fungsi
parameter aktual
main()
{
…..
total(a, b);
…..
}
parameter formal
float total( int x, int y)
{
…...
}
10.2.1. Pemanggilan dengan nilai ( Call by Value )
Pada pemanggilan dengan nilai yaitu nilai dari parameter aktual akan
dimasukkan ke parameter formal. Dengan cara ini nilai parameter aktual tidak dapat
berubah, walaupun nilai dari parameter formal berubah. Berikut contoh pemanggilan
dengan nilai dapat dilihat pada contoh berikut:
10.2.2. Pemanggilan dengan Referensi (Call by Reference)
Pemanggilan dengan referensi merupakan pemanggilan nilai suatu parameter
di dalam fungsi ke parameter actual yang disimpan pada alamat memori dengan
menggunakan pointer. Cara ini dapat dipakai untuk mengubah isi suatu parameter
aktual dengan melaksanakan pengubahan nilai dari suatu parameter yang dilakukan
di dalam fungsi.
10.3. Pernyataan return().
Digunakan untuk mengirimkan nilai atau nilai dari suatu fungsi kepada fungsi
yang lain yang memanggilnya. Pernyataan return() diikuti oleh argumen yang
berupa nilai yang akan dikirimkan. Syarat utama dalam pembuatan fungsi return
adalah nama fungsi yang dapat mengembalikan nilai, dikarenakan nilai hasil dari
parameter formal akan disimpan pada nama fungsi. Contoh pemakaian pernyataan
return() dapat dilihat pada contoh berikut:
10.4. Jenis Variabel
Jenis Variabel pada C++ ini sangat berguna didalam penulisan suatu fungsi
agar penggunaan didalam penggunaan suatu variabel tidak salah. Terdapat beberapa
jenis variabel yaitu:
• Variabel Lokal.
• Variabel Eksternal atau Global.
• Variabel Statis.
10.4.1. Variabel Lokal
Variabel Lokal adalah variabel yang dideklarasikan didalam fungsi dan hanya
dikenal oleh fungsi yang bersangkutan. Variabel lokal biasa disebut dengan Variabel
Otomatis.
10.4.2. Variabel Eksternal
Variabel Eksternal adalah variabel yang dideklarasikan diluar fungsi yang
bersifat global yang artinya dapat digunakan bersama-sama tanpa harus
dideklarasikan berulang-ulang. Untuk pendeklarasian variabel ekternal ini, diluar
dari fungsi main(), yang selama ini pendeklarasian variabel selalu didalam fungsi
main().
10.4.3. Variabel Statis
Variabel Statis dapat berupa variabel local atau variabel eksternal Sifat variabel
statis ini mempunyai sifat antar lain.
• Jika variabel statis bersifat local, maka variabel hanya dikenal oleh fungsi tempat
variabel dideklarasikan.
• Jika variabel statis bersifat eksternal, maka variabel dapat dipergunakan oleh
semua fungsi yang terletak pada file yang sama ditempat variabel statis
dideklarasikan.
• Jika tidak ada inisialisasi oleh pemrograman secara otomatis akan diberikan nilai
awal nol.
Suatu variabel statis diperoleh dengan menambahkan kata-kunci static
didepan penentu tipe data variabel.
10.5. Fungsi inline
Fungsi inline ( inline function ) digunakan untuk mengurangi lambatnya
eksekusi program dan mempercepat eksekusi program terutama pada program yang
sering menggunakan atau memanggil fungsi yang berlebih. terutama programprogram
yang menggunakan pernyataan perulangan proses seperti for, while dan do
– while. Inline function dideklarasikan dengan menambahkan kata kunci inline
didepan tipe data.
10.6. Function Overloading
Function Overloading adalah mendefinisikan beberapa fungsi, sehingga
memiliki nama yang sama tetapi dengan parameter yang berbeda. Dapat diartikan
bahwa fungsi yang overload berarti menyediakan versi lain dari fungsi tersebut.
Salah satu kelebihan dari C++ adalah Overloading. s
Sebagai contoh membentuk fungsi yang sama dengna tipe yang berbeda-beda dan
dibuatkan pula nama fungsi yang berbeda-beda pula.
Structure
Struktur digunakan untuk mengelompokan sejumlah data yang mempunyai
tipe data yang berbeda. Variabel-variabel yang membentuk sebuah struktur
dinamakan elemen struktur. Struktur sama seperti Record di dalam Bahasa
Pemrograman Pascal
11.1. Deklarasi Structure
Structure dapat deklarasikan seperti berikut:
struct nama_tipe_struktur
{
elemen_struktur;
.....
.....
};
Atau
struct
{
elemen_struktur;
.....
.....
} nama_tipe_struktur;
Contoh struct mahasiswa struct
Deklarasi
{ {
char nim[5]; char nim[5];
char nama[15]; atau char nama[15];
float nilai; float nilai;
} ; }mahasiswa;
A. Public pada kelas
Public (public) menyatakan bahwa deklarasi variabel atau item-item yang ada di
dalam kelas dapat diakses dari luar kelas.
B. Private pada Kelas
Private digunakan pada kelas untuk memproteksi anggota-anggota tertentunya agar
tidak dapat diakses dari luar kelas secara langsung.
12.2. Konstruktor
Konstruktor (constructor) merupakan suatu fungsi dari anggota suatu kelas
yang memiliki nama yang sama dengan nama kelas fungsi itu berada.
Konstruktor ini digunakan untuk mengalokasikan ruang untuk suatu objek dan untuk
memberikan nilai awal. 12.3. Destruktor
Destruktor merupakan suatu fungsi anggota yang dijalankan secara otomatis
manakala suatu objek akan terbebas dari memori karena lingkup keberadaannya telah
menyelesaikan tugasnya.
Destruktor harus mempunyai nama yang sama dengan kelas dan diawali
karakter tilde(~) atau karakter tak terhingga.
Destruktor digunakan secara khusus manakala suatu objek menggunakan
memori dinamis selama keberadaannya dan kemudian melepaskan memori itu
setelah tidak menggunakannya lagi.
12.5. Karakterisitk OOP
Di dalam penggunaan konsep pemrograman yang berbasis objek atau yang
disebut Object Oriented Pemrograman (OOP), haruslah memiliki karakteirstik.
Adapun karakteristik tersebut adalah memiliki sifat turunan atau pewarisan
(Inheritance), satu nama memiliki banayak sifat atau perilaku (Polymorphism),
pembungkusan sifat dari objek yang berbeda (Encapsulation). Berikut akan
dijelaskan karakteristik OOP tersebut:
12.5.1. Inheritance
Inheritance memungkinkan programmer untuk "menurunkan" sebuah class
menjadi class lain yang lebih spesifik dan memiliki fungsi yang lebih komplit.
Inheritance merepresentasikan hubungan "seperti" atau "sejenis" (a kind of). Sebagai
Di dalam C++ penentuan akses pada inheritance ada tiga macam, yaitu :
1. Public
Penentuan akses berbasis public menyebabkan anggota dari public dari sebuah
kelas utama akan menjadi anggota public kelas turunan dan menyebabkan juga
anggota protect kelas utama menjadi anggota protect kelas turunan, namun untuk
anggota kelas private tetap pada private kelas utama.
2. Private
Penentu akses berbasis private menyebabkan anggota dari anggota public dari
kelas utama akan menjadi anggota protect kelas turunan, dan menyebabkan
anggota dari kelas utama menjadi anggota protect kelas turunan, namun untuk
anggota kelas private tetap pada private kelas utama.
3. Protected
Penentu akses berbasis protect menyebabkan anggota dari anggota protect dan
public dari kelas utama akan menjadi anggota private dari kelas turunan.
Anggota private dari kelas utama selalu menjadi anggota private kelas utama.
12.5.2. Polymorphism
Polymorphisms adalah kemampuan 2 buah object yang berbeda untuk
merespon pesan permintaan yang sama dalam suatu cara yang unik. Contoh, saya
melatih lumba-lumba saya dengan perintah untuk meloncat dan juga saya melatih
burung untuk merespon perintah saya untuk berkicau. Saya lakukan latihan untuk
merespon kepada mereka dengan perintah lisan. Melalui polymorphism saya tahu
bahwa anjing dan burung akan merespon dengan gonggongan atau kicauan.
Dengan cara dan kemampuan seperti ini, jenis akses tertentu dapat
diterapakan dengan berbagai cara oleh objek-objek yang memiliki tipe yang berbeda
atau memiliki banyak bentuk. Fungsi virtual merupakan dasar dari polymorphism
yang berkerja hanya dengan pointer-pointer dan referensi dan hanya
mendeklarasikan method sebagai virtual.
Adapun aturan dari virtual function sebagai berikut:
1. Virtual function harus anggota class.
2. Anggota class bukan anggota yang bersifat statis.
3. Anggota class dapat diakses dengan pointer objek.
4. Virtual function tidak dapat memiliki virtual constructor, akan tetapi dapat
berupa virtual destructor.
12.5.3. Encapsulation
Ciri penting lainnya dari OOP adalah encapsulation. Encapsulation adalah
sebuah proses dimana tidak ada akses langsung ke data yang diberikan, bahkan
hidden. Jika ingin mendapat data, maka harus berinteraksi dengan objek yang
bertanggung jawab atas dara tersebut. Berikut cirri dari encapsulation:
1. Variabel dan method dalam suatu obyek dibungkus agar terlindungi
2. Untuk mengakses, variabel dan method yang sudah dibungkus tadi perlu
interface
3. Setelah variabel dan method dibungkus, hak akses terhadapnya dapat ditentukan.
4. Konsep pembungkusan ini pada dasarnya merupakan perluasan dari tipe data
struktur
Dua hal dalam enkapsulasi :
1. Information hiding
2. Menyediakan perantara (method) untuk mengakses data
Pada intinya, encapsulation adalah pemisahan antara bagian private dan
public pada sebuah objek. Atau, dapat dipandang sebagai pemisahan antara interface
(bagian private) dan implementation (bagian public).
Objek-objek lain yang hendak berinteraksi dengan objek ini akan mengirimkan
sebuah pesan (message) dan objek ini akan mengerjakan sesuatu dan mengirimkan
pesan balik sebagai jawaban jika diperlukan.
Keuntungan utama dari encapsulation tentu saja adalah penyembunyian
implementasi (implementation hiding). Dengan implementation hiding, kita dapat
memperbaiki bagaimana objek kita bekerja tanpa harus khawatir bagaimana
menginformasikan perubahan tersebut ke objek-objek yang lain. Selama kita tidak
merubah interface dari objek kita, objek-objek yang lain akan tetap dapat
menggunkan objek kita.
8

Sabtu, 02 Juni 2012

//by hendra {Program Tiket Pesawat dalam Bahasa C++}
#include <iostream.h>//file header untuk(cout,cin)
#include <conio.h>   //file header untuk(getch,clrscr)
#include <stdio.h>   //file header untuk(cfrintf)
#include <iomanip.h> //file header untuk(setiosflags)
main()
{
char kode_kota,kelas,kembali1;
long kembali,bayar;
int harga_tiket,PPN,jum_bayar;
do
{
clrscr();
textcolor(13);
cprintf("\n\a^^^^^^^^^^^^^^^HARGA TIKET PESAWAT^^^^^^^^^^^^^^^^\n");
cout<<"\n================================================================================\n";
cout<<" Kelas          Kelas         Kelas\n";
cout<<" Ekonomi(E)     Bisnis(B)     Exsekutif(X)\n";
cout<<"================================================================================\n";
cout<<"1. Bangkok  $35 $45 $55\n";
cout<<"2. Hongkong $45 $55 $65\n";
cout<<"================================================================================";
textcolor(30);
cprintf("\n^^___ Pilih Kota Tujuan Anda___ ^^");
cout<<"\n\aMasukan Kode   Kota [1..2] :" ;
cin>>kode_kota;
switch(kode_kota)
{
case '1':
{
cout<<"Kota    Tujuan Anda        : BANGKOK\n\n";
textcolor(18);
cprintf("^^___Pilih Kelas Pesawat___^^");
cout<<"\n\amasukan kode kelas [E/B/X]:";
cin>>kelas;
cout<<endl;
if(kelas=='E' || kelas=='e')
{
harga_tiket=35*5675;
PPN=0;
jum_bayar=harga_tiket-PPN;
cout<<"Harga Tiket  = Rp."<<harga_tiket<<endl;
cout<<"PPN          = Rp."<<PPN<<endl;
cout<<"jumlah bayar = Rp."<<jum_bayar<<endl;
cout<<"bayar        = Rp.\a";cin>>bayar;
cout<<"================================================================================\n";
kembali=bayar-jum_bayar;
cout<<"kembali      = Rp."<<kembali<<endl;
cout<<"================================================================================\n";
textcolor(11);
cprintf("^^___Tabel harga___^^");
cout<<"\n\n";
cout<<" Harga Tiket        ";
cout<<"PPN         ";
cout<<"jumlah bayar      ";
cout<<"bayar             ";
cout<<"kembali       \n\a ";
cout<<"Rp.";
cout<<setiosflags(ios::left)<<setw(15)<<harga_tiket;
cout<<"Rp.";
cout<<setiosflags(ios::left)<<setw(10)<<PPN;
cout<<"Rp.";
cout<<setiosflags(ios::left)<<setw(15)<<jum_bayar;
cout<<"Rp.";
cout<<setiosflags(ios::left)<<setw(15)<<bayar;
cout<<"Rp.";
cout<<setiosflags(ios::left)<<setw(15)<<kembali;
cout<<endl;
getch();
{
//array dimensi 1
char hari[7][15]={"Minggu:10:00","Senin :13:00","Selasa:13:00","Rabu  :13:00","Kamis :13:00","jum'at:13:00","Sabtu :10:00"};
clrscr();textcolor(11);
cprintf("\a^^___jadwal penerbangan___^^");
cout<<endl<<endl;
cout<<hari[0]<<endl<<hari[1]<<endl<<hari[2]<<endl<<hari[3]
<<endl<<hari[4]<<endl<<hari[5]<<endl<<hari[6]<<endl;
getch();
}

}
else if(kelas=='B' || kelas=='b')
{

harga_tiket=45*5675;
PPN=0;
jum_bayar=harga_tiket-PPN;
cout<<"Harga Tiket  = Rp."<<harga_tiket<<endl;
cout<<"PPN          = Rp."<<PPN<<endl;
cout<<"jumlah bayar = Rp."<<jum_bayar<<endl;
cout<<"bayar        = Rp.\a";cin>>bayar;
cout<<"================================================================================\n";
kembali=bayar - jum_bayar;
cout<<"kembali      = Rp."<<kembali<<endl;
cout<<"================================================================================\n";
textcolor(11);
cprintf("^^___Tabel harga___^^");
cout<<"\n\n";
cout<<" Harga Tiket        ";
cout<<"PPN         ";
cout<<"jumlah bayar      ";
cout<<"bayar             ";
cout<<"kembali       \n\a ";
cout<<"Rp.";
cout<<setiosflags(ios::left)<<setw(15)<<harga_tiket;
cout<<"Rp.";
cout<<setiosflags(ios::left)<<setw(10)<<PPN;
cout<<"Rp.";
cout<<setiosflags(ios::left)<<setw(15)<<jum_bayar;
cout<<"Rp.";
cout<<setiosflags(ios::left)<<setw(15)<<bayar;
cout<<"Rp.";
cout<<setiosflags(ios::left)<<setw(15)<<kembali;
cout<<endl;
getche();
{
//array dimensi 1
char hari[7][15]={"Minggu:10:00","Senin :13:00","Selasa:13:00","Rabu  :13:00","Kamis :13:00","jum'at:13:00","Sabtu :10:00"};
clrscr();textcolor(11);
cprintf("\a^^___jadwal penerbangan___^^");
cout<<endl<<endl;
cout<<hari[0]<<endl<<hari[1]<<endl<<hari[2]<<endl<<hari[3]
<<endl<<hari[4]<<endl<<hari[5]<<endl<<hari[6]<<endl;
getche();
}
}
else if(kelas=='X' || kelas=='x')
{
harga_tiket=55*5675;
PPN=0.05*harga_tiket;
jum_bayar=harga_tiket-PPN;
cout<<"Harga Tiket  = Rp."<<harga_tiket<<endl;
cout<<"PPN          = Rp."<<PPN<<endl;
cout<<"jumlah bayar = Rp."<<jum_bayar<<endl;
cout<<"bayar        = Rp.\a";cin>>bayar;
cout<<"================================================================================\n";
kembali=bayar-jum_bayar;
cout<<"kembali      =Rp."<<kembali<<endl;
cout<<"================================================================================\n";
textcolor(11);
cprintf("^^___Tabel harga___^^");
cout<<"\n\n";
cout<<" Harga Tiket        ";
cout<<"PPN         ";
cout<<"jumlah bayar      ";
cout<<"bayar             ";
cout<<"kembali       \n\a ";
cout<<"Rp.";
cout<<setiosflags(ios::left)<<setw(15)<<harga_tiket;
cout<<"Rp.";
cout<<setiosflags(ios::left)<<setw(10)<<PPN;
cout<<"Rp.";
cout<<setiosflags(ios::left)<<setw(15)<<jum_bayar;
cout<<"Rp.";
cout<<setiosflags(ios::left)<<setw(15)<<bayar;
cout<<"Rp.";
cout<<setiosflags(ios::left)<<setw(15)<<kembali;
cout<<endl;
getche();
{
//array dimensi 1
char hari[7][15]={"Minggu:10:00","Senin :13:00","Selasa:13:00","Rabu  :13:00","Kamis :13:00","jum'at:13:00","Sabtu :10:00"};
clrscr();textcolor(11);
cprintf("\a^^___jadwal penerbangan___^^");
cout<<endl<<endl;
cout<<hari[0]<<endl<<hari[1]<<endl<<hari[2]<<endl<<hari[3]
<<endl<<hari[4]<<endl<<hari[5]<<endl<<hari[6]<<endl;
getch();
}

}
break;
}
case'2':
{
cout<<"Kota    Tujuan Anda        : HONGKONG\n"<<endl;
textcolor(650);
cprintf("^^___Pilih Kelas Pesawat___^^");
cout<<"\n\amasukan kode kelas [E/B/X]:";cin>>kelas;
cout<<endl;if(kelas=='E' || kelas=='e')
{
harga_tiket=45*7215;
PPN=0;
jum_bayar=harga_tiket-PPN;
cout<<"Harga Tiket  = Rp."<<harga_tiket<<endl;
cout<<"PPN          = Rp."<<PPN<<endl;
cout<<"jumlah bayar = Rp."<<jum_bayar<<endl;
cout<<"bayar        = Rp.\a";cin>>bayar;
cout<<"================================================================================\n";
kembali=bayar-jum_bayar;
cout<<"kembali      = Rp."<<kembali<<endl;
cout<<"================================================================================\n";
textcolor(11);
cprintf("^^___Tabel harga___^^");
cout<<"\n\n";
cout<<" Harga Tiket        ";
cout<<"PPN         ";
cout<<"jumlah bayar      ";
cout<<"bayar             ";
cout<<"kembali       \n\a ";
cout<<"Rp.";
cout<<setiosflags(ios::left)<<setw(15)<<harga_tiket;
cout<<"Rp.";
cout<<setiosflags(ios::left)<<setw(10)<<PPN;
cout<<"Rp.";
cout<<setiosflags(ios::left)<<setw(15)<<jum_bayar;
cout<<"Rp.";
cout<<setiosflags(ios::left)<<setw(15)<<bayar;
cout<<"Rp.";
cout<<setiosflags(ios::left)<<setw(15)<<kembali;
cout<<endl;
getche();
{
//array dimensi 1
char hari[7][15]={"Minggu:10:00","Senin :13:00","Selasa:13:00","Rabu  :13:00","Kamis :13:00","jum'at:13:00","Sabtu :10:00"};
clrscr();textcolor(11);
cprintf("\a^^___jadwal penerbangan___^^");
cout<<endl<<endl;
cout<<hari[0]<<endl<<hari[1]<<endl<<hari[2]<<endl<<hari[3]
<<endl<<hari[4]<<endl<<hari[5]<<endl<<hari[6]<<endl;
getche();
}

}
else if(kelas=='B' || kelas=='b')
{
harga_tiket=55*7215;
PPN=0.05*harga_tiket;
jum_bayar=harga_tiket-PPN;
cout<<"Harga Tiket  = Rp."<<harga_tiket<<endl;
cout<<"PPN          = Rp."<<PPN<<endl;
cout<<"jumlah bayar = Rp."<<jum_bayar<<endl;
cout<<"bayar        = Rp.\a";cin>>bayar;
cout<<"================================================================================\n";
kembali=bayar-jum_bayar;
cout<<"kembali      = Rp."<<kembali<<endl;
cout<<"================================================================================\n";
textcolor(11);
cprintf("^^___Tabel harga___^^");
cout<<"\n\n";
cout<<" Harga Tiket        ";
cout<<"PPN         ";
cout<<"jumlah bayar      ";
cout<<"bayar             ";
cout<<"kembali       \n\a ";
cout<<"Rp.";
cout<<setiosflags(ios::left)<<setw(15)<<harga_tiket;
cout<<"Rp.";
cout<<setiosflags(ios::left)<<setw(10)<<PPN;
cout<<"Rp.";
cout<<setiosflags(ios::left)<<setw(15)<<jum_bayar;
cout<<"Rp.";
cout<<setiosflags(ios::left)<<setw(15)<<bayar;
cout<<"Rp.";
cout<<setiosflags(ios::left)<<setw(15)<<kembali;
cout<<endl;
getche();
{
//array dimensi 1
char hari[7][15]={"Minggu:10:00","Senin :13:00","Selasa:13:00","Rabu  :13:00","Kamis :13:00","jum'at:13:00","Sabtu :10:00"};
clrscr();textcolor(11);
cprintf("\a^^___jadwal penerbangan___^^");
cout<<endl<<endl;
cout<<hari[0]<<endl<<hari[1]<<endl<<hari[2]<<endl<<hari[3]
<<endl<<hari[4]<<endl<<hari[5]<<endl<<hari[6]<<endl;
getch();
}

}
else if(kelas=='X' || kelas=='x')
{
harga_tiket=65*7215;
PPN=0.05*harga_tiket;
jum_bayar=harga_tiket-PPN;
cout<<"Harga Tiket  = Rp."<<harga_tiket<<endl;
cout<<"PPN          = Rp."<<PPN<<endl;
cout<<"jumlah bayar = Rp."<<jum_bayar<<endl;
cout<<"bayar        = Rp.\a";cin>>bayar;
cout<<"================================================================================";
kembali=bayar-jum_bayar;
cout<<"kembali      = Rp."<<kembali<<endl;
cout<<"================================================================================\n";
textcolor(11);
cprintf("^^___Tabel harga___^^");
cout<<"\n\n";
cout<<" Harga Tiket        ";
cout<<"PPN         ";
cout<<"jumlah bayar      ";
cout<<"bayar             ";
cout<<"kembali       \n\a ";
cout<<"Rp.";
cout<<setiosflags(ios::left)<<setw(15)<<harga_tiket;
cout<<"Rp.";
cout<<setiosflags(ios::left)<<setw(10)<<PPN;
cout<<"Rp.";
cout<<setiosflags(ios::left)<<setw(15)<<jum_bayar;
cout<<"Rp.";
cout<<setiosflags(ios::left)<<setw(15)<<bayar;
cout<<"Rp.";
cout<<setiosflags(ios::left)<<setw(15)<<kembali;
cout<<endl;
getche();
{
//array dimensi 1
char hari[7][15]={"Minggu:10:00","Senin :13:00","Selasa:13:00","Rabu  :13:00","Kamis :13:00","jum'at:13:00","Sabtu :10:00"};
clrscr();textcolor(11);
cprintf("\a^^___jadwal penerbangan___^^");
cout<<endl<<endl;
cout<<hari[0]<<endl<<hari[1]<<endl<<hari[2]<<endl<<hari[3]
<<endl<<hari[4]<<endl<<hari[5]<<endl<<hari[6]<<endl;
getche();
}
}
break;
}
default :
textcolor(10);
cprintf("\n\a\a\a\a\a\a\a\a\a\^^___Anda salah memasukan kode___^^\n\n\a\a\a\a");
}
textcolor(60);
cprintf("\a\aAnda ingin kembali [y/t] :");
cin>>kembali1;
}
while(kembali1=='Y' || kembali1=='y');
getchar();
}

zivilia