BAB II OPERASI BERSYARAT DAN PERULANGAN
I. DASAR TEORI A. OPERASI BERSYARAT a) Operasi Bersyarat dengan if Pernyataan if dipakai untuk mengambil keputusan berdasarkan suatu kondisi. Jika kondisi dipenuhi (benar) maka diambil keputusan untuk menjalankan atau mengeksekusi perintah-perintah atau pernyataan-pernyataan. Jika kondisi tidak dipenuh (salah) diambil keputusan untuk menghentikan eksekusi. Gambar 2.1 menunjukkan skema operasi bersyarat dengan if. Penentuan kondisi dilaksanakan dengan menggunakan operator relasi atau logika (lihat Bab I).
Bentuk umum operasi bersyarat dengan if adalah:
atau
Bentuk pertama dapat dipakai jika kondisi dipenuhi (benar), hanya ada satu saja yang dieksekusi. Sedang bentuk kedua dipakai jika kondisi (benar), terdapat banyak pernyataan yang harud di eksekusi. Universitas Gadjah Mada
1
Pada contoh 2.1, C++ akan memperlakukan nilai kondisi sama dengan nol sebagai benar dan tidak sama dengan nol sebagai salah. Jika kondisi benar dipenuhi, maka kata” Genap” akan tampil di layar. Pada contoh 2.2, C++ akan memperiakukan nilai kondisi tidak sama dengan fbi benar dan sama dengan nol sebagai salah. JJika kondisi benar dipenuhi, maka kalimat “Ganjil” dan “Bukan kelipatan 2” akan tampil di layar. b) Operasi Bersyarat dengan if..else Operasi bersyarat if..else menyediakan pemyataan atau perintah altenatif yang mesti dieksekusi jika kondisi tidak dipenuhi (salah). Operasi bersyarat lf..else dipakai untuk mengambil keputusan berdasarkan suatu kondisi tertentu. Jika kondisi dipenuhi (benar) maka diambil keputusan untuk menjalankan atau mengeksekusi penntah-perintah atau pernyataan-pernyataan pertama. Jika kondisi tidak dipenuh (salah) diambil keputusan untuk menjaiankan atau mengeksekusi perintah-perintah atau pernyataan-pernyataan kedua. Gambar 2.2 menunjukkan skema operasi bersyarat dengan if..else. Penentuan kondisi dilaksanakan dengan menggunakan operator relasi atau logika (lihat Bab I).
Universitas Gadjah Mada
2
Gambar 2.2 skema operasi bersyarat dengan if ... else. Bentuk umum operasi bersyarat dengan if ..else adalah:
Bentuk pertama dapat dipakai jika kondisi dipenuhi (benar), hanya ada satu pernyataan saja yang dieksekusi atau jika kondisi tidak dipenuhi (salah), hanya ada satu pernyataan saja yang dieksekusi. Sedang bentuk kedua dipakai jika kondisi dipenuhi (benar), terdapat beberapa pernyataan pertama yang harus yang harus dieksekusi, atau jika kondisi tidak dipenuhi (salah), terdapat beberapa pernyataan kedua yang harus yang harus dieksekusi.
Universitas Gadjah Mada
3
Operasi bersyarat if..else dapat dibuat dalam bentuk bersarang, artinya didalam pemyataan if..else ada pernyataan if..else yang lain. Pernyataan if..else bersarang dapat dibuat dipakai untuk melakukan penyeleksian dan beberapa kondisi yang mungkin (Lihat Gambar 2.3).
Gambar 2.3 skema operasi penyeleksian dengan if ... else tersarang.
Universitas Gadjah Mada
4
c) Operasi Bersyarat dengan switch Operasi bersyarat
dengan switch adalah
operasi yang
digunakan untuk
menjalankan salah satu pernyataan dan beberapa kemungkinan pernyataan, berdasarkan nilai dan suatu ungkapan atau variabel dan nilai penyeleksi dari beberapa kondisi. Gambar 2.4 menunjukkan skema pemakaian Operasi bersyarat dengan switch.
Gambar 2.4 skema operasi bersyarat dengan switch. Penentuan kondisi dilaksanakan dengan menggunakan operator relasi atau logika (lihat Bab I). Bentuk umum operasi bersyarat dengan switch adalah:
Universitas Gadjah Mada
5
Bentuk pertama dapat dipakai jika salah satu kondisi dipenuhi (benar), maka hanya ada satu pernyataan saja yang dieksekusi. Sedang bentuk kedua dipakai jika salah satu kondisi dipenuhi (benar), dan terdapat beberapa pernyataan yang harus yang harus dieksekusi. Pada pernyataan switch, ungkapan dapat berupa konstanta atau variabel. Adapun kondisi1 , kondisi2, kondisi3 dan seterusnya dapat berupa sembarang variabel bertipe int dan char yang dapat digunakan untuk menyatakan pilihan ke-1, ke-2, ke-3 dan seterusnya. Pencocokan ungkapan dengan kondisil , kondisi2, kondisi3 dan sebagainya dilakukan secara berurutan, dimulai dan kondisi1 hingga terakhir. Jika salah satu kondisi dipenuhi atau cocok, maka deretan pernyataan antara case dan break akan dieksekusi. Bagian default hanya akan dijalankan kalau ungkapan pada bagian case tak ada yang cocok dengan ungkapan swich. Bagian default bersifat opsional, artinya bagian ini dapat ditulis atau tidak ditulis. Keberadaan break pada setiap case sangat penting karena break akan menyebabkan aliran perintah keluar dari switch.
Universitas Gadjah Mada
6
B. OPERASI PERULANGAN a) Operasi Perulangan dengan for Operasi perulangan dengan for adalah operasi yang digunakan untuk menjalankan perulangan eksekusi satu atau beberapa pemyataan ketika kondisinya
masih
terpenuhi.
Penentuan
kondisi
dilaksanakan
dengan
menggunakan operator relasi atau logika (lihat Bab I). Perulangan ini dimulai dari suatu nilai inisial yang diberikan untuk suatu pencacah tertentu. Nilai pencacah ini dinaikkan atau diturunkan terus-menerus setiap kali terjadi eksekusi perulangan. Ketika nilai pencacah sudah tidak memenuhi kondisi yang disyaratkan, maka operasi perularigan terhenti. Gambar 2.5 menunjukkan skema operasi perulangan dengan for. Universitas Gadjah Mada
7
Gambar 2.5 skema operasi perulangan dengan for Bentuk umum operasi perulangan dengan for adalah:
b) Operasi Perulangan dengan while Operasi perulangan dengan while adalah operasi yang digunakan untuk menjalankan perulangan eksekusi dari satu atau beberapa pernyataan ketika Universitas Gadjah Mada
8
kondisinya
masih
terpenuhi.
Penentuan
kondisi
dilaksanakan
dengan
menggunakan operator relasi atau logika (lihat Bab I). Perulangan ini dimulai dari suatu nilai inisial yang diberikan untuk suatu pencacah tertentu. Nilai pencacah ini dinaikkan atau diturunkan terus-menerus setiap kali terjadi eksekusi perulangan. Ketika nilai pencacah sudah tidak memenuhi kondisi yang disyaratkan, maka operasi perulangan terhenti. Gambar 2.6 menunjukkan skema operasi perulangan dengan while.
Gambar 2.6 skema operasi perulangan dengan while Bentuk umum operasi bersyarat dengan while adalah:
Universitas Gadjah Mada
9
c) Operasi perulangan dengan do ... while Operasi perulangan dengan do ... while adalah operasi yang digunakan. untuk menjalankan perulangan eksekusi dari satu atau beberapa pernyataan ketika kondisinya masih terpenuhi. Penentuan kondisi dilaksanakan dengan menggunakan operator relasi atau logika (lihat Bab I). Perulangan ini dimulai dari suatu nilai inisial yang diberikan untuk suatu pencacah tertentu. Nilai pencacah ini dinaikkan atau diturunkan terus-menerus setiap kali terjadi eksekusi perulangan. Ketika nilai pencacah sudah tidak memenuhi kondisi yang disyaratkan, maka operasi perulangan terhenti. Gambar 2.7 menunjukkan skema operasi perulangan dengan do...while.
Universitas Gadjah Mada
10
Gambar 2.7 skema operasi perulangan dengan do...while OIeh
karena
pengujian
ungkapan
dilakukan
di
belakang,
bagian
pernyataan pada operasi do...while minimal akan dijalankan sekali. Sedangkan pada opersi while., bagian pernyaataan ada kemungkinan tidak akan dieksekusi Bentuk umum operasi bersyarat dengan do...while adalah:
II. STUDI KASUS
Studi kasus 1 Berikut ini contoh program untuk mencari nilai mutlak suatu bilangan menggunakan operasi bersyarat if..else.
Universitas Gadjah Mada
11
Studi kasus 2 Berikut ini contoh program untuk mencari jenis bilangan bulat, apakah bilangan bulat positif atau negatif dengan menggunakan operasi bersyarat if...else.
Studi kasus 3 Berikut ini contoh program untuk memilih hari dengan menggunakan operasi switch.
Universitas Gadjah Mada
12
Studi kasus 4 Berikut ini contoh program untuk mencari jenis bilangan bulat, apakah bilangan bulat positif atau negatif dengan menggunakan operasi bersyarat if...else.
Studi kasus 5 Berikut ini contoh program untuk membuat tabel konversi suhu celcius ke fahrenheit dengan menggunakan operasi perulangan while.
Universitas Gadjah Mada
13
Studi kasus 6 Berikut ini contoh program untuk membuat tabel konversi suhu celcius ke fahrenheit dengan menggunakan operasi perulangan do...while.
Universitas Gadjah Mada
14
Studi kasus7 Berikut ini contoh program untuk menghitung nilai faktorial dari suatu bilangan tertentu dengan menggunakan operasi perulangan for dan operasi bersyarat if... else
Studi kasus 8 Berikut ini contoh program perulangan bertingkat untuk menghitung sisi - sisi suatu segitiga dengan menggunakan perulangan for sesuai dengan teorema pytagoras.
Universitas Gadjah Mada
15
III. LATIHAN
Latihan 1 Buatlah program untuk menampilkan bilangan ganjil yang lebih besar dan a dan lebih kecil dan b (misalnya, a = 45 dan b = 97).
Latihan 2 Tulislah program untuk menghitung sudut terkecil yang terbentuk antara jarum jam panjang dan jarum jam pendek pada saat menunjuk jam tertentu. Sebagai contoh, jika pengguna memasukkan jam 12:00, program akan menampilkan keluaran “0 derajat”. Masukan fungsi adalah berupa dua bilangan bulat yang melambangkan jam dan menit. Keluaran fungsi adalah sudut terkecil yang dibentuk oleh jarum jam tersebut.
Latihan 3 Tulislah program untuk menghitung jumlah deret berikut:
Latihan 4 Tulislah program dengan menggunakan operasi for ... dan while untuk menghitung FPB (Faktor persekutuan terbesar ) dan dua bilangan bulat. Masukan program berupa dua bilangan bulat dan keluarannya berupa faktor persekutuan terbesar dan dua bilangan tersebut.
Universitas Gadjah Mada
16
Latihan 5 Tulislah program untuk mencari semua nilai x, y dan z yang memenuhi persamaan liniar berikut:
Latihan 6 Buatlah program untuk mencari nilai bilangan prima dari batas terendah bilangan
a hingga batas tertinggi bilangan b.
Latihan 7 Buatlah program untuk menghitung akar-akar persamaan kuadrat dengan menggunakan operasi kondisi if...else
Latihan 8 Buatlah program untuk menentukan nilai mahasiswa dengan menggunakan operasi switch dengan masukan berupa nilai dalam bentuk angka dan keluaran berupa nilai dalam bentuk huruf (A, B, C, D, atau E).
Latihan 9 Buatlah program yang menampilkan perubahan energi kinetik, energi dan energi total tiap detik dari benda bermassa m yang bergerak jatuh ketinggian h hingga menyentuh tanah. (Diasumsikan percepatan gravitasinya 9.8 m/s2)
Latihan 10 Buatlah program untuk menampilkan perubahan besar kecepatan total peluru sebuah meriam yang ditembakkan pada arah a° dengan kecepatan awal v0 dari permukaan tanah hingga jatuh ke tanah kembali. (Diasumsikan percepatan gravitasinya 9.8 m/s2)
Universitas Gadjah Mada
17