Anda di halaman 1dari 22

ALGORITMA & PEMROGRAMAN II

STRUKTUR PERULANGAN (LOOPING)

1. Tujuan

Memperkenalkan fungsi perulangan sebagai suatu pernyataan yang digunakan untuk

mengulang suatu blok perintah sampai kondisi tertentu, yang dapat dikendalikan

jumlahnya oleh aplikasi yang dibuat pada kondisi tertentu.

2. Teori Dasar

Proses perulangan pada pemrograman akan terus dikerjakan selama kondisi yang

dibandingkan oleh proses tersebut masih bernilai Benar (True). Jika kondisi yang

dibandingkan bernilai Salah (False), proses pengulangan akan berhenti dan jalannya

program akan dilanjutkan setelah proses pengulangan.

Fakultas Ilmu Komputer Universitas Lancang Kuning


ALGORITMA & PEMROGRAMAN II

3. Praktek / Percobaan

A. STRUKTUR FOR NEXT

Struktur For Next digunakan untuk mengulang blok perintah dalam jumlah yang

sudah ditentukan. Pada struktur ini anda tidak perlu menuliskan kondisi yang akan diuji

tetapi hanya perlu menuliskan nilai awal dan akhir variable penghitung. Nilai variable

penghitung ini akan secara otomatis bertambah atau berkurang setiap kali suatu

pengulangan dikerjakan.

Bentuk penulisan struktur For Next adalah sebagai berikut :

For Var= Awal To Akhir Step Pertambahan

Ekspresi

Next counter

Keterangan :

a. Var

Nama Variabel integer yang digunakan untuk melakukan proses pengulangan

b. Awal

Nilai suatu variabel integer untuk menentukan harga awal suatu pengulangan.

c. Akhir

Nilai suatu variabel integer untuk menentukan harga akhir suatu pengulangan.

d. Pertambahan

Biasanya nilai perubahan dari nilai awal sampai nilai akhir. Jika pengulangannya

menurun yaitu dari nilai yang besar menuju ke nilai yang kecil, maka nilai

Fakultas Ilmu Komputer Universitas Lancang Kuning


ALGORITMA & PEMROGRAMAN II

perubahannya harus negatif. Nilai standar pertambahan adalah bertambah 1.

e. Ekspresi

Suatu blok perintah yang akan dikerjakan jika kondisi dari proses pengulangan

memenuhi syarat.

Pada Flowchart :

Mulai

For Var Awal to


Akhir Step N

Ekspresi

Next

Selesai

Keterangan :

Proses pengulangan dilakukan saat nilai variabel dimulai dari awal sampai akhir sesuai

dengan besar nilai pertumbuhan (N).

Selama proses pengulangan maka blok program yang berada di ekspresi akan

dikerjakan.

Fakultas Ilmu Komputer Universitas Lancang Kuning


ALGORITMA & PEMROGRAMAN II

PENGULANGAN POSITIF

Pengulangan positif merupakan pengulangan dengan nilai penghitung (counter) dari

kecil ke besar atau pertambahannya positif.

Contoh :

Buat Flowchart dan Program yang bertujuan untuk menampilkan bilangan 1 sampai 5.

Jawaban pada Flowchart :

Mulai

For Bil 1 to 5

Print Bil

Next

Selesai

Jawaban pada Program :

Module Module1

Sub Main()
Dim bil As Integer
For bil = 1 To 5
Console.Write(bil & " ")
Next
Console.ReadLine()
End Sub

End Module

Fakultas Ilmu Komputer Universitas Lancang Kuning


ALGORITMA & PEMROGRAMAN II

Output Program :

PENGULANGAN NEGATIF

Pengulangan negatif merupakan pengulangan dengan nilai penghitung (counter) dari

besar ke kecil atau pengulangannya negatif.

Contoh :

Buat Flowchart dan Program yang bertujuan untuk pengulangan mulai bilangan 10

sampai 1 dimana bilangan pertama yang dicetak adalah 10 dengan pengurangan 2.

Jawaban pada Flowchart :

Mulai

For Bil 10 to 1 step -


2

Print Bil

Next

Selesai

Fakultas Ilmu Komputer Universitas Lancang Kuning


ALGORITMA & PEMROGRAMAN II

Jawaban pada Program :

Module Module1
Sub Main()
Dim bil As Integer
For bil = 10 To 1 step -2
Console.Write(bil & " ")
Next
Console.ReadLine()
End Sub
End Module

Output Program :

LATIHAN

1. Buatlah deret bilangan 100,95,90, 85,,, dan seterusnya sampai 20 suku.

2. 2. Buatlah deret bilangan 0,3,6,9,,, dan seterusnya sampai 15 suku.

