Kisi-Kisi Ujian Tengah Semester Algoritma dan Pemrograman Lanjut 1. Pengenalan Bahasa C++ a. Elemen Bahasa C+ Bahasa C++ ditulis dari beberapa elemen, antara lain: Pernyataan Satu atau beberapa ekspresi yang diakhiri dengan tanda titik koma (;) Blok pernyataan Terdiri dari satu atau beberapa pernyataan yang diawali dengan tanda dan diakhiri dengan tanda. Blok pernyataan selalu diawali dengan suatu instruksi Blok fungsi Terdiri dari satu atau beberapa pernyataan yang dirancang untuk melakukan proses tertentu. Blok fungsi dimulai dengan nama fungsi dan diikuti tanda () dan tanda diakhiri tanda. / my first program in C++ int main () cout << "Hello World!"; b. Tipe Data Ada 3 macam tipe data, yaitu: Tipe Data Dasar Tipe Kapasitas Memori Size (Range) Keterangan char 1 byte -128 s/d 127 Character int 2 byte -32768 s/d 32768 Integer (Bilangan) long 4 byte -21474386 s/d 21474386 Bilangan Bulat float 4 byte 3.4E-38 s/d 3.4+38 Real presisi tunggal double 8 byte 1.7E-308 s/d 1.7E+308 Real presisi ganda Tipe Data Majemuk Tipe data majemuk adalah tipe data yang merangkum berbagai tipe data lain. Tipe data majemuk ini akan menggunakan sintaks struct. Tipe Data Bentukan Tipe data bentukan diimplementasikan dengan sintaks typedef, yang berarti type definition (atau pendefinisian tipe baru). Page 1
2. Percabangan C++ a. Struktur IF Sintaks sederhana IF adalah if (kondisi) Statement pada sintaks di atas akan dilakukan jika kondisinya bernilai TRUE (tidak sama dengan nol). Apabila statement yang akandilakukan lebih dari satu, maka sintaksnya menjadi : Contoh Menentukan boleh tidaknya seseorang melihat film bioskop. Seseorang diperbolehkan menonton jika usianya 17 tahun ke atas. Berikut ini program C++ nya : #include <iostream.h> #include <conio.h> void main() int usia; clrscr(); cout << Berapa usia Anda : ; cin >> usia; if (usia < 17) cout << Anda tidak boleh menonton bioskop ; statement; if (kondisi) statement1; statement2;. Statement IF juga dapat ditambahkan ELSE sebagai konsekuensi alternatif jika kondisi tidak dipenuhi (FALSE). Sintaksnya: if (kondisi) statement1; statement2;. else statement1; statement2; Page 2
Contoh : Anda dapat modifikasi program C++ untuk menentukan boleh tidaknya seseorang menonton bioskop seperti di bawah ini: #include <iostream.h> #include <conio.h> void main() int usia; clrscr(); cout << Berapa usia Anda : ; cin >> usia; if (usia < 17) cout << Anda tidak boleh menonton bioskop ; else cout << Anda boleh menonton bioskop ; b. Struktur SWITCH Statement SWITCH juga berfungsi sama dengan IF. Memperbolehkan percabangan pada multiple outcomes. Sintaks : switch( switch_ekspresi ) case case_pilihan1: statement1;// statement2;//blok 1 case case_pilihan2: statement1;// statement2;//blok 2 default: statement1;// statement2;//blok n Contoh #include <iostream.h> #include <conio.h> void main() int bil; clrscr(); cout << Masukkan bilangan : ; cin >> bil switch (bil) Page 3
case 1 : cout << Anda memasukkan bil. satu ; case 2 : cout << Anda memasukkan bil. dua ; case 3 : cout << Anda memasukkan bil. tiga ; default: cout << Anda memasukkan bil selain 1, 2, dan 3 ; 3. Perulangan C++ a. Struktur FOR Struktur perulangan FOR digunakan untuk menghasilkan perulangan sejumlah kali yang dispesifikasikan. Jumlah perulangan diketahui atau dapat ditentukan sebelum eksekusi. Diperlukan variabel counter/pencacah. Jika cacah perulangan sudah mencapai jumlah yang dispesifikasikan, maka proses perulangan berhenti. Bentuk umum struktur FOR : for(<ekspresi1>; <ekspresi2>; <ekspresi3>) aksi1; aksi2; Keterangan : Ekspresi1: inisialisasi counter Ekspresi2: syarat pelaksanaan Ekspresi3: naikkan counter (inkremen) Contoh : int main() int i; for(i=1;i<=5;i++) cout<<"hello World \n"; Output : Page 4
b. Struktur WHILE Sintaks WHILE menyatakan pengulangan dengan pengecekan di awal setiap iterasi, apakah sebuah kondisi terpenuhi atau tidak. Jika kondisi terpenuhi (bernilai benar), maka iterasi a kan dilanjutkan. Jika kondisi tidak terpenuhi, maka iterasi dihentikan. Bentuk umum struktur WHILE : inisialisasi; while(<ekspresi>) aksi1; aksi2; terminasi; Keterangan : Inisialisasi : inisialisasi counter Ekspresi : syarat pelaksanaan Terminasi : menghentikan counter (inkremen) Contoh : int main() int i; i = 1; while(i<=5) cout<<"hello World \n"; i++; Output : c. Struktur DO-WHILE Sintaks DO-WHILE pada kasus yang terlebih dahulu memanipulasi objek, baru kemudian memeriksa kondisi objek tersebut. Bentuk umum struktur WHILE : inisialisasi; do aksi1; aksi2; while(<ekspresi>); terminasi; Page 5
Keterangan : Inisialisasi : inisialisasi counter Ekspresi : syarat pelaksanaan Terminasi : menghentikan counter (inkremen) Contoh : int main() int i; i = 1; do cout<<"hello World \n"; i++; while(i<=5) Output : 4. Prosedur dan Fungsi a. Teknik Pemrograman Modular / Program dipecah menjadi beberapa subprogram yang lebih kecil. Subprogram (modul, routine) kadang independen dari program utama sehingga dapat dirancang tanpa mempertimbangkan konteks tempat ia digunakan, bahkan dapat dirancang orang lain. Modularisasi memberikan dua keuntungan : Untuk aktivitas yang harus dilakukan lebih dari satu kali, modularisasi menghindari penulisan teks program yang sama secara berulang kali. Kemudahan dalam menulis dan menemukan kesalahan (debug) program. b. Definisi Prosedur Prosedur (subroutine) adalah modul program yang mengerjakan tugas/aktifitas yang spesifik dan menghasilkan suatu efek netto. Efek netto diketahui dengan membandingkan keadaan awal (sebelum) dan keadaan akhir (sesudah) pelaksanaan sebuah prosedur Pada setiap prosedur harus didefinisikan keadaan awal (K.Awal) dan keadaan akhir (K.Akhir). c. Definisi Fungsi Modul program yang mengembalikan/ memberikan (return) sebuah nilai yang bertipe sederhana tipe data sederhana : integer, real, boolean, dan string d. Perbedaan Prosedur dan Fungsi Page 6
Sebuah prosedur dapat dituliskan sebagai fungsi, demikian juga sebaliknya. Sebaiknya buat modul program dalam bentuk : Fungsi jika modul program menghasilkan sebuah nilai. Prosedur jika modul menghasilkan efek netto dari satu/sekumpulan aksi. Modul Program dengan output lebih dari satu tidak elegan dituliskan sebagai fungsi. Page 7