struktur data dan algoritma W4 - JGU.pdf

migitagha 0 views 32 slides Oct 24, 2025
Slide 1
Slide 1 of 32
Slide 1
1
Slide 2
2
Slide 3
3
Slide 4
4
Slide 5
5
Slide 6
6
Slide 7
7
Slide 8
8
Slide 9
9
Slide 10
10
Slide 11
11
Slide 12
12
Slide 13
13
Slide 14
14
Slide 15
15
Slide 16
16
Slide 17
17
Slide 18
18
Slide 19
19
Slide 20
20
Slide 21
21
Slide 22
22
Slide 23
23
Slide 24
24
Slide 25
25
Slide 26
26
Slide 27
27
Slide 28
28
Slide 29
29
Slide 30
30
Slide 31
31
Slide 32
32

About This Presentation

struktur data dan algoritma W4 - JGU.pdf


Slide Content

StrukturData dan Algoritma
Pramitha Dwi Larasati
Teknik Informatika
Jakarta Global University
Looping

Looping
(Iteration)
Pengulangan atau disebut sebagai
looping adalah instruksi khusus dalam
bahasa pemrograman dan algoritma
yang digunakan untuk mengulang
beberapa perintah sesuai dengan
jumlah yang telah ditentukan.

Looping
(Iteration)
Tujuannya adalah untuk mempermudah
pengerjaan program dan untuk
mempersingkat instruksi program.
Dengan pengulangan instruksi program
yang seharunya ditulis dengan jumlah
baris yang banyak bisa dipersingkat.

Looping
Looping Statement:
1.While
2.Do …. While
3.For

Penggunaan :
While
dan
do … while

While
•Bentuk statement while:
WHILE (condition):
(statement)
ENDWHILE
•Statement dijalankan jika evaluasi
ekspresi kondisi adalah true
•Jika evaluasi ekspresi kondisi adalah
false maka loop akan berakhir
–Keluar dari loop ketika kondisi
Conditio
n Value
Statement
False
True

While Loop Example
Loop Output Explanation
nilai = 5
WHILE nilai > 0:
PRINT nilai
nilai - -
ENDWHILE
5 4 3 2 1 Ketika nilai bernilai 0 akan bernilai
FALSE maka pengulangan akan berhenti
mencetak nilai
nilai = 5
WHILE nilai > 0:
PRINT nilai
nilai ++
ENDWHILE
5 6 7 8 9 10 … Nilai akan terus bertambah hingga
menghasilkan INFINITE LOOP
nilai = 5
WHILE nilai>5:
PRINT nilai
nilai - -
ENDWHILE
(no output) Statement nilai > 5 bernilai FALSE
sehingga loop tidak dijalankan
nilai = 5
WHILE nilai < 0 :
PRINT nilai
nilai - -
ENDWHILE
(no output) Statement nilai < 0 bernilai FALSE,
sehingga loop tidak dijalankan

DO…
While
•Untuk pengualangan terhadap suatu yang
belum diketahui jumlahnya.
•Instruksi akan dijalankan terlebih dahulu.
•Minimal ada 1x proses do pada do while,
baru ek while.
•Kemudian pengencekan bernilai “true”
(looping berlanjut)
DO (statement)
WHILE (condition)

ENDWHILE

While Loop Example
Loop Output
nilai = 5
DO PRINT nilai
WHILE nilai > 0;
nilai - -
ENDWHILE
5 4 3 2 1 0
DO PRINT nilai
WHILE nilai > 0:
nilai ++
ENDWHILE
5 6 7 8 9 10 …
DO PRINT nilai
WHILE nilai>5:
nilai - -
ENDWHILE
5
DO PRINT nilai
WHILE nilai < 0 :
nilai - -
ENDWHILE
5

Common
Error in
Looping:
INFINITE
LOOP
•INFINITE LOOP
nilai =0
WHILE nilai <10:
nilai = nilai * 0
ENDWHILE
–Menyebabkan loop terus menerus (infinite loop) dan
program tidak akan berakhir
–Perhatikan nilai yang tidak pernah berubah (increment)
–Ingat: Prasyarat algoritma komputasi harus terminated loop
statement untuk menyebabkan program tidak pernah
berakhir

PROBLEM
•Jika Ingin melakukan print bilangan ganjil dari 1…20
–Example : 1 3 5 7 9 11 13 15 17 19
BEGIN nilai_ganjil
INT nilai;
Nilai=1;
WHILE nilai < 20;
print nilai;
nilai +2;
END WHILE
END

PROBLEM
•Jika Ingin melakukan print bilangan genap
dari 1…20
–Example : 2 4 6 8 10 12 14 16 18 20
BEGIN nilai_genap
INT nilai
nilai=2;
DO print nilai;
WHILE nilai<20;
nilai +2;
ENDWHILE
END
BEGIN nilai_genap
INT nilai
nilai=0;
DO nilai=nilai+2;
print nilai;
WHILE nilai<20;
ENDWHILE
END

Output :
1. mitha
2. mitha
3. mitha
4. mitha
5. mitha
•Silahan buat conditional statement
dengan DO while atau While
BEGIN nama_loops
Int n
n= 1
Do PRINT n, “. mitha”
While n<5
n++
END WHILE
END
contoh

Output :
1.Kelompok 1
2.Kelompok 2
3.Kelompok 3
4.Kelompok 4
5.Kelompok 5
•Silahan buat conditional statement
dengan DO while atau While
LATIHAN 1

Pengunaan :
For loop

For Loop
•Inisialisasi hanya dilakukan sekali
sebelum loop dimulai
•Kondisi evaluasi. Jika kondisi adalah
true, statement dieksekusi dan
kemudian di update
•Jika False maka loop berhenti
•Pengulangan for dilakuakn untuk suatu
proses apabila jumlahnya telah diketahui

For Loop
Bentuk statement dari for loop:
FOR [iterating variable] in [sequence]:
[do something]
ENDFOR
ATAU
FOR (inisialisasi; kondisi; iterasi):
(statement)
ENDFOR

Looping:
for
stateme
nt
•Terdapat nilai awal
•Batasan atau kondisi dimana nilai tersebut dapat
diuji sehingga loop akan determinate
•Increment/decrement atau perubahan nilai
tersebut, jika loop belum terminate
FOR j = start; j<=end; inc/decr:
statement
ENDFOR
FOR j IN RANGE (start, end, inc/decr):
statement
ENDFOR

Exampl
e
FOR i IN RANGE(0,5):
PRINT i
ENDFOR
Output: 0 1 2 3 4
FOR i IN RANGE (6):
PRINT i
ENDFOR
Output: 0 1 2 3 4 5
FOR i IN RANGE
(20,25):
PRINT i
ENDFOR
Output: 20 21 22 23
24
FOR i IN RANGE
(0,15,3):
PRINT i
ENDFOR
Output: 0 3 6 9 12
FOR i IN RANGE(5,0,-
1):
PRINT i
ENDFOR
Output: 5 4 3 2 1
FOR i IN RANGE (10,3,-
3):
PRINT i
ENDFOR
Output: 10 7 4
FOR [iterating variable] in
[sequence]:
[do something]
ENDFOR

Example
FOR inisialisasi; kondisi;
iterasi:
(statement)
ENDFOR
FOR i = 0; i<5; i++:
PRINT i
ENDFOR
Output: 0 1 2 3 4
FOR i = 20; i < 25; i++:
PRINT i
ENDFOR
Output: 20 21 22 23 24
FOR i = 0; i < 10; i+=3:
PRINT i
ENDFOR
Output : 0 3 6 9
FOR i = 5; i>0; i--:
PRINT i
ENDFOR
Ouput: 5 4 3 2 1
FOR i = 10; i > 0; i-=3:
PRINT i
ENDFOR
Output: 10 7 4 1

Flow
Chart
For
Loop
conditio
n
Initialization
Statement
update
True
False

Equivale
nce of
while
and for

Tips:
while
and for
•For:
–Cocok digunakan untuk loop yang sudah diketahui
rangenya
–Set initial value sebagai counter(variable)
–Update counter(increment and decrement)
–Note: usahakan jangan mengubah variable counter
dalam loop
•While:
–Digunakan untuk loop yang lain (yang tidak dapat
diwakili
–Initial value dari counter harus didefinisikan sebelum
while

Buatlah Pseudo code pengulangan (looping FOR) untuk
menampilkan hasil seperti di bawah ini. (total ada 7 pseudo
code)
a) 1, 2, 3, …, 15,
b) 15, 14, 13, …, 1,
c) 0, 2, 4, 6, 8, 10,
d) 10, 8, 6, 4, 2, 0,
e) 1, 3, 5, .., 19,
f) Semua bilangan ganjil, maksimal 99
g) Bilangan genap, maksimal 100
Latihan 2
(Dikerjakan dan
dikumpulkan di
akhir perkuliahan)
45 menit

Nested Loop
Sebuah problem menggunakan
nested loop jika terjadi pengulangan
di dalam pengulangan

Example
•Buatlah sebuah segita seperti ini:
*
**
***
****

Pseudo
code
FOR j IN RANGE (0,4);
FOR k IN RANGE (0,j);
PRINT “*”
ENDFOR
ENDFOR
FOR j=0;j<4;j++;
FOR k=0; k<j;k++;
PRINT “*”
ENDFOR
ENDFOR

Bagaimana output yg
dihasilkan ?
FOR j=0;j<4;j++:
FOR k=0; k<j;k++;
PRINT j
ENDFOR
ENDFOR
FOR j=0;j<=4;j++:
FOR k=0; k<=j;k++;
PRINT k
ENDFOR
ENDFOR
Latihan 3
(Dikerjakan dan
dikumpulkan di
akhir perkuliahan)
30 menit
Tulis jawaban kalian untuk output dan pembuktiannya

Bagaimana output yg
dihasilkan ?
FOR j=0;j<4;j++:
FOR k=0; k<j;k++;
PRINT j
ENDFOR
ENDFOR
FOR j=0;j<=4;j++:
FOR k=0; k<=j;k++;
PRINT k
ENDFOR
ENDFOR
Latihan 3
(Dikerjakan dan
dikumpulkan di
akhir perkuliahan)
30 menit
Tulis jawaban kalian untuk output dan pembuktiannya
J = 1 >> 1
J = 2 >> 22
J = 3 >> 333
J = 4 >> 4444
J = 1 >> 01
J = 2 >> 012
J = 3 >> 0123
J = 4 >> 01234
J = 5 >> 012345

Tugas Kelompok 3 (TK3)
•Buatlah pseudo code untuk menghasilkan seperti di bawah ini
*****
****
***
**
*
**
***
****
*****

PENGUMPULAN LATIHAN
•LATIHAN SETIAP PERTEMUAN DIKUMPULKAN
PADA EDLINK
•DIPERBOLEHKAN DALAM BENTUK TULIS
TANGAN (DIFOTO)/DIKETIK
•CANTUMKAN NAMA DAN NIM

References
Ljubomir Perkovic.
Introduction to Computing
using
Python. 2nd Edition. John
Wiley & Sons, 2015
01
Mark Allen Weiss, Data
Structures and Problem
Solving Using Java (4rd
edition), Addison Wesley,
2010
02
https://dosenit.com/kuliah-
it/sistem-
informasi/pengertian-
algoritma-flowchart-dan-
pseudocode
03
Tags