3. Buatlah deret bilangan 1024,512,256,... dan seterusnya sampai 10 suku.

4. Buatlah deret bilangan 1,10,100 ,... dan seterusnya sampai 8 suku.

5. Buatlah deret bilangan 1,3,5,7,... dan seterusnya sampai 20 suku.

Fakultas Ilmu Komputer Universitas Lancang Kuning


ALGORITMA & PEMROGRAMAN II

NESTED FOR NEXT

Pengulangan nested for next merupakan pengulangan didalam struktur for next.

Contoh :

Buat Flowchart dan Program untuk menampilkan deretan bilangan seperti pada

tampilan berikut :

1 2 3 4 5

2 3 4 5

3 4 5

4 5

Jawaban Flowchart :

Mulai

For A 1 to 5

For B A to 5

Print B

Next

Next

Selesai

Fakultas Ilmu Komputer Universitas Lancang Kuning


ALGORITMA & PEMROGRAMAN II

Jawaban Pada Program :

Module Module1
Sub Main()
Dim A, B As Integer
For A = 1 To 5
For B = A To 5
Console.Write(B & " ")
Output Program
Next:
Console.WriteLine()
Next
Console.ReadLine()
End Sub
End Module

Output Program :

LATIHAN :

1. Buat flowchart dan program untuk menampilkan deretan bilangan seperti pada tampilan

berikut :

* *

* * *

* * * *

* * * * *

Fakultas Ilmu Komputer Universitas Lancang Kuning


ALGORITMA & PEMROGRAMAN II

2. Buatlah flowchart dan program untuk menampilkan gambar seperti ini :

* *

* * *

* * * *

* * * * *

* * * *

* * *

* *

3. Buatlah flowchart dan program untuk menampilkan gambar dibawah ini :

* * * * *

* * * *

* * *

* *

* *

* * *

* * * *

* * * * *

Fakultas Ilmu Komputer Universitas Lancang Kuning


ALGORITMA & PEMROGRAMAN II

B. STRUKTUR DO LOOP

Secara umum struktur pengulangan do loop terdiri dari lima variasi pernyataan.

Tiga variasi memiliki model yang sama yaitu pengecekan dilakukan pada awal

pengulangan sedang sisanya dilakukan setelah proses dikerjakan.

Perbedaan perintah do-loop dan for next :

No Do-Loop For Next

1 Nilai pada kondisi dapat bertipe number Nilai pada kondisi hanya bertipe

maupun string number tidak dapat bertipe string

2 Batasan pengulangan dapat terbatas atau Batasan pengulangannya terbatas

tidak terhingga

3 Variabel yg dipakai pada kondisi harus Variabel yg dipakai pada kondisi

diberi harga awal tidak perlu diberi harga awal

4 Perubahan nilai pada kondisi yang bertipe Perubahan nilai pada kondisi

number harus dilakukan secara manual dilakukan secara otomatis

5 Suatu blok perintah dalam do loop bisa Suatu blok perintah dalam for next

dikerjakan tanpa harus menyeleksi nilai tidak dapat dikerjakan sebelum

kondisi terlebih dahulu kondisinya terseleksi

Fakultas Ilmu Komputer Universitas Lancang Kuning


ALGORITMA & PEMROGRAMAN II

DO WHILE LOOP

Do While Loop digunakan untuk melakukan pengulangan terus-menerus selama

kondisi memenuhi syarat (bernilai true).

Contoh :

Buat Flowchart dan Program untuk menampilkan bilangan seperti pada tampilan

berikut.

Input Bilangan :9

Deretan Bilangan : 1 2 3 4 6 7 8 9

Total Bilangan : 45

Jawaban pada Flowchart :

Fakultas Ilmu Komputer Universitas Lancang Kuning


ALGORITMA & PEMROGRAMAN II

MULAI

N, BIL : Integer
TOTAL : Integer
N<1

Input BIL

N BIL

Print N

TOTAL < TOTAL + N


N < N+1

Print Total

Selesai

Jawaban pada Program :

Module Module1
Sub Main()
Dim N, Bil, Total As Integer
N = 1
Console.Write("Input Bilangan = ")
Bil = Console.ReadLine()
Console.Write("Deretan Bilangan = ")
Do While N <= Bil
Console.Write(N & " ")
Total = Total + N
N += 1
Loop
Console.WriteLine()
Console.Write("Total Bilangan = " & Total)
Console.ReadLine()
End Sub
End Module

Fakultas Ilmu Komputer Universitas Lancang Kuning


ALGORITMA & PEMROGRAMAN II

Output Program :

DO LOOP UNTIL

Do Loop Until merupakan struktur pengulangan yang metodenya kebalikan dari

struktur Do While Loop.

Contoh :

Buat Flowchart dan Program untuk menampilkan bilangan seperti pada tampilan

berikut.

Input Bilangan :9

Deretan Bilangan : 1 2 3 4 6 7 8 9

Total Bilangan : 45

Jawaban pada Flowchart :

Fakultas Ilmu Komputer Universitas Lancang Kuning


ALGORITMA & PEMROGRAMAN II

MULAI

N, BIL : Integer
TOTAL : Integer
N<1

Input BIL

Print N

TOTAL < TOTAL + N


N < N+1

N > BIL

Print Total

Selesai

Jawaban pada Program :

Module Module1
Sub Main()
Dim N, Bil, Total As Integer
N = 1
Console.Write("Input Bilangan = ")
Bil = Console.ReadLine()
Console.Write("Deretan Bilangan = ")
Do
Console.Write(N & " ")
Total = Total + N
N += 1
Loop Until N > Bil
Console.WriteLine()
Console.Write("Total Bilangan = " & Total)
Console.ReadLine()
End Sub
End Module

Fakultas Ilmu Komputer Universitas Lancang Kuning


ALGORITMA & PEMROGRAMAN II

Output Program :

NESTED DO LOOP

Suatu pengulangan yang dibuat dengan struktur Do Loop dapat dibentuk dengan

struktur bersarang (Nested).

Contoh :

Buatlah suatu program untuk menampilkan deretan bilangan sesuai dengan nilai yang

diinputkan dan jumlahkan seluruh bilangan tersebut.

Setiap kali deret bilangan ditampilkan, terdapat pesan Mau coba lagi? Jika klik

tombol yes maka diinputkan lagi bilangan berikutnya dan bila di klik tombol no

maka programnya berhenti. Tampilan program seperti berikut :

Masukkan jumlah suku : 1 2 3 4 5

Output : 1 2 3 4 5 = 15

Jawaban pada Program :

Fakultas Ilmu Komputer Universitas Lancang Kuning


ALGORITMA & PEMROGRAMAN II

Dim mulai As Boolean = True


Dim jwb As Object
Dim Bil, N, Total As Integer
Do While mulai = True
Try
N = 1
Bil = 0
Total = 0
Console.Write("Masukkan jumlah suku = ")
Bil = Console.ReadLine()
Console.Write("Output = ")
Do While N <= Bil
Console.Write(N & " ")
Total += N
N += 1
Loop
Console.Write("= " & Total)
jwb = MsgBox("Mau coba lagi? ", MsgBoxStyle.YesNo,
"Persetujuan")
Console.WriteLine()
If jwb = vbNo Then
mulai = False
End If
Catch ex As Exception
MsgBox(ex.Message)
End Try
Loop
Console.ReadLine()

Output Program :

Fakultas Ilmu Komputer Universitas Lancang Kuning


ALGORITMA & PEMROGRAMAN II

LATIHAN :

1. Buatlah program perulangan berikut

SWALAYAN ABC

KODE BARANG :
NAMA BARANG :
HARGA BARANG :
JUMLAH BELI :
ADA TRANSAKSI LAGI? [Y/T]
---------------------------------------------------------------------------------------------------------------------
TOTAL BAYAR :
----------------------------------------------------------------------+
CASH :
KEMBALIAN :

Fakultas Ilmu Komputer Universitas Lancang Kuning


ALGORITMA & PEMROGRAMAN II

LOOPING DATA SUKU KE N

Looping data suku ke N merupakan looping yang sudah kita tentukan banyak sukunya. Misalnya
kita input nilai atau jumlah suku yang akan kita loopingkan dan program secara otomatis langsung
ngeloopng sebanyak nilai yang kita masukkan tadi.
Contoh

Mau input berapa data? :

Nomor Induk Mahasiswa :


Nama Mahasiswa :
Mata Kuliah :
Nilai Kehadiran :
Nilai Tugas :
Nilai MID :
Nilai UAS :
Nilai Akhir :
Nilai Huruf :
NILAI AKHIR = (10% Nilai Kehadiran) + (20% Nilai Tugas) + (30% Nilai MID) +
(40% Nilai UAS)

Jika NILAI AKHIR >= 80 maka NILAI HURUF A


Jika NILAI AKHIR >= 70 maka NILAI HURUF B
Jika NILAI AKHIR >= 60 maka NILAI HURUF C
Jika NILAI AKHIR >= 50 maka NILAI HURUF D
Jika NILAI AKHIR < 50 maka NILAI HURUF E

Anda telah menyelesaikan input data sebanyak :

Jawaban pada program:

Fakultas Ilmu Komputer Universitas Lancang Kuning


ALGORITMA & PEMROGRAMAN II

Dim dt, x, nt, nk, nmid, nuas, na As Integer


Dim nim, nm, jur, nh As String
Console.Write(" Mau Input Berapa Data? ")
dt = Console.ReadLine()
Console.WriteLine()

Do Until x = dt
Console.Write(" Nomor Induk mahasiswa =")
nim = Console.ReadLine()
Console.Write(" Nama mahasiswa =")
nm = Console.ReadLine()
Console.Write(" Jurusan =")
jur = Console.ReadLine()
Console.Write(" Nilai Tugas =")
nt = Console.ReadLine()
Console.Write(" Nilai Kehadiran =")
nk = Console.ReadLine()
Console.Write(" Nilai Mid =")
nmid = Console.ReadLine()
Console.Write(" Nilai Semester =")
nuas = Console.ReadLine()

na = (0.2 * nt) + (0.1 * nk) + (0.3 * nmid) + (0.4 * nuas)

If na >= 80 Then
nh = "A"
ElseIf na >= 70 Then
nh = "B"
ElseIf na >= 60 Then
nh = "C"
ElseIf na >= 50 Then
nh = "D"
Else
nh = "E"
End If

Console.WriteLine(" Nilai Akhir =" & Space(2) & na)


Console.WriteLine(" Nilai Huruf =" & Space(2) & nh)
Console.WriteLine()
x=x+1
Loop
Console.WriteLine()
Console.WriteLine(" Anda Telah Menyelesaikan Proses Input Data sebanyak = " & dt)
Fakultas Ilmu Komputer Universitas Lancang Kuning
Console.ReadLine()
ALGORITMA & PEMROGRAMAN II

Output program :

LATIHAN :

Buatlah kata-kata berikut SAYA <NAMA SENDIRI>BERJANJI TIDAK AKAN COPY


PASTE TUGAS LAGI DAN AKAN MEMBUAT SENDIRI DAN JADI LEBIH BAIK
LAGI

LOOPINGLAH KATA-KATA DI ATAS SEBANYAK 100x

Fakultas Ilmu Komputer Universitas Lancang Kuning


ALGORITMA & PEMROGRAMAN II

DO LOOP CLEAR

Do loop clear sama seperti nested do loop, perbedaannya adalah ketika nested do loop
melakukan perulangan maka data yang sudah diiputkan masih tersimpan di program yang
sedang berjalan sedangkan do loop clear ketika program melakukan looping maka data
yang sudah diinputkan akan hilang dan kembali ke penginputan data di awal.

Contoh :

Buatlah program untuk menampilkan data mahasiswa berikut :

NIM :

Nama Mahasiswa :

Ingin input data lagi? [Y/T]?

Jawaban pada program :

Dim nim, nm, x As String

Do
Console.Clear()
Console.Write(Nomor Induk Mahasiswa = ")
nim = Console.ReadLine()
Console.Write(Nama Mahasiswa =")
nm = Console.ReadLine()
Console.WriteLine()
Console.Write(Ingin Input Data Lagi?[Y/T]? = ")
x = Console.ReadLine()
If x = "T" Or x = "t" Then
End
End If
Loop
Console.ReadLine()

Jadi program tersebut akan berhenti ketika kita memasukkan T

Fakultas Ilmu Komputer Universitas Lancang Kuning


ALGORITMA & PEMROGRAMAN II

Output program :

LATIHAN

1. Buatlah program berikut :

Tanggal Transaksi : xx/xx/xxxx


Nama Pembeli : ................................................................

Alamat : ................................................................
Kode Barang : ................................................................
Merek Barang : ...............................................................
Harga Barang : Rp. ........................................................
Status : ...............................................................
Bayar : Rp. .........................................................
Cash : Rp. .........................................................
Kembalian Uang : Rp. .........................................................
Ketentuan :
Jika KODE BARANG = AC-14 ; MEREK BARANG = Acer Aspire E14 ; HARGA BARANG Rp.
5.300.000
Jika KODE BARANG = AC-12 ; MEREK BARANG = Acer Aspire D12 ; HARGA BARANG Rp.
3.300.000
Jika KODE BARANG = TS-29 ; MEREK BARANG = Toshiba L229 ; HARGA BARANG Rp.
5.100.000
Jika KODE BARANG = LV-46 ; MEREK BARANG = Lenovo LV-460 ; HARGA BARANG Rp.
3.000.000

Jika status PROMO maka mendapat potongan sebesar Rp. 200.000


Jika status TIDAK PROMO maka harga normal

Hitunglah berpa yang harus dibayar dan kembalian uang pembeli!

Ada transaksi lagi? [Y/T]

Fakultas Ilmu Komputer Universitas Lancang Kuning

Anda mungkin juga menyukai