Pengantar Informatika : Fungsi Pengulangan dan Contoh Soal
Latar Belakang
- Komputer : memiliki performansi yang sama
- Manusia : punya kecenderungan untuk melakukan kesalahan (karena letih atau bosan)
Proses kerja berulang
Contoh Kasus
- Mencetak bilangan 1 sampai dengan 10
- Menghitung jumlah total bilangan genap antara 5 sampai dengan 25 ( 6+8+10+…. +20+22+24)
- Menghitung banyaknya karakter “a” dari data 25 karakter
- Menampilkan n bilangan asli pertama, nilai n sebagai data input (bilangan asli = bilangan bulat positif)
- Menampilkan bentuk gambar pohon bintang
*
**
***
****
Contoh Kasus No.1
Contoh Kasus No.2
Pengulangan
Elemen :
- Kondisi pengulangan: ekspresi lojik
- Badan pengulangan: aksi yang diulang
Notasi pengulangan :
- Berdasarkan jumlah pengulangan
- Berdasarkan kondisi pengulangan
- Berdasarkan kondisi berhenti
- Berdasarkan dua aksi
- Berdasarkan pencacah
Pengulangan berdasarkan Jumlah Pengulangan
FOR digunakan saat kita mengetahui berapa banyak pengulangan yang akan dilakukan
Pengulangan FOR tidak membutuhkan counter untuk menaikan variabel karena sudah disebutkan pada salah satu parameter pengulangan.
FOR memiliki 3 parameter yaitu :
- Inisialisasi (initial value) : nilai awal
- Kondisi Loop : memuat batas nilai akhir, limit
- Iterasi : operator increment/decrement (step-size)
Contoh 1
Proses membuat Nasi : sub-proses mencuci beras
- Cuci beras 3 kali hingga bersih
- Cuci Beras : Tuangkan air; aduk-aduk; buang air kotor
Contoh 2
Proses mengupas kentang (minimal ada 1 kentang)
Pengulangan berdasarkan kondisi perulangan
Digunakan pada saat kita memiliki kondisi/syarat-perulangan yang menjadi batas (bernilai TRUE) terjadi perulangan.
Aksi akan dilakukan selama kondisi-perulangan masih dipenuhi (bernilai true). Test terhadap kondisi-perulangan dilakukan setiap kali sebelum aksi dilaksanakan.
Pengulangan ini berpotensi untuk menimbulkan aksi “kosong” (tidak pernah melakukan apa-apa) karena pada test yang pertama, kondisi- perulangan tidak dipenuhi (berharga false)
Contoh 1
Proses membuat Nasi : sub-proses mencuci beras
- Cuci beras 3 kali hingga bersih
- Cuci Beras : Tuangkan air; aduk-aduk; buang air kotor
Contoh 2
Latihan 1
Tuliskanlah sebuah program yang membaca sebuah nilai N (integer positif, lebih besar dari nol), dan menuliskan output nilai 1,2,3,4, … s.d. N berderet ke bawah sbb
1
2
3
...
n
For –EndFor
Program TulisBil
Deskripsi : menampilkan N bilangan asli menggunakan For-EndFor
Variabel : I,N : integer
Algoritma
WhileDo – EndDo
Program TulisBil
Deskripsi : menampilkan N bilangan asli menggunakan do-while
Variabel : I,N : integer
Algoritma
Program TulisBil
Deskripsi : menampilkan N bilangan asli menggunakan do-while
Variabel : I,N : integer
Algoritma
Fungsi Rekursif
Penerapan fungsi matematika pada ilmu komputer adalah fungsi rekursif yaitu sebuah fungsi yang memanggil dirinya sendiri.
Dua ciri fungsi rekursif :
- Fungsi rekursif selalu memiliki kondisi yang menyatakan kapan fungsi tersebut berhenti. Kondisi ini harus dapat dibuktikan akan tercapai, karena jika tidak tercapai maka kita tidak dapat membuktikan bahwa fungsi akan berhenti, yang berarti algoritma kita tidak benar.
- Fungsi rekursif selalu memanggil dirinya sendiri sambil mengurangi atau memecahkan data masukan di saat fungsi dipanggil. Tujuan utama dari rekursif ialah memecahkan masalah dengan mengurangi masalah tersebut menjadi masalah- masalah kecil.
Contoh Rekursif
Penjumlahan 1 + 2 + … + n
Algoritma Rekursif While-Do
Algoritma Rekursif For
Latihan 3
Selesaikan Latihan-3 menggunakan konsep menaik (i++) dengan konsep pengulangan :
- While Do-EndDo
- For-EndFor
Latihan 4
Selesaikan Latihan-4 menggunakan konsep menurun (i--) dengan konsep pengulangan :
- WhileDo-EndDo
- For-EndFor
Latihan 5
FX adalah sebuah fungsi x. Buatlah algoritma untuk menghitung nilai FX dimana nilai x adalah :
-2.00 <= x <= 2.00 dengan inkremen 0.5 yaitu :
x = -2.00; -1.50; -1.00; -0.50; 0.00; 0.50; 1.00; 1.50; 2.00
Latihan 6
- Sebuah program menerima 100 karakter huruf kapital. Untuk setiap huruf yang diterima, program akan memberi pesan apakah huruf tersebut “huruf vokal” (A, I, U, E, O) atau bukan. Buatlah algoritma untuk program tersebut.
- Buatlah langkah penyelesaian untuk masalah berikut. Pengguna memasukkan data nama pria sebanyak N buah dan data nama wanita sebanyak M buah. Program akan menghasilkan data nama pasangan pria dan wanita.
- Buatlah algoritma untuk menampilkan semua bilangan genap antara 1- 50 dan menampilkan jumlah bilangan-bilangan genap tersebut
- Buatlah algoritma program RataRata yang dapat menghasilkan nilai rata-rata kumpulan bilangan integer X1, X2, … Xn.
Posting Komentar