Pertemuan 6
By: Augury
augury@pribadiraharja.com
Sequence
Sequence
Instruksi A
Instruksi B
Instruksi C
Sequence
Pengaruh Urutan Instruksi
Perhatikan contoh:
Contoh
Algoritma_Sequence_1
{Contoh algoritma yang menghasilkan keluaran berbeda jika urutan
berbeda}
DEKLARASI
DESKRIPSI
A, B
: Integer
A 10
A 2 * A
B A
write (B)
{nilai B yang dicetak ke piranti keluaran = 20}
Algoritma_Sequence_2
{Contoh algoritma yang menghasilkan keluaran berbeda jika
urutan berbeda}
DEKLARASI
DESKRIPSI
A, B
: Integer
A 10
B A
A 2 * A
write (B)
{nilai B yang dicetak ke piranti keluaran = 10}
Contoh
Algoritma_Luas_Segitiga
{Contoh algoritma menghitung luas segitiga}
DEKLARASI
a : Integer {Alas Segitiga}
t : Integer {Tinggi Segitiga}
L : Integer {Luas Segitiga}
DESKRIPSI
read (a)
read (t)
L a * t /2
write (L)
Contoh kasus:
1.
2.
misalkan nilai A=8 dan nilai B=5. Lakukan pertukaran nilai A dengan nilai
B sehingga nilai A=5 (nilai B) dan nilai B=8 (nilai A)
Lakukan pembacaan dari piranti input untuk nilai A, lakukan pembacaan
dari piranti input untuk nilai B, tampilkan nilai A dan nilai B ke piranti
keluaran. Lakukan pertukaran antara nilai A dan nilai B, tampilkan nilai A
dan nilai B ke piranti keluaran.
Contoh
Contoh kasus:
1.
2.
3.
SELECTION (PEMILIHAN )
IF
Pseudocode
Contoh:
instruksi
Bahasa C++
if
if (x>100) {
x = x + 1;
}
if
if (ketemu==true) {
if (a<=10) {
scanf(%d,&b);
}
}
ketemu=true then
if a <= 10 then
read(b)
endif
endif
SELECTION (PEMILIHAN )
IF ELSE
IF ELSE (Simple selection)
Pseudocode
if
<kondisi> then
instruksi_1
else
instruksi_2
endif
Contoh:
Pseudocode
if
nilai
write
else
write
endif
>= 60 then
(Lulus)
(Tidak Lulus)
Bahasa C++
if (kondisi) {
instruksi_1
}
else {
instruksi_2
}
Bahasa C++
if (nilai>=60) {
printf(Lulus);
}
else {
printf(Tidak Lulus);
}
SELECTION (PEMILIHAN )
Nested IF
Nested
Linear
Non
IF (Nested selection)
nested IF statement
if <kondisi_1> then
Instruksi_1
else
if <kondisi_2> then
Instruksi_2
else
if <kondisi_3> then
Instruksi_3
else
Instruksi_4
endif
endif
endif
if <kondisi_1> then
if <kondisi_2> then
if <kondisi_3> then
Instruksi_1
else
Instruksi_2
endif
else
Instruksi_3
endif
else
Instruksi_4
endif
SELECTION (PEMILIHAN )
CASE
CASE
Pseudocode
case (nama_variable_yang_diuji)
<kondisi_1> : instruksi_1
<kondisi_2> : instruksi_2
<kondisi_3> : instruksi_3
.
.
.
<kondisi_N> : instruksi_N
Otherwise instruksi_x
endcase
Bahasa C++
switch (nama_variable_yang_diuji) {
case nilai_1 : instruksi_1;
break;
case nilai_2 : instruksi_2;
break;
case nilai_3 : instruksi_3;
break;
.
.
.
.
default
: instruksi_4;
break;
}
SELECTION (PEMILIHAN )
CASE
Contoh:
Bahasa C++
Pseudocode
Algoritma_Keterangan_grade_nilai
{ Menampilkan keterangan untuk grade nilai }
DEKLARASI
chrNilai : char
DESKRIPSI
write (Nilai huruf yang didapat ? )
read (chrNilai)
case (chrNilai)
chrNilai==A : write (Sangat Baik)
chrNilai==B : write (Baik)
chrNilai==C : write (Cukup)
chrNilai==D : write (Kurang)
chrNilai==E or chrNilai==F : write (Gagal)
otherwise write(isi dengan huruf antara (A F) !)
endcase
#include<stdio.h>
void main() {
char chrNilai;
printf(Nilai huruf yang didapat ? );
scanff(%s, &chrNilai);
switch (chrNilai){
case A : printf(Sangat Baik); break;
case B : printf(Baik); break;
case C : printf(Cukup); break;
case D : printf(Kurang); break;
case E : printf(Gagal); break;
case F : printf(Gagal); break;
default : printf(isi dengan huruf antara (A F) !);
break;
}
}
Repetition (PERULANGAN)
while - do
while - do
Contoh:
Pseudocode
Bahasa C++
while <kondisi> do
instruksi_1
instruksi_2
.
.
endwhile
while (<kondisi>) {
instruksi_1
instruksi_2
.
.
}
Pseudocode
Bahasa C++
Algoritma_Cetak_Hello_Sebanyak_10_Kali
Algoritma_Cetak_Hello_Sebanyak_10_Kali
{{ Menampilkan
Menampilkan tulisan
tulisan Hello
Hello sebanyak
sebanyak 10
10 kali
kali }}
#include<stdio.h>
#include<stdio.h>
DEKLARASI
DEKLARASI
ii :: integer
integer
{sebagai
{sebagai pencacah
pencacah perulangan}
perulangan}
DESKRIPSI
DESKRIPSI
ii
11
while
while i<=10
i<=10 do
do
write
write (Halo)
(Halo)
i++;
i++;
endwhile
endwhile
void
void main()
main() {{
int
int i;
i;
ii == 1;
1;
while
while (i<=10)
(i<=10) {{
printf
printf (Halo);
(Halo);
i++;
i++;
}}
}}
Repetition (PERULANGAN)
repeat - until
repeat - until
Contoh:
Pseudocode
Bahasa C++
repeat
instruksi_1
instruksi_2
.
.
Until <kondisi>
do {
instruksi_1
instruksi_2
.
.
} while (<kondisi>)
Pseudocode
Bahasa C++
Algoritma_Cetak_Hello_Sebanyak_10_Kali
Algoritma_Cetak_Hello_Sebanyak_10_Kali
{{ Menampilkan
Menampilkan tulisan
tulisan Hello
Hello sebanyak
sebanyak 10
10 kali
kali }}
#include<stdio.h>
#include<stdio.h>
void
void main()
main() {{
int
int i;
i;
DEKLARASI
DEKLARASI
ii :: integer
integer
{sebagai
{sebagai pencacah
pencacah perulangan}
perulangan}
DESKRIPSI
DESKRIPSI
ii
11
Repeat
Repeat
write
write (Halo)
(Halo)
i++
i++
until
until i<=10
i<=10
}}
ii == 1;
1;
do
do {{
printf
printf (Halo);
(Halo);
i++
i++
}} while
while (i<=10)
(i<=10)
Repetition (PERULANGAN)
for
Pseudocode
Bahasa C++
for
for namavar
namavar
awal
awal to
to akhir
akhir do
do
instruksi_1
instruksi_1
instruksi_2
instruksi_2
..
..
endfor
endfor
for
for (namavar=awal;
(namavar=awal; namavar<=akhir;namavar++)
namavar<=akhir;namavar++) {{
instruksi_1
instruksi_1
instruksi_2
instruksi_2
..
..
}}
for
Contoh:
Pseudocode
Bahasa C++
Algoritma_Cetak_Hello_Sebanyak_10_Kali
Algoritma_Cetak_Hello_Sebanyak_10_Kali
{{ Menampilkan
Menampilkan tulisan
tulisan Hello
Hello sebanyak
sebanyak 10
10 kali
kali }}
#include<stdio.h>
#include<stdio.h>
void
void main()
main() {{
for
for (int
(int k=1;
k=1; k<=10;
k<=10; k++)
k++) {{
printf
printf (%d Halo,
Halo, k);
k);
}}
}}
DEKLARASI
DEKLARASI
DESKRIPSI
DESKRIPSI
for
for kk
11 to
to 10
10 do
do
write
write (k,
(k, Halo)
Halo)
endfor
endfor
Thanks