Pertemuan 4
Diagram Alur / Flowchart
!
! ! !
! ! " # " ! !
!
! # ! #
! !
" " ! ! ! ! !
! ! " ! ! ! !
! !
" ! ! $ " ! !
! !
! ! ! ! ! !
! ! "
! " !" # ! ! % !
!"!
Simbol Flowchart dan fungsinya :
Flowchart terdiri dari 3 struktur :
! ! &! %
' ! " ! ! " !
" ! !
! ! " ! ! "
" ! !
( ) ! # *! *
! !
' ! % " ! "
! ! " ! ! !
+
, ) ! "
! !
+ ! !
! ! ! ! ! ! !
" ! ! ! !
( )
! ! " "
" "! !
! !
"! " ! ! "!
! !
- " # " ! ! ! ! .
$ " !
$ " % / !" ! ! " !"
( " $ " )
0 1 $ " " 1
0 $ " " $ "
$ " ! " !
0 2 $ " !" $ " !
3 4
!
- " ! " ! %"
5
" #$"# % & %' ()
' ! %" " ! " 6
" ! ! 7 ! 89 :%
* , ! ! )
( .
! ! ) ;<.<
! ! ! ! !
!" ( ! 6 : !
' ! ! )
( 0 1 3 + 4 : 0 5 3 + 4
= =
' ( ! 3>(4 ! ! ! ! ! ! !
( ! 3 ? @ ?554#
! ! ! ?5 ! ! ! ! " !
"
! ! ( ! $ 9
" ! A " ; "
3 B B ?+B4 ' # " ! + 3 !
+ > 4 9 5
5 ( !
Soal Latihan :
$ ' !
!
( 0 1%=C3 + 4 : 0 5%= C3 + 4
1
! ! ! ! ! " "
! " " # D
! " E : 1 #
Jawaban Tugas 1 dan 2 (Pertemuan 1)
! ! " ;
model 1: 1. Mulai
2. Tetapkan nilai Bilangan = 1 dan Batas_Bilangan = 10
3. Jika sisa pembagian (Bilangan/2) tidak sama dengan 0 (bilangan
mod
2 <> 0) maka Cetak “Bilangan”, dan kelangkah 5.4. Jika (Bilangan = Batas_Bilangan) maka ke-langkah 6
5. Nilai Bilangan ditambah 1 (Bilangan=Bilangan+1) dan kembali kelangkah 3
6. Selesai.
F ! ! 2 2+2 G 2 9
1. Mulai
2. Masukan Nilai N
3. Tetapkan Bilangan = 1, Deret = 0
4. Hitung Deret = Deret + Bilangan
5. Jika Bilangan = N maka cetak Deret dan stop
B
Soal Latihan
0 0
0 0
( 0 (0
/ ) / )
. / " ! )
If (A>B) then begin
Perintah 1
If ((A< B) or (C>B)) then Perintah 2 Else perintah 3
end Else
If C > A then begin
perintah 4
if (A<B and A<C) then perintah 5 else perintah 6
end;
perintah 8
?
) *
LOOPING (Perulangan)
! ! ! !
&! %" ! !
" % "
%" ! !
+ ! ! ! ! " !
# ! ! ! ! "
!
/ ! ! ! ! "! )
H " " ! ! I
H ) +# ?# # 1 GG 9# ! 9I
H " H
'
/ ! ! ! )
"
! 3 " " 4
! ! !
"
,
!
)0 2
)0
" +
' "! 3 )
! " !
"! " ! !
"
$ " % !" !
"!
"! ! ! ) ! 0 J
"
+ + until (kondisi); Contoh:
for counter := lower to upper do (statement)
Atau
= writeln; end;
-. / + 0 + / +( 1 /
. 23 + + 4
5 6
+ . + 4 78 (
233/
5 . 48 98 22 //////////// +
2:
1 . 28 ;:8 78 ;< //////// + 23 /
' ;
! ! " ! ! !
! ! " ! ! ! " !
"! " %
! ! ! " ) # # #G
0 ! ! # 0 #
' ! ! ! ! ! ! " 3 "! !
! ! 4
Pertemuan 6
Struktur Rekursif
: ! ! ! "
Procedure Rekursif; nama fungsi: rekursif. Begin
Write(‘AMIK BSI ’);
Rekursif; fungsi bernama rekursif ini dikatakan Sebagai fungsi rekursi karena dia memanggil
Pada contoh diatas: sebuah fungsi/prosedur adalah sebuah proses. Contoh fungsi rekursif diatas adalah sebuah proses, dan didalam fungsi rekursif tersebut terdapat perintah/proses yang mengerjakan/memanggil proses rekursif (memanggil dirinya sendiri),sehingga fungsi/prosedur rekursif ini dinamakan fungsi rekursi.
Pada contoh diatas proses rekursi ini tidak memiliki batas berhenti. Untuk mengetahui contoh fungsi rekursif ini silahkan melihat pada slide perkuliahan.
! % ! "! " "! !
!" ! % !"
! ! ! ! !
function faktorial(N:integer):integer; var i:integer;
begin
write('Masukan Bilangan = '); readln(Bil); write('jumlah faktorial = ',faktorial(Bil)); readln;
end. HASIL:
Masukan Bilangan = 5 jumlah faktorial = 120
" ! )
+ 3 # "# 4 ! ! " $
! ! / ! ! H I .! F
! H I ! "")
• ! "
• " ! " !
! # ! !
"!
• . " " 3
" " " " " 4
• ! ! "
O ! / " ! !
)
90
/ (
" 9 0 /
/ (
/ (
' @ # ! )
O ! 3 4 ! ! 3(4
9 ! " ! ! 3(4
39 4 ! " " !3 4
% 9 " # 7 !
9 " ! 3 4 ! ! 3(4
O ! "! ! : ! )
uses crt;
procedure Hanoi(n:integer;asal,bantu,tujuan:char); begin
if n=0 then exit;
hanoi(n-1,asal,tujuan,bantu);
+ hanoi(n-1,bantu,asal,tujuan); end;
Jumlah Piringan = 4
. Pindahkan piringan ke 1 dari A ke B
Jumlah Piringan = 3