SlideShare a Scribd company logo
Adam Mukharil Bachtiar
English Class
Informatics Engineering 2011
Algorithms and Programming
Procedure and Function
Steps of the Day
Let’s Start
Modular
Programming Procedure Function
Modular Programming
Definition and Types of Modular Programming
BackgroundofModular
Programming
Make a program to solve all problems in your
calculus book! WHAT WILL YOU DO?
ThinkinginModular
Programming
Breakdown a big problem into several small
problems. Small Problems can be
reconstructed to solve the big problem.
ThinkinginModular
Programming
MainProgram
Sub Program 1
Sub Program 2
Sub Program 3
WhatisModularProgramming
Programming technique that break main
program into several sub program.
BenefitsofModular
Programming
• Eliminate repetition of same syntax
in program or algorithm.
• Can find syntax error easily.
• Easy to make big program.
TypesofLoopingStructure
• Procedure
• Function
Procedure
Definition and Structures of Procedure
WhatisProcedure
Instruction block that was made specially to
do specific job.
ExampleofProcedure
(SleepProcedure) • Brush your teeth
• Go to bed
• Pray
• Cover your body with bedcover
• Count the sheep (if you are insomnia)
• Start to dream
• Wake up (if you are not death)
• Pray again
Format of Procedure (Algorithm Notation)
Procedure NamaProsedur (Parameter jika ada)
{I.S.: Keadaan awal sebelum prosedur dijalankan}
{F.S.: Keadaan akhir sesudah prosedur dijalankan}
Kamus:
{Variabel, konstanta, tipe buatan lokal}
Algoritma:
{Badan Prosedur, Berisi instruksi}
EndProcedure
Format of Procedure (Pascal Notation)
procedure NamaProsedur (Parameter jika ada);
{Variabel, konstanta, tipe buatan}
begin
{Badan Prosedur, Berisi instruksi}
end;
Example of Procedure (Algorithm)
1
2
3
4
5
6
7
8
9
10
11
12
13
Procedure HitungLuasPersegi
{I.S: Diinputkan sisi oleh pengguna}
{F.S: Menampilkan hasil perhitungan luas persegi di layar}
Kamus:
sisi:integer
luas:integer
Algoritma:
input(sisi)
luas  sisi * sisi
output(‘Luas Persegi = ‘,luas)
EndProcedure
Example of Procedure (Pascal)
1
2
3
4
5
6
7
8
9
10
11
12
13
procedure HitungLuasPersegi;
var
sisi:integer;
luas:integer;
begin
write(‘Masukan sisi : ‘);readln(sisi);
luas  sisi * sisi;
writeln(‘Luas Persegi = ‘,luas);
write(‘Tekan sembarang tombol untuk keluar...’);
readkey();
end;
CalltheProcedure
Procedure was useless until you call it in main
algorithm, main program, or the other modul.
Format of Calling Procedure (Algorithm)
NamaProsedur
Atau
NamaProsedur(parameter jika ada)
Format of Calling Procedure (Algorithm)
NamaProsedur;
Atau
NamaProsedur(parameter jika ada);
Example of Calling Procedure (Algorithm)
1
2
3
4
5
6
7
8
9
10
11
12
Algoritma PanggilHitungLuasPersegi
{I.S: Diinputkan sebuah bilangan oleh pengguna}
{F.S: Memanggil prosedur sebanyak bilangan}
Kamus:
i,bil:integer {kamus global}
procedure HitungLuasPersegi {Cukup Headernya saja}
Algoritma:
input(bil)
for i  1 to bil do
HitungLuasPersegi {memanggil prosedur}
endfor
Example of Calling Procedure (Pascal)
1
2
3
4
5
6
7
8
9
10
11
12
13
program PanggilHitungLuasPersegi;
uses crt;
var
bil:integer;
{Prosedur HitungLuasPersegi kamu diletakkan di sini}
begin
write(‘Masukan bilangan = ‘);readln(bil);
for i  1 to bil do
HitungLuasPersegi; {memanggil prosedur}
{Baris penutup jangan sampai lupa!!!}
end.
TypesofVariable
• Global Variable
• Local Variable
GlobalVariable
Varible that was known by entire program or
algorithm. This variable was declared in main
program or main algorithm.
LocalVariable
Varible that was known only by its owner. This
variable was declared inside procedure or
function.
Local Variable (Algorithm Notation)
Procedure NamaProsedur (Parameter jika ada)
{I.S.: Keadaan awal sebelum prosedur dijalankan}
{F.S.: Keadaan akhir sesudah prosedur dijalankan}
Kamus:
{Identifier lokal diletakkan di sini}
Algoritma:
{Badan Prosedur, Berisi instruksi}
EndProcedure
FORMAL PARAMETER
Global Variable (Algorithm Notation)
Algoritma judul_algoritma
{I.S.: diisi keadaan yang terjadi di awal algoritma}
{F.S.: diisi keadaan yang terjadi di akhir algoritma}
Kamus/Deklarasi:
{Identifier global diletakkan di sini}
Algoritma/Deskripsi:
{diisi dengan input, proses, dan output}
Local and Global Variable (Pascal Notation)
program nama_program;
var
{identifier global di sini}
procedure nama_prosedur (parameter jika ada);
var
{identifier lokal di sini}
begin
end;
begin
end.
OrdinaryCommunicationBetween
ProcedureandMainAlgorithm
WhatisParameter
Variable that allow us to have more than just
ordinary communication to procedure or
function.
TypesofParameter
• Input Parameter
• Output Parameter
• Input/Output Parameter
: means parameter by value
: means parameter by reference
CommunicationUsingInput
Parameter
Input Parameter (Algorithm Notation)
Procedure NamaProsedur (Input NamaVariabel:TipeData)
{I.S.: Keadaan awal sebelum prosedur dijalankan}
{F.S.: Keadaan akhir sesudah prosedur dijalankan}
Kamus:
{Identifier lokal diletakkan di sini}
Algoritma:
{Badan Prosedur, Berisi instruksi}
EndProcedure
Calling Input Parameter (Algorithm Notation)
Algoritma NamaProsedur
{I.S.: Keadaan awal sebelum algoritma dijalankan}
{F.S.: Keadaan akhir sesudah algoritma dijalankan}
Kamus:
{Identifier global diletakkan di sini}
Procedure NamaProsedur (Input NamaVariabel:TipeData)
Algoritma:
NamaProsedur(NamaVariabel) {pemanggilan prosedur}
EndProcedure
ACTUAL PARAMETER
Input Parameter (Pascal Notation)
program nama_program;
var
{identifier global di sini}
procedure nama_prosedur (variabel:tipedata);
var
{identifier lokal di sini}
begin
end;
Begin
nama_prosedur(variabel);{pemanggilan prosedur}
end.
Example of Input Parameter (Algorithm)
1
2
3
4
5
6
7
8
9
10
11
12
Procedure Persegi(Input sisi:integer)
{I.S: Menerima input berupa sisi}
{F.S: Menampilkan luas dan keliling persegi}
Kamus:
luas,keliling:integer
Algoritma:
luas  sisi * sisi
keliling  4 * sisi
output(luas,keliling)
EndProcedure
Example of Calling Input Parameter (Algorithm)
1
2
3
4
5
6
7
8
9
10
11
Algoritma PanggilHitungLuasPersegi
{I.S: Diinputkan sisi oleh pengguna}
{F.S: Memanggil prosedur persegi}
Kamus:
sisi:integer
procedure Persegi(Input sisi:integer)
Algoritma:
input(sisi)
Persegi(sisi)
Example of Input Parameter (Pascal)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
program HitungPersegi;
uses crt;
var
sisi:integer;
procedure persegi(sisi:integer);
var
luas,keliling:integer;
begin
luas := sisi * sisi;
keliling := 4 * sisi;
writeln(‘Luas Persegi : ‘,luas); {bersambung}
Example of Input Parameter (Pascal)
15
16
17
18
19
20
21
22
23
24
writeln(‘Keliling persegi : ‘,keliling);
end;
begin
write(‘Masukan sisi persegi= ‘);readln(sisi);
persegi(sisi);
writeln();
write(‘Tekan sembarang tombol untuk menutup...’);
readkey();
end.
CommunicationUsingOutput
Parameter
Output Parameter (Algorithm Notation)
Procedure NamaProsedur (Output NamaVariabel:TipeData)
{I.S.: Keadaan awal sebelum prosedur dijalankan}
{F.S.: Keadaan akhir sesudah prosedur dijalankan}
Kamus:
{Identifier lokal diletakkan di sini}
Algoritma:
{Badan Prosedur, Berisi instruksi}
EndProcedure
Calling Output Parameter (Algorithm Notation)
Algoritma NamaProsedur
{I.S.: Keadaan awal sebelum algoritma dijalankan}
{F.S.: Keadaan akhir sesudah algoritma dijalankan}
Kamus:
{Identifier global diletakkan di sini}
Procedure NamaProsedur (Output NamaVariabel:TipeData)
Algoritma:
NamaProsedur(NamaVariabel) {pemanggilan prosedur}
EndProcedure
Output Parameter (Pascal Notation)
program nama_program;
var
{identifier global di sini}
procedure nama_prosedur (var variabel:tipedata);
var
{identifier lokal di sini}
begin
end;
Begin
nama_prosedur(variabel);{pemanggilan prosedur}
end.
Example of Output Parameter (Algorithm)
1
2
3
4
5
6
7
8
9
10
11
12
Procedure Persegi(Output luas,keliling:integer)
{I.S: Meminta input sisi dari pengguna}
{F.S: Mengirimkan nilai luas dan keliling persegi}
Kamus:
sisi:integer
Algoritma:
input(sisi)
luas  sisi * sisi
keliling  4 * sisi
EndProcedure
Example of Calling Output Parameter (Algorithm)
1
2
3
4
5
6
7
8
9
10
11
Algoritma PanggilHitungLuasPersegi
{I.S: Memanggil prosedur persegi}
{F.S: Menampilkan nilai dari prosedur persegi}
Kamus:
luas,keliling:integer
Procedure Persegi(Output luas,keliling:integer)
Algoritma:
Persegi(luas,keliling)
output(luas,keliling)
Example of Output Parameter (Pascal)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
program HitungPersegi;
uses crt;
var
luas,keliling:integer;
procedure persegi(var luas,keliling:integer);
var
sisi:integer;
begin
write(‘Masukan sisi persegi= ‘);readln(sisi);
luas := sisi * sisi;
keliling := 4 * sisi; {bersambung}
Example of Output Parameter (Pascal)
15
16
17
18
19
20
21
22
23
24
end;
begin
persegi(luas,keliling);
writeln(‘Keliling persegi : ‘,keliling);
writeln(‘Luas Persegi : ‘,luas);
writeln();
write(‘Tekan sembarang tombol untuk menutup...’);
readkey();
end.
CommunicationUsing
Input/OutputParameter
Input/Output Parameter (Algorithm Notation)
Procedure NamaProsedur (I/O NamaVariabel:TipeData)
{I.S.: Keadaan awal sebelum prosedur dijalankan}
{F.S.: Keadaan akhir sesudah prosedur dijalankan}
Kamus:
{Identifier lokal diletakkan di sini}
Algoritma:
{Badan Prosedur, Berisi instruksi}
EndProcedure
Calling Input/Output Parameter (Algorithm Notation)
Algoritma NamaProsedur
{I.S.: Keadaan awal sebelum algoritma dijalankan}
{F.S.: Keadaan akhir sesudah algoritma dijalankan}
Kamus:
{Identifier global diletakkan di sini}
Procedure NamaProsedur (I/O NamaVariabel:TipeData)
Algoritma:
NamaProsedur(NamaVariabel) {pemanggilan prosedur}
EndProcedure
Input/Ouput Parameter (Pascal Notation)
program nama_program;
var
{identifier global di sini}
procedure nama_prosedur (var variabel:tipedata);
var
{identifier lokal di sini}
begin
end;
Begin
nama_prosedur(variabel);{pemanggilan prosedur}
end.
Example of Input/Output Parameter (Algorithm)
1
2
3
4
5
6
7
8
9
10
11
Procedure Persegi(I/O sisi:integer,Output luas,keliling:integer)
{I.S: Menerima input sisi}
{F.S: Mengirimkan nilai sisi, luas, dan keliling persegi}
Kamus:
Algoritma:
luas  sisi * sisi
keliling  4 * sisi
sisi  sisi + 1; {lihat apa yang terjadi}
EndProcedure
Example of Calling Output Parameter (Algorithm)
1
2
3
4
5
6
7
8
9
10
11
12
Algoritma PanggilHitungLuasPersegi
{I.S: Memanggil prosedur persegi}
{F.S: Menampilkan nilai dari prosedur persegi}
Kamus:
sisi,luas,keliling:integer
Procedure Persegi(I/O sisi:integer,Output luas,keliling:integer)
Algoritma:
input(sisi)
Persegi(sisi,luas,keliling)
output(sisi,luas,keliling) {Berapa nilai sisinya?}
Example of Input/Output Parameter (Pascal)
1
2
3
4
5
6
7
8
9
10
11
12
program HitungPersegi;
uses crt;
var
luas,keliling:integer;
procedure persegi(sisi:integer;var luas,keliling:integer);
begin
luas := sisi * sisi;
keliling := 4 * sisi;
sisi := sisi + 1; {Lihat apa yang terjadi}
end;
Example of Input/Output Parameter (Pascal)
13
14
15
16
17
18
19
20
21
22
begin
write(‘Masukan sisi persegi= ‘);readln(sisi);
persegi(sisi,luas,keliling);
writeln(‘Keliling persegi : ‘,keliling);
writeln(‘Luas Persegi : ‘,luas);
writeln(‘Sisi persegi : ‘,sisi);
writeln();
write(‘Tekan sembarang tombol untuk menutup...’);
readkey();
end.
Function
Definition and Structures of Function
WhatisFunction
Instruction block that was made specially to
do specific job and return a value. Such as:
F(x)= 2x+4  it will return 6 for x=1.
DifferenceBetweenProcedure
andFunction
Procedure was not made to return a value (only
do specific job) but function was made to return
a value (More specific than procedure).
Format of Function (Algorithm Notation)
FUnction NamaFungsi (Parameter jika ada)  tipefungsi
{I.S.: Keadaan awal sebelum fungsi dijalankan}
{F.S.: Keadaan akhir sesudah fungsi dijalankan}
Kamus:
{Variabel, konstanta, tipe buatan lokal}
Algoritma:
{Badan fungsi, Berisi instruksi}
return VALUE {tipenya sama dengan tipe fungsi}
EndFunction
Format of Procedure (Pascal Notation)
function NamaFungsi (Parameter jika ada):tipefungsi;
{Variabel, konstanta, tipe buatan}
begin
{Badan Fungsi, Berisi instruksi}
NamaFungsi := VALUE; (tipenya sama dengan tipe fungsi}
end;
Example of Function (Algorithm)
1
2
3
4
5
6
7
8
9
Function LuasPersegi(Input sisi:integer)  integer
{I.S: Menerima input berupa sisi}
{F.S: Menampilkan luas dan keliling persegi}
Kamus:
Algoritma:
return sisi * sisi
EndFunction
Example of Function (Algorithm)
1
2
3
4
5
6
7
8
9
10
11
12
Algoritma PanggilLuasPersegi
{I.S: Diinputkan sisi oleh pengguna}
{F.S: Menampilkan nilai fungsi luas persegi}
Kamus:
sisi,luas:integer
Function LuasPersegi(Input sisi:integer)  integer
Algoritma:
input(sisi)
luas  LuasPersegi(sisi)
output(luas)
Example of Function (Pascal)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
program HitungPersegi;
uses crt;
var
sisi,luas:integer;
function LuasPersegi(sisi:integer):integer;
begin
LuasPersegi := sisi * sisi;
end;
begin
write(‘Masukan sisi persegi= ‘);readln(sisi);
luas := LuasPersegi(sisi); {Pemanggilan Function}
Example of Function (Pascal)
15
16
17
18
19
write(‘Luas persegi : ‘,luas);
writeln();
write(‘Tekan sembarang tombol untuk menutup...’);
readkey();
end.
Contact Person:
Adam Mukharil Bachtiar
Informatics Engineering UNIKOM
Jalan Dipati Ukur Nomor. 112-114 Bandung 40132
Email: adfbipotter@gmail.com
Blog: http://adfbipotter.wordpress.com
Copyright © Adam Mukharil Bachtiar 2011

More Related Content

What's hot

Tahapan proyek
Tahapan proyekTahapan proyek
Tahapan proyek
Besten Joymen
 
What is builders risk insurance by Floyd Arthur (PPT)
What is builders risk insurance by Floyd Arthur (PPT)What is builders risk insurance by Floyd Arthur (PPT)
What is builders risk insurance by Floyd Arthur (PPT)
Floyd Arthur
 
kriptografi matematika
kriptografi matematikakriptografi matematika
kriptografi matematika
Muhammad Khawarizmi
 
2. rpp dasar desain grafis kd6
2. rpp dasar desain grafis kd62. rpp dasar desain grafis kd6
2. rpp dasar desain grafis kd6
Syahrini Agusjamal
 
ATP adminitrasi sistem jaringan.docx
ATP adminitrasi sistem jaringan.docxATP adminitrasi sistem jaringan.docx
ATP adminitrasi sistem jaringan.docx
NofriaMulianis1
 
Modul Guru Pembelajar TIK SMK kk f
Modul Guru Pembelajar TIK SMK kk fModul Guru Pembelajar TIK SMK kk f
Modul Guru Pembelajar TIK SMK kk f
yappaid
 
Data mining 3 similarity and disimilarity
Data mining 3   similarity and disimilarityData mining 3   similarity and disimilarity
Data mining 3 similarity and disimilarity
IrwansyahSaputra1
 
Materi ajar PWPB kelas XI RPL - Hyperlink pada HTML
Materi ajar PWPB kelas XI RPL - Hyperlink pada HTMLMateri ajar PWPB kelas XI RPL - Hyperlink pada HTML
Materi ajar PWPB kelas XI RPL - Hyperlink pada HTML
Hernowo Indra Gunanto
 
Kd1 Struktur Hirarki Database
Kd1 Struktur Hirarki DatabaseKd1 Struktur Hirarki Database
Kd1 Struktur Hirarki Database
Desty Yani
 
MK Keamanan Komputer - Sesi 3 & 4 : Lapisan Keamanan & Desktop Security
MK Keamanan Komputer - Sesi 3 & 4 : Lapisan Keamanan & Desktop SecurityMK Keamanan Komputer - Sesi 3 & 4 : Lapisan Keamanan & Desktop Security
MK Keamanan Komputer - Sesi 3 & 4 : Lapisan Keamanan & Desktop Security
Bambang
 
ATP Informatika Siti Maesaroh Fase F.docx.pdf
ATP Informatika Siti Maesaroh Fase F.docx.pdfATP Informatika Siti Maesaroh Fase F.docx.pdf
ATP Informatika Siti Maesaroh Fase F.docx.pdf
ssusere67dbc
 

What's hot (12)

2. ATP.pdf
2. ATP.pdf2. ATP.pdf
2. ATP.pdf
 
Tahapan proyek
Tahapan proyekTahapan proyek
Tahapan proyek
 
What is builders risk insurance by Floyd Arthur (PPT)
What is builders risk insurance by Floyd Arthur (PPT)What is builders risk insurance by Floyd Arthur (PPT)
What is builders risk insurance by Floyd Arthur (PPT)
 
kriptografi matematika
kriptografi matematikakriptografi matematika
kriptografi matematika
 
2. rpp dasar desain grafis kd6
2. rpp dasar desain grafis kd62. rpp dasar desain grafis kd6
2. rpp dasar desain grafis kd6
 
ATP adminitrasi sistem jaringan.docx
ATP adminitrasi sistem jaringan.docxATP adminitrasi sistem jaringan.docx
ATP adminitrasi sistem jaringan.docx
 
Modul Guru Pembelajar TIK SMK kk f
Modul Guru Pembelajar TIK SMK kk fModul Guru Pembelajar TIK SMK kk f
Modul Guru Pembelajar TIK SMK kk f
 
Data mining 3 similarity and disimilarity
Data mining 3   similarity and disimilarityData mining 3   similarity and disimilarity
Data mining 3 similarity and disimilarity
 
Materi ajar PWPB kelas XI RPL - Hyperlink pada HTML
Materi ajar PWPB kelas XI RPL - Hyperlink pada HTMLMateri ajar PWPB kelas XI RPL - Hyperlink pada HTML
Materi ajar PWPB kelas XI RPL - Hyperlink pada HTML
 
Kd1 Struktur Hirarki Database
Kd1 Struktur Hirarki DatabaseKd1 Struktur Hirarki Database
Kd1 Struktur Hirarki Database
 
MK Keamanan Komputer - Sesi 3 & 4 : Lapisan Keamanan & Desktop Security
MK Keamanan Komputer - Sesi 3 & 4 : Lapisan Keamanan & Desktop SecurityMK Keamanan Komputer - Sesi 3 & 4 : Lapisan Keamanan & Desktop Security
MK Keamanan Komputer - Sesi 3 & 4 : Lapisan Keamanan & Desktop Security
 
ATP Informatika Siti Maesaroh Fase F.docx.pdf
ATP Informatika Siti Maesaroh Fase F.docx.pdfATP Informatika Siti Maesaroh Fase F.docx.pdf
ATP Informatika Siti Maesaroh Fase F.docx.pdf
 

Viewers also liked

Pertemuan vi (Function Java)
Pertemuan vi (Function Java)Pertemuan vi (Function Java)
Pertemuan vi (Function Java)
Putra Andry
 
Introduction Java Programming
Introduction Java ProgrammingIntroduction Java Programming
Introduction Java Programming
Fauzi Hasibuan
 
Pengenalan Pemrograman Java
Pengenalan Pemrograman JavaPengenalan Pemrograman Java
Pengenalan Pemrograman Java
I Putu Arya Dharmaadi
 
Data Management (Data Mining Klasifikasi)
Data Management (Data Mining Klasifikasi)Data Management (Data Mining Klasifikasi)
Data Management (Data Mining Klasifikasi)
Adam Mukharil Bachtiar
 
Algoritma - prosedur dan fungsi
Algoritma - prosedur dan fungsiAlgoritma - prosedur dan fungsi
Algoritma - prosedur dan fungsiZombie Black
 
Programming fundamentals lecture 4
Programming fundamentals lecture 4Programming fundamentals lecture 4
Programming fundamentals lecture 4Raja Hamid
 
Perulangan java
Perulangan javaPerulangan java
Perulangan java
rhoyuee bonchell
 
Pemrograman berorientasi objek ii 04 prosedur dan fungsi
Pemrograman berorientasi objek ii   04 prosedur dan fungsiPemrograman berorientasi objek ii   04 prosedur dan fungsi
Pemrograman berorientasi objek ii 04 prosedur dan fungsi
Edri Yunizal
 
UAS JAVA
UAS JAVAUAS JAVA
UAS JAVA
beiharira
 
Algorithm and Programming (Looping Structure)
Algorithm and Programming (Looping Structure)Algorithm and Programming (Looping Structure)
Algorithm and Programming (Looping Structure)
Adam Mukharil Bachtiar
 
Algoritma powerpoint
Algoritma powerpointAlgoritma powerpoint
Algoritma powerpoint
Irwin andriyanto
 
Array searching sorting_pert_11,12,13,14,15
Array searching sorting_pert_11,12,13,14,15Array searching sorting_pert_11,12,13,14,15
Array searching sorting_pert_11,12,13,14,15doudomblogspot
 
UAS TESTING
UAS TESTINGUAS TESTING
UAS TESTING
beiharira
 
Algorithm and Programming (Introduction of dev pascal, data type, value, and ...
Algorithm and Programming (Introduction of dev pascal, data type, value, and ...Algorithm and Programming (Introduction of dev pascal, data type, value, and ...
Algorithm and Programming (Introduction of dev pascal, data type, value, and ...
Adam Mukharil Bachtiar
 
Algorithm and Programming (Sequential Structure)
Algorithm and Programming (Sequential Structure)Algorithm and Programming (Sequential Structure)
Algorithm and Programming (Sequential Structure)
Adam Mukharil Bachtiar
 
Soal UAS Pemrograman Desktop kelas 11 semester genap tahun ajaran 2014-2015
Soal UAS Pemrograman Desktop kelas 11 semester genap tahun ajaran 2014-2015Soal UAS Pemrograman Desktop kelas 11 semester genap tahun ajaran 2014-2015
Soal UAS Pemrograman Desktop kelas 11 semester genap tahun ajaran 2014-2015
Saprudin Eskom
 
Soal UAS Pemrograman Desktop kelas 11 SMK semester ganjil tahun ajaran 2015-2016
Soal UAS Pemrograman Desktop kelas 11 SMK semester ganjil tahun ajaran 2015-2016Soal UAS Pemrograman Desktop kelas 11 SMK semester ganjil tahun ajaran 2015-2016
Soal UAS Pemrograman Desktop kelas 11 SMK semester ganjil tahun ajaran 2015-2016
Saprudin Eskom
 
Micro teaching konsep logika algoritma
Micro teaching konsep logika algoritmaMicro teaching konsep logika algoritma
Micro teaching konsep logika algoritma
Apriyanto_apo
 

Viewers also liked (20)

Pertemuan vi (Function Java)
Pertemuan vi (Function Java)Pertemuan vi (Function Java)
Pertemuan vi (Function Java)
 
Introduction Java Programming
Introduction Java ProgrammingIntroduction Java Programming
Introduction Java Programming
 
Pengenalan Pemrograman Java
Pengenalan Pemrograman JavaPengenalan Pemrograman Java
Pengenalan Pemrograman Java
 
Data Management (Data Mining Klasifikasi)
Data Management (Data Mining Klasifikasi)Data Management (Data Mining Klasifikasi)
Data Management (Data Mining Klasifikasi)
 
Algoritma - prosedur dan fungsi
Algoritma - prosedur dan fungsiAlgoritma - prosedur dan fungsi
Algoritma - prosedur dan fungsi
 
Programming fundamentals lecture 4
Programming fundamentals lecture 4Programming fundamentals lecture 4
Programming fundamentals lecture 4
 
Array dan fungsi
Array dan fungsiArray dan fungsi
Array dan fungsi
 
Perulangan java
Perulangan javaPerulangan java
Perulangan java
 
Pemrograman berorientasi objek ii 04 prosedur dan fungsi
Pemrograman berorientasi objek ii   04 prosedur dan fungsiPemrograman berorientasi objek ii   04 prosedur dan fungsi
Pemrograman berorientasi objek ii 04 prosedur dan fungsi
 
Fungsi (function)
Fungsi (function)Fungsi (function)
Fungsi (function)
 
UAS JAVA
UAS JAVAUAS JAVA
UAS JAVA
 
Algorithm and Programming (Looping Structure)
Algorithm and Programming (Looping Structure)Algorithm and Programming (Looping Structure)
Algorithm and Programming (Looping Structure)
 
Algoritma powerpoint
Algoritma powerpointAlgoritma powerpoint
Algoritma powerpoint
 
Array searching sorting_pert_11,12,13,14,15
Array searching sorting_pert_11,12,13,14,15Array searching sorting_pert_11,12,13,14,15
Array searching sorting_pert_11,12,13,14,15
 
UAS TESTING
UAS TESTINGUAS TESTING
UAS TESTING
 
Algorithm and Programming (Introduction of dev pascal, data type, value, and ...
Algorithm and Programming (Introduction of dev pascal, data type, value, and ...Algorithm and Programming (Introduction of dev pascal, data type, value, and ...
Algorithm and Programming (Introduction of dev pascal, data type, value, and ...
 
Algorithm and Programming (Sequential Structure)
Algorithm and Programming (Sequential Structure)Algorithm and Programming (Sequential Structure)
Algorithm and Programming (Sequential Structure)
 
Soal UAS Pemrograman Desktop kelas 11 semester genap tahun ajaran 2014-2015
Soal UAS Pemrograman Desktop kelas 11 semester genap tahun ajaran 2014-2015Soal UAS Pemrograman Desktop kelas 11 semester genap tahun ajaran 2014-2015
Soal UAS Pemrograman Desktop kelas 11 semester genap tahun ajaran 2014-2015
 
Soal UAS Pemrograman Desktop kelas 11 SMK semester ganjil tahun ajaran 2015-2016
Soal UAS Pemrograman Desktop kelas 11 SMK semester ganjil tahun ajaran 2015-2016Soal UAS Pemrograman Desktop kelas 11 SMK semester ganjil tahun ajaran 2015-2016
Soal UAS Pemrograman Desktop kelas 11 SMK semester ganjil tahun ajaran 2015-2016
 
Micro teaching konsep logika algoritma
Micro teaching konsep logika algoritmaMicro teaching konsep logika algoritma
Micro teaching konsep logika algoritma
 

Similar to Algorithm and Programming (Procedure and Function)

Function procedure c6 c7
Function procedure  c6 c7Function procedure  c6 c7
Function procedure c6 c7
Omar Al-Sabek
 
Legacy is Good
Legacy is GoodLegacy is Good
Legacy is Good
Uberto Barbini
 
INTRODUCCIÓN A LA PROGRAMACIÓN
INTRODUCCIÓN A LA PROGRAMACIÓNINTRODUCCIÓN A LA PROGRAMACIÓN
INTRODUCCIÓN A LA PROGRAMACIÓN
BenjaminAnilema
 
A closure ekon16
A closure ekon16A closure ekon16
A closure ekon16
Max Kleiner
 
Introduction to C ++.pptx
Introduction to C ++.pptxIntroduction to C ++.pptx
Introduction to C ++.pptx
VAIBHAVKADAGANCHI
 
Go Programming language, golang
Go Programming language, golangGo Programming language, golang
Go Programming language, golang
Basil N G
 
Twins: Object Oriented Programming and Functional Programming
Twins: Object Oriented Programming and Functional ProgrammingTwins: Object Oriented Programming and Functional Programming
Twins: Object Oriented Programming and Functional Programming
RichardWarburton
 
Dr Mrs A A Miraje C Programming PPT.pptx
Dr Mrs A A Miraje C Programming PPT.pptxDr Mrs A A Miraje C Programming PPT.pptx
Dr Mrs A A Miraje C Programming PPT.pptx
ProfAAMiraje
 
INPUT AND OUTPUT STATEMENTS IN PROGRAMMING IN C
INPUT AND OUTPUT STATEMENTS IN PROGRAMMING IN CINPUT AND OUTPUT STATEMENTS IN PROGRAMMING IN C
INPUT AND OUTPUT STATEMENTS IN PROGRAMMING IN C
Chandrakant Divate
 
CSharp for Unity Day2
CSharp for Unity Day2CSharp for Unity Day2
CSharp for Unity Day2
Duong Thanh
 
maXbox Starter 36 Software Testing
maXbox Starter 36 Software TestingmaXbox Starter 36 Software Testing
maXbox Starter 36 Software Testing
Max Kleiner
 
Algorithm.pdf
Algorithm.pdfAlgorithm.pdf
Algorithm.pdf
MIT,Imphal
 
ProgFund_Lecture_4_Functions_and_Modules-1.pdf
ProgFund_Lecture_4_Functions_and_Modules-1.pdfProgFund_Lecture_4_Functions_and_Modules-1.pdf
ProgFund_Lecture_4_Functions_and_Modules-1.pdf
lailoesakhan
 
(3) cpp procedural programming
(3) cpp procedural programming(3) cpp procedural programming
(3) cpp procedural programming
Nico Ludwig
 
C
CC
Dart workshop
Dart workshopDart workshop
Dart workshop
Vishnu Suresh
 
TWINS: OOP and FP - Warburton
TWINS: OOP and FP - WarburtonTWINS: OOP and FP - Warburton
TWINS: OOP and FP - Warburton
Codemotion
 
KScope14 Jython Scripting
KScope14 Jython ScriptingKScope14 Jython Scripting
KScope14 Jython Scripting
Alithya
 
C++ Functions
C++ FunctionsC++ Functions
C++ Functions
Jari Abbas
 

Similar to Algorithm and Programming (Procedure and Function) (20)

Function procedure c6 c7
Function procedure  c6 c7Function procedure  c6 c7
Function procedure c6 c7
 
Legacy is Good
Legacy is GoodLegacy is Good
Legacy is Good
 
INTRODUCCIÓN A LA PROGRAMACIÓN
INTRODUCCIÓN A LA PROGRAMACIÓNINTRODUCCIÓN A LA PROGRAMACIÓN
INTRODUCCIÓN A LA PROGRAMACIÓN
 
A closure ekon16
A closure ekon16A closure ekon16
A closure ekon16
 
Introduction to C ++.pptx
Introduction to C ++.pptxIntroduction to C ++.pptx
Introduction to C ++.pptx
 
Go Programming language, golang
Go Programming language, golangGo Programming language, golang
Go Programming language, golang
 
Twins: Object Oriented Programming and Functional Programming
Twins: Object Oriented Programming and Functional ProgrammingTwins: Object Oriented Programming and Functional Programming
Twins: Object Oriented Programming and Functional Programming
 
Dr Mrs A A Miraje C Programming PPT.pptx
Dr Mrs A A Miraje C Programming PPT.pptxDr Mrs A A Miraje C Programming PPT.pptx
Dr Mrs A A Miraje C Programming PPT.pptx
 
INPUT AND OUTPUT STATEMENTS IN PROGRAMMING IN C
INPUT AND OUTPUT STATEMENTS IN PROGRAMMING IN CINPUT AND OUTPUT STATEMENTS IN PROGRAMMING IN C
INPUT AND OUTPUT STATEMENTS IN PROGRAMMING IN C
 
CSharp for Unity Day2
CSharp for Unity Day2CSharp for Unity Day2
CSharp for Unity Day2
 
maXbox Starter 36 Software Testing
maXbox Starter 36 Software TestingmaXbox Starter 36 Software Testing
maXbox Starter 36 Software Testing
 
Algorithm.pdf
Algorithm.pdfAlgorithm.pdf
Algorithm.pdf
 
Clojure class
Clojure classClojure class
Clojure class
 
ProgFund_Lecture_4_Functions_and_Modules-1.pdf
ProgFund_Lecture_4_Functions_and_Modules-1.pdfProgFund_Lecture_4_Functions_and_Modules-1.pdf
ProgFund_Lecture_4_Functions_and_Modules-1.pdf
 
(3) cpp procedural programming
(3) cpp procedural programming(3) cpp procedural programming
(3) cpp procedural programming
 
C
CC
C
 
Dart workshop
Dart workshopDart workshop
Dart workshop
 
TWINS: OOP and FP - Warburton
TWINS: OOP and FP - WarburtonTWINS: OOP and FP - Warburton
TWINS: OOP and FP - Warburton
 
KScope14 Jython Scripting
KScope14 Jython ScriptingKScope14 Jython Scripting
KScope14 Jython Scripting
 
C++ Functions
C++ FunctionsC++ Functions
C++ Functions
 

More from Adam Mukharil Bachtiar

Materi 8 - Data Mining Association Rule.pdf
Materi 8 - Data Mining Association Rule.pdfMateri 8 - Data Mining Association Rule.pdf
Materi 8 - Data Mining Association Rule.pdf
Adam Mukharil Bachtiar
 
Clean Code - Formatting Code
Clean Code - Formatting CodeClean Code - Formatting Code
Clean Code - Formatting Code
Adam Mukharil Bachtiar
 
Clean Code - Clean Comments
Clean Code - Clean CommentsClean Code - Clean Comments
Clean Code - Clean Comments
Adam Mukharil Bachtiar
 
Clean Method
Clean MethodClean Method
Clean Code and Design Pattern - Meaningful Names
Clean Code and Design Pattern - Meaningful NamesClean Code and Design Pattern - Meaningful Names
Clean Code and Design Pattern - Meaningful Names
Adam Mukharil Bachtiar
 
Model Driven Software Development
Model Driven Software DevelopmentModel Driven Software Development
Model Driven Software Development
Adam Mukharil Bachtiar
 
Scrum: How to Implement
Scrum: How to ImplementScrum: How to Implement
Scrum: How to Implement
Adam Mukharil Bachtiar
 
Pengujian Perangkat Lunak
Pengujian Perangkat LunakPengujian Perangkat Lunak
Pengujian Perangkat Lunak
Adam Mukharil Bachtiar
 
Data Mining Clustering
Data Mining ClusteringData Mining Clustering
Data Mining Clustering
Adam Mukharil Bachtiar
 
Data Mining Klasifikasi (Updated 30 Desember 2020)
Data Mining Klasifikasi (Updated 30 Desember 2020)Data Mining Klasifikasi (Updated 30 Desember 2020)
Data Mining Klasifikasi (Updated 30 Desember 2020)
Adam Mukharil Bachtiar
 
Analisis Algoritma - Strategi Algoritma Dynamic Programming
Analisis Algoritma - Strategi Algoritma Dynamic ProgrammingAnalisis Algoritma - Strategi Algoritma Dynamic Programming
Analisis Algoritma - Strategi Algoritma Dynamic Programming
Adam Mukharil Bachtiar
 
Analisis Algoritma - Strategi Algoritma Divide and Conquer
Analisis Algoritma - Strategi Algoritma Divide and ConquerAnalisis Algoritma - Strategi Algoritma Divide and Conquer
Analisis Algoritma - Strategi Algoritma Divide and Conquer
Adam Mukharil Bachtiar
 
Analisis Algoritma - Strategi Algoritma Greedy
Analisis Algoritma - Strategi Algoritma GreedyAnalisis Algoritma - Strategi Algoritma Greedy
Analisis Algoritma - Strategi Algoritma Greedy
Adam Mukharil Bachtiar
 
Analisis Algoritma - Penerapan Strategi Algoritma Brute Force
Analisis Algoritma - Penerapan Strategi Algoritma Brute ForceAnalisis Algoritma - Penerapan Strategi Algoritma Brute Force
Analisis Algoritma - Penerapan Strategi Algoritma Brute Force
Adam Mukharil Bachtiar
 
Analisis Algoritma - Strategi Algoritma Brute Force
Analisis Algoritma - Strategi Algoritma Brute ForceAnalisis Algoritma - Strategi Algoritma Brute Force
Analisis Algoritma - Strategi Algoritma Brute Force
Adam Mukharil Bachtiar
 
Analisis Algoritma - Kelas-kelas Dasar Efisiensi Algoritma
Analisis Algoritma - Kelas-kelas Dasar Efisiensi AlgoritmaAnalisis Algoritma - Kelas-kelas Dasar Efisiensi Algoritma
Analisis Algoritma - Kelas-kelas Dasar Efisiensi Algoritma
Adam Mukharil Bachtiar
 
Analisis Algoritma - Teorema Notasi Asimptotik
Analisis Algoritma - Teorema Notasi AsimptotikAnalisis Algoritma - Teorema Notasi Asimptotik
Analisis Algoritma - Teorema Notasi Asimptotik
Adam Mukharil Bachtiar
 
Analisis Algoritma - Notasi Asimptotik
Analisis Algoritma - Notasi AsimptotikAnalisis Algoritma - Notasi Asimptotik
Analisis Algoritma - Notasi Asimptotik
Adam Mukharil Bachtiar
 
Activity Diagram
Activity DiagramActivity Diagram
Activity Diagram
Adam Mukharil Bachtiar
 
UML dan Use Case View
UML dan Use Case ViewUML dan Use Case View
UML dan Use Case View
Adam Mukharil Bachtiar
 

More from Adam Mukharil Bachtiar (20)

Materi 8 - Data Mining Association Rule.pdf
Materi 8 - Data Mining Association Rule.pdfMateri 8 - Data Mining Association Rule.pdf
Materi 8 - Data Mining Association Rule.pdf
 
Clean Code - Formatting Code
Clean Code - Formatting CodeClean Code - Formatting Code
Clean Code - Formatting Code
 
Clean Code - Clean Comments
Clean Code - Clean CommentsClean Code - Clean Comments
Clean Code - Clean Comments
 
Clean Method
Clean MethodClean Method
Clean Method
 
Clean Code and Design Pattern - Meaningful Names
Clean Code and Design Pattern - Meaningful NamesClean Code and Design Pattern - Meaningful Names
Clean Code and Design Pattern - Meaningful Names
 
Model Driven Software Development
Model Driven Software DevelopmentModel Driven Software Development
Model Driven Software Development
 
Scrum: How to Implement
Scrum: How to ImplementScrum: How to Implement
Scrum: How to Implement
 
Pengujian Perangkat Lunak
Pengujian Perangkat LunakPengujian Perangkat Lunak
Pengujian Perangkat Lunak
 
Data Mining Clustering
Data Mining ClusteringData Mining Clustering
Data Mining Clustering
 
Data Mining Klasifikasi (Updated 30 Desember 2020)
Data Mining Klasifikasi (Updated 30 Desember 2020)Data Mining Klasifikasi (Updated 30 Desember 2020)
Data Mining Klasifikasi (Updated 30 Desember 2020)
 
Analisis Algoritma - Strategi Algoritma Dynamic Programming
Analisis Algoritma - Strategi Algoritma Dynamic ProgrammingAnalisis Algoritma - Strategi Algoritma Dynamic Programming
Analisis Algoritma - Strategi Algoritma Dynamic Programming
 
Analisis Algoritma - Strategi Algoritma Divide and Conquer
Analisis Algoritma - Strategi Algoritma Divide and ConquerAnalisis Algoritma - Strategi Algoritma Divide and Conquer
Analisis Algoritma - Strategi Algoritma Divide and Conquer
 
Analisis Algoritma - Strategi Algoritma Greedy
Analisis Algoritma - Strategi Algoritma GreedyAnalisis Algoritma - Strategi Algoritma Greedy
Analisis Algoritma - Strategi Algoritma Greedy
 
Analisis Algoritma - Penerapan Strategi Algoritma Brute Force
Analisis Algoritma - Penerapan Strategi Algoritma Brute ForceAnalisis Algoritma - Penerapan Strategi Algoritma Brute Force
Analisis Algoritma - Penerapan Strategi Algoritma Brute Force
 
Analisis Algoritma - Strategi Algoritma Brute Force
Analisis Algoritma - Strategi Algoritma Brute ForceAnalisis Algoritma - Strategi Algoritma Brute Force
Analisis Algoritma - Strategi Algoritma Brute Force
 
Analisis Algoritma - Kelas-kelas Dasar Efisiensi Algoritma
Analisis Algoritma - Kelas-kelas Dasar Efisiensi AlgoritmaAnalisis Algoritma - Kelas-kelas Dasar Efisiensi Algoritma
Analisis Algoritma - Kelas-kelas Dasar Efisiensi Algoritma
 
Analisis Algoritma - Teorema Notasi Asimptotik
Analisis Algoritma - Teorema Notasi AsimptotikAnalisis Algoritma - Teorema Notasi Asimptotik
Analisis Algoritma - Teorema Notasi Asimptotik
 
Analisis Algoritma - Notasi Asimptotik
Analisis Algoritma - Notasi AsimptotikAnalisis Algoritma - Notasi Asimptotik
Analisis Algoritma - Notasi Asimptotik
 
Activity Diagram
Activity DiagramActivity Diagram
Activity Diagram
 
UML dan Use Case View
UML dan Use Case ViewUML dan Use Case View
UML dan Use Case View
 

Recently uploaded

2024 RoOUG Security model for the cloud.pptx
2024 RoOUG Security model for the cloud.pptx2024 RoOUG Security model for the cloud.pptx
2024 RoOUG Security model for the cloud.pptx
Georgi Kodinov
 
Exploring Innovations in Data Repository Solutions - Insights from the U.S. G...
Exploring Innovations in Data Repository Solutions - Insights from the U.S. G...Exploring Innovations in Data Repository Solutions - Insights from the U.S. G...
Exploring Innovations in Data Repository Solutions - Insights from the U.S. G...
Globus
 
Globus Compute wth IRI Workflows - GlobusWorld 2024
Globus Compute wth IRI Workflows - GlobusWorld 2024Globus Compute wth IRI Workflows - GlobusWorld 2024
Globus Compute wth IRI Workflows - GlobusWorld 2024
Globus
 
Prosigns: Transforming Business with Tailored Technology Solutions
Prosigns: Transforming Business with Tailored Technology SolutionsProsigns: Transforming Business with Tailored Technology Solutions
Prosigns: Transforming Business with Tailored Technology Solutions
Prosigns
 
Enterprise Resource Planning System in Telangana
Enterprise Resource Planning System in TelanganaEnterprise Resource Planning System in Telangana
Enterprise Resource Planning System in Telangana
NYGGS Automation Suite
 
Accelerate Enterprise Software Engineering with Platformless
Accelerate Enterprise Software Engineering with PlatformlessAccelerate Enterprise Software Engineering with Platformless
Accelerate Enterprise Software Engineering with Platformless
WSO2
 
GlobusWorld 2024 Opening Keynote session
GlobusWorld 2024 Opening Keynote sessionGlobusWorld 2024 Opening Keynote session
GlobusWorld 2024 Opening Keynote session
Globus
 
BoxLang: Review our Visionary Licenses of 2024
BoxLang: Review our Visionary Licenses of 2024BoxLang: Review our Visionary Licenses of 2024
BoxLang: Review our Visionary Licenses of 2024
Ortus Solutions, Corp
 
Field Employee Tracking System| MiTrack App| Best Employee Tracking Solution|...
Field Employee Tracking System| MiTrack App| Best Employee Tracking Solution|...Field Employee Tracking System| MiTrack App| Best Employee Tracking Solution|...
Field Employee Tracking System| MiTrack App| Best Employee Tracking Solution|...
informapgpstrackings
 
Navigating the Metaverse: A Journey into Virtual Evolution"
Navigating the Metaverse: A Journey into Virtual Evolution"Navigating the Metaverse: A Journey into Virtual Evolution"
Navigating the Metaverse: A Journey into Virtual Evolution"
Donna Lenk
 
Cyaniclab : Software Development Agency Portfolio.pdf
Cyaniclab : Software Development Agency Portfolio.pdfCyaniclab : Software Development Agency Portfolio.pdf
Cyaniclab : Software Development Agency Portfolio.pdf
Cyanic lab
 
OpenFOAM solver for Helmholtz equation, helmholtzFoam / helmholtzBubbleFoam
OpenFOAM solver for Helmholtz equation, helmholtzFoam / helmholtzBubbleFoamOpenFOAM solver for Helmholtz equation, helmholtzFoam / helmholtzBubbleFoam
OpenFOAM solver for Helmholtz equation, helmholtzFoam / helmholtzBubbleFoam
takuyayamamoto1800
 
Understanding Globus Data Transfers with NetSage
Understanding Globus Data Transfers with NetSageUnderstanding Globus Data Transfers with NetSage
Understanding Globus Data Transfers with NetSage
Globus
 
Globus Connect Server Deep Dive - GlobusWorld 2024
Globus Connect Server Deep Dive - GlobusWorld 2024Globus Connect Server Deep Dive - GlobusWorld 2024
Globus Connect Server Deep Dive - GlobusWorld 2024
Globus
 
Top Features to Include in Your Winzo Clone App for Business Growth (4).pptx
Top Features to Include in Your Winzo Clone App for Business Growth (4).pptxTop Features to Include in Your Winzo Clone App for Business Growth (4).pptx
Top Features to Include in Your Winzo Clone App for Business Growth (4).pptx
rickgrimesss22
 
Enhancing Project Management Efficiency_ Leveraging AI Tools like ChatGPT.pdf
Enhancing Project Management Efficiency_ Leveraging AI Tools like ChatGPT.pdfEnhancing Project Management Efficiency_ Leveraging AI Tools like ChatGPT.pdf
Enhancing Project Management Efficiency_ Leveraging AI Tools like ChatGPT.pdf
Jay Das
 
May Marketo Masterclass, London MUG May 22 2024.pdf
May Marketo Masterclass, London MUG May 22 2024.pdfMay Marketo Masterclass, London MUG May 22 2024.pdf
May Marketo Masterclass, London MUG May 22 2024.pdf
Adele Miller
 
Using IESVE for Room Loads Analysis - Australia & New Zealand
Using IESVE for Room Loads Analysis - Australia & New ZealandUsing IESVE for Room Loads Analysis - Australia & New Zealand
Using IESVE for Room Loads Analysis - Australia & New Zealand
IES VE
 
Beyond Event Sourcing - Embracing CRUD for Wix Platform - Java.IL
Beyond Event Sourcing - Embracing CRUD for Wix Platform - Java.ILBeyond Event Sourcing - Embracing CRUD for Wix Platform - Java.IL
Beyond Event Sourcing - Embracing CRUD for Wix Platform - Java.IL
Natan Silnitsky
 
Orion Context Broker introduction 20240604
Orion Context Broker introduction 20240604Orion Context Broker introduction 20240604
Orion Context Broker introduction 20240604
Fermin Galan
 

Recently uploaded (20)

2024 RoOUG Security model for the cloud.pptx
2024 RoOUG Security model for the cloud.pptx2024 RoOUG Security model for the cloud.pptx
2024 RoOUG Security model for the cloud.pptx
 
Exploring Innovations in Data Repository Solutions - Insights from the U.S. G...
Exploring Innovations in Data Repository Solutions - Insights from the U.S. G...Exploring Innovations in Data Repository Solutions - Insights from the U.S. G...
Exploring Innovations in Data Repository Solutions - Insights from the U.S. G...
 
Globus Compute wth IRI Workflows - GlobusWorld 2024
Globus Compute wth IRI Workflows - GlobusWorld 2024Globus Compute wth IRI Workflows - GlobusWorld 2024
Globus Compute wth IRI Workflows - GlobusWorld 2024
 
Prosigns: Transforming Business with Tailored Technology Solutions
Prosigns: Transforming Business with Tailored Technology SolutionsProsigns: Transforming Business with Tailored Technology Solutions
Prosigns: Transforming Business with Tailored Technology Solutions
 
Enterprise Resource Planning System in Telangana
Enterprise Resource Planning System in TelanganaEnterprise Resource Planning System in Telangana
Enterprise Resource Planning System in Telangana
 
Accelerate Enterprise Software Engineering with Platformless
Accelerate Enterprise Software Engineering with PlatformlessAccelerate Enterprise Software Engineering with Platformless
Accelerate Enterprise Software Engineering with Platformless
 
GlobusWorld 2024 Opening Keynote session
GlobusWorld 2024 Opening Keynote sessionGlobusWorld 2024 Opening Keynote session
GlobusWorld 2024 Opening Keynote session
 
BoxLang: Review our Visionary Licenses of 2024
BoxLang: Review our Visionary Licenses of 2024BoxLang: Review our Visionary Licenses of 2024
BoxLang: Review our Visionary Licenses of 2024
 
Field Employee Tracking System| MiTrack App| Best Employee Tracking Solution|...
Field Employee Tracking System| MiTrack App| Best Employee Tracking Solution|...Field Employee Tracking System| MiTrack App| Best Employee Tracking Solution|...
Field Employee Tracking System| MiTrack App| Best Employee Tracking Solution|...
 
Navigating the Metaverse: A Journey into Virtual Evolution"
Navigating the Metaverse: A Journey into Virtual Evolution"Navigating the Metaverse: A Journey into Virtual Evolution"
Navigating the Metaverse: A Journey into Virtual Evolution"
 
Cyaniclab : Software Development Agency Portfolio.pdf
Cyaniclab : Software Development Agency Portfolio.pdfCyaniclab : Software Development Agency Portfolio.pdf
Cyaniclab : Software Development Agency Portfolio.pdf
 
OpenFOAM solver for Helmholtz equation, helmholtzFoam / helmholtzBubbleFoam
OpenFOAM solver for Helmholtz equation, helmholtzFoam / helmholtzBubbleFoamOpenFOAM solver for Helmholtz equation, helmholtzFoam / helmholtzBubbleFoam
OpenFOAM solver for Helmholtz equation, helmholtzFoam / helmholtzBubbleFoam
 
Understanding Globus Data Transfers with NetSage
Understanding Globus Data Transfers with NetSageUnderstanding Globus Data Transfers with NetSage
Understanding Globus Data Transfers with NetSage
 
Globus Connect Server Deep Dive - GlobusWorld 2024
Globus Connect Server Deep Dive - GlobusWorld 2024Globus Connect Server Deep Dive - GlobusWorld 2024
Globus Connect Server Deep Dive - GlobusWorld 2024
 
Top Features to Include in Your Winzo Clone App for Business Growth (4).pptx
Top Features to Include in Your Winzo Clone App for Business Growth (4).pptxTop Features to Include in Your Winzo Clone App for Business Growth (4).pptx
Top Features to Include in Your Winzo Clone App for Business Growth (4).pptx
 
Enhancing Project Management Efficiency_ Leveraging AI Tools like ChatGPT.pdf
Enhancing Project Management Efficiency_ Leveraging AI Tools like ChatGPT.pdfEnhancing Project Management Efficiency_ Leveraging AI Tools like ChatGPT.pdf
Enhancing Project Management Efficiency_ Leveraging AI Tools like ChatGPT.pdf
 
May Marketo Masterclass, London MUG May 22 2024.pdf
May Marketo Masterclass, London MUG May 22 2024.pdfMay Marketo Masterclass, London MUG May 22 2024.pdf
May Marketo Masterclass, London MUG May 22 2024.pdf
 
Using IESVE for Room Loads Analysis - Australia & New Zealand
Using IESVE for Room Loads Analysis - Australia & New ZealandUsing IESVE for Room Loads Analysis - Australia & New Zealand
Using IESVE for Room Loads Analysis - Australia & New Zealand
 
Beyond Event Sourcing - Embracing CRUD for Wix Platform - Java.IL
Beyond Event Sourcing - Embracing CRUD for Wix Platform - Java.ILBeyond Event Sourcing - Embracing CRUD for Wix Platform - Java.IL
Beyond Event Sourcing - Embracing CRUD for Wix Platform - Java.IL
 
Orion Context Broker introduction 20240604
Orion Context Broker introduction 20240604Orion Context Broker introduction 20240604
Orion Context Broker introduction 20240604
 

Algorithm and Programming (Procedure and Function)

  • 1. Adam Mukharil Bachtiar English Class Informatics Engineering 2011 Algorithms and Programming Procedure and Function
  • 2. Steps of the Day Let’s Start Modular Programming Procedure Function
  • 3. Modular Programming Definition and Types of Modular Programming
  • 4. BackgroundofModular Programming Make a program to solve all problems in your calculus book! WHAT WILL YOU DO?
  • 5.
  • 6. ThinkinginModular Programming Breakdown a big problem into several small problems. Small Problems can be reconstructed to solve the big problem.
  • 8. WhatisModularProgramming Programming technique that break main program into several sub program.
  • 9. BenefitsofModular Programming • Eliminate repetition of same syntax in program or algorithm. • Can find syntax error easily. • Easy to make big program.
  • 12. WhatisProcedure Instruction block that was made specially to do specific job.
  • 13. ExampleofProcedure (SleepProcedure) • Brush your teeth • Go to bed • Pray • Cover your body with bedcover • Count the sheep (if you are insomnia) • Start to dream • Wake up (if you are not death) • Pray again
  • 14. Format of Procedure (Algorithm Notation) Procedure NamaProsedur (Parameter jika ada) {I.S.: Keadaan awal sebelum prosedur dijalankan} {F.S.: Keadaan akhir sesudah prosedur dijalankan} Kamus: {Variabel, konstanta, tipe buatan lokal} Algoritma: {Badan Prosedur, Berisi instruksi} EndProcedure
  • 15. Format of Procedure (Pascal Notation) procedure NamaProsedur (Parameter jika ada); {Variabel, konstanta, tipe buatan} begin {Badan Prosedur, Berisi instruksi} end;
  • 16.
  • 17. Example of Procedure (Algorithm) 1 2 3 4 5 6 7 8 9 10 11 12 13 Procedure HitungLuasPersegi {I.S: Diinputkan sisi oleh pengguna} {F.S: Menampilkan hasil perhitungan luas persegi di layar} Kamus: sisi:integer luas:integer Algoritma: input(sisi) luas  sisi * sisi output(‘Luas Persegi = ‘,luas) EndProcedure
  • 18. Example of Procedure (Pascal) 1 2 3 4 5 6 7 8 9 10 11 12 13 procedure HitungLuasPersegi; var sisi:integer; luas:integer; begin write(‘Masukan sisi : ‘);readln(sisi); luas  sisi * sisi; writeln(‘Luas Persegi = ‘,luas); write(‘Tekan sembarang tombol untuk keluar...’); readkey(); end;
  • 19. CalltheProcedure Procedure was useless until you call it in main algorithm, main program, or the other modul.
  • 20. Format of Calling Procedure (Algorithm) NamaProsedur Atau NamaProsedur(parameter jika ada)
  • 21. Format of Calling Procedure (Algorithm) NamaProsedur; Atau NamaProsedur(parameter jika ada);
  • 22.
  • 23. Example of Calling Procedure (Algorithm) 1 2 3 4 5 6 7 8 9 10 11 12 Algoritma PanggilHitungLuasPersegi {I.S: Diinputkan sebuah bilangan oleh pengguna} {F.S: Memanggil prosedur sebanyak bilangan} Kamus: i,bil:integer {kamus global} procedure HitungLuasPersegi {Cukup Headernya saja} Algoritma: input(bil) for i  1 to bil do HitungLuasPersegi {memanggil prosedur} endfor
  • 24. Example of Calling Procedure (Pascal) 1 2 3 4 5 6 7 8 9 10 11 12 13 program PanggilHitungLuasPersegi; uses crt; var bil:integer; {Prosedur HitungLuasPersegi kamu diletakkan di sini} begin write(‘Masukan bilangan = ‘);readln(bil); for i  1 to bil do HitungLuasPersegi; {memanggil prosedur} {Baris penutup jangan sampai lupa!!!} end.
  • 26. GlobalVariable Varible that was known by entire program or algorithm. This variable was declared in main program or main algorithm.
  • 27. LocalVariable Varible that was known only by its owner. This variable was declared inside procedure or function.
  • 28. Local Variable (Algorithm Notation) Procedure NamaProsedur (Parameter jika ada) {I.S.: Keadaan awal sebelum prosedur dijalankan} {F.S.: Keadaan akhir sesudah prosedur dijalankan} Kamus: {Identifier lokal diletakkan di sini} Algoritma: {Badan Prosedur, Berisi instruksi} EndProcedure FORMAL PARAMETER
  • 29. Global Variable (Algorithm Notation) Algoritma judul_algoritma {I.S.: diisi keadaan yang terjadi di awal algoritma} {F.S.: diisi keadaan yang terjadi di akhir algoritma} Kamus/Deklarasi: {Identifier global diletakkan di sini} Algoritma/Deskripsi: {diisi dengan input, proses, dan output}
  • 30. Local and Global Variable (Pascal Notation) program nama_program; var {identifier global di sini} procedure nama_prosedur (parameter jika ada); var {identifier lokal di sini} begin end; begin end.
  • 32. WhatisParameter Variable that allow us to have more than just ordinary communication to procedure or function.
  • 33. TypesofParameter • Input Parameter • Output Parameter • Input/Output Parameter : means parameter by value : means parameter by reference
  • 35. Input Parameter (Algorithm Notation) Procedure NamaProsedur (Input NamaVariabel:TipeData) {I.S.: Keadaan awal sebelum prosedur dijalankan} {F.S.: Keadaan akhir sesudah prosedur dijalankan} Kamus: {Identifier lokal diletakkan di sini} Algoritma: {Badan Prosedur, Berisi instruksi} EndProcedure
  • 36. Calling Input Parameter (Algorithm Notation) Algoritma NamaProsedur {I.S.: Keadaan awal sebelum algoritma dijalankan} {F.S.: Keadaan akhir sesudah algoritma dijalankan} Kamus: {Identifier global diletakkan di sini} Procedure NamaProsedur (Input NamaVariabel:TipeData) Algoritma: NamaProsedur(NamaVariabel) {pemanggilan prosedur} EndProcedure ACTUAL PARAMETER
  • 37. Input Parameter (Pascal Notation) program nama_program; var {identifier global di sini} procedure nama_prosedur (variabel:tipedata); var {identifier lokal di sini} begin end; Begin nama_prosedur(variabel);{pemanggilan prosedur} end.
  • 38.
  • 39. Example of Input Parameter (Algorithm) 1 2 3 4 5 6 7 8 9 10 11 12 Procedure Persegi(Input sisi:integer) {I.S: Menerima input berupa sisi} {F.S: Menampilkan luas dan keliling persegi} Kamus: luas,keliling:integer Algoritma: luas  sisi * sisi keliling  4 * sisi output(luas,keliling) EndProcedure
  • 40. Example of Calling Input Parameter (Algorithm) 1 2 3 4 5 6 7 8 9 10 11 Algoritma PanggilHitungLuasPersegi {I.S: Diinputkan sisi oleh pengguna} {F.S: Memanggil prosedur persegi} Kamus: sisi:integer procedure Persegi(Input sisi:integer) Algoritma: input(sisi) Persegi(sisi)
  • 41. Example of Input Parameter (Pascal) 1 2 3 4 5 6 7 8 9 10 11 12 13 14 program HitungPersegi; uses crt; var sisi:integer; procedure persegi(sisi:integer); var luas,keliling:integer; begin luas := sisi * sisi; keliling := 4 * sisi; writeln(‘Luas Persegi : ‘,luas); {bersambung}
  • 42. Example of Input Parameter (Pascal) 15 16 17 18 19 20 21 22 23 24 writeln(‘Keliling persegi : ‘,keliling); end; begin write(‘Masukan sisi persegi= ‘);readln(sisi); persegi(sisi); writeln(); write(‘Tekan sembarang tombol untuk menutup...’); readkey(); end.
  • 44. Output Parameter (Algorithm Notation) Procedure NamaProsedur (Output NamaVariabel:TipeData) {I.S.: Keadaan awal sebelum prosedur dijalankan} {F.S.: Keadaan akhir sesudah prosedur dijalankan} Kamus: {Identifier lokal diletakkan di sini} Algoritma: {Badan Prosedur, Berisi instruksi} EndProcedure
  • 45. Calling Output Parameter (Algorithm Notation) Algoritma NamaProsedur {I.S.: Keadaan awal sebelum algoritma dijalankan} {F.S.: Keadaan akhir sesudah algoritma dijalankan} Kamus: {Identifier global diletakkan di sini} Procedure NamaProsedur (Output NamaVariabel:TipeData) Algoritma: NamaProsedur(NamaVariabel) {pemanggilan prosedur} EndProcedure
  • 46. Output Parameter (Pascal Notation) program nama_program; var {identifier global di sini} procedure nama_prosedur (var variabel:tipedata); var {identifier lokal di sini} begin end; Begin nama_prosedur(variabel);{pemanggilan prosedur} end.
  • 47.
  • 48. Example of Output Parameter (Algorithm) 1 2 3 4 5 6 7 8 9 10 11 12 Procedure Persegi(Output luas,keliling:integer) {I.S: Meminta input sisi dari pengguna} {F.S: Mengirimkan nilai luas dan keliling persegi} Kamus: sisi:integer Algoritma: input(sisi) luas  sisi * sisi keliling  4 * sisi EndProcedure
  • 49. Example of Calling Output Parameter (Algorithm) 1 2 3 4 5 6 7 8 9 10 11 Algoritma PanggilHitungLuasPersegi {I.S: Memanggil prosedur persegi} {F.S: Menampilkan nilai dari prosedur persegi} Kamus: luas,keliling:integer Procedure Persegi(Output luas,keliling:integer) Algoritma: Persegi(luas,keliling) output(luas,keliling)
  • 50. Example of Output Parameter (Pascal) 1 2 3 4 5 6 7 8 9 10 11 12 13 14 program HitungPersegi; uses crt; var luas,keliling:integer; procedure persegi(var luas,keliling:integer); var sisi:integer; begin write(‘Masukan sisi persegi= ‘);readln(sisi); luas := sisi * sisi; keliling := 4 * sisi; {bersambung}
  • 51. Example of Output Parameter (Pascal) 15 16 17 18 19 20 21 22 23 24 end; begin persegi(luas,keliling); writeln(‘Keliling persegi : ‘,keliling); writeln(‘Luas Persegi : ‘,luas); writeln(); write(‘Tekan sembarang tombol untuk menutup...’); readkey(); end.
  • 53. Input/Output Parameter (Algorithm Notation) Procedure NamaProsedur (I/O NamaVariabel:TipeData) {I.S.: Keadaan awal sebelum prosedur dijalankan} {F.S.: Keadaan akhir sesudah prosedur dijalankan} Kamus: {Identifier lokal diletakkan di sini} Algoritma: {Badan Prosedur, Berisi instruksi} EndProcedure
  • 54. Calling Input/Output Parameter (Algorithm Notation) Algoritma NamaProsedur {I.S.: Keadaan awal sebelum algoritma dijalankan} {F.S.: Keadaan akhir sesudah algoritma dijalankan} Kamus: {Identifier global diletakkan di sini} Procedure NamaProsedur (I/O NamaVariabel:TipeData) Algoritma: NamaProsedur(NamaVariabel) {pemanggilan prosedur} EndProcedure
  • 55. Input/Ouput Parameter (Pascal Notation) program nama_program; var {identifier global di sini} procedure nama_prosedur (var variabel:tipedata); var {identifier lokal di sini} begin end; Begin nama_prosedur(variabel);{pemanggilan prosedur} end.
  • 56.
  • 57. Example of Input/Output Parameter (Algorithm) 1 2 3 4 5 6 7 8 9 10 11 Procedure Persegi(I/O sisi:integer,Output luas,keliling:integer) {I.S: Menerima input sisi} {F.S: Mengirimkan nilai sisi, luas, dan keliling persegi} Kamus: Algoritma: luas  sisi * sisi keliling  4 * sisi sisi  sisi + 1; {lihat apa yang terjadi} EndProcedure
  • 58. Example of Calling Output Parameter (Algorithm) 1 2 3 4 5 6 7 8 9 10 11 12 Algoritma PanggilHitungLuasPersegi {I.S: Memanggil prosedur persegi} {F.S: Menampilkan nilai dari prosedur persegi} Kamus: sisi,luas,keliling:integer Procedure Persegi(I/O sisi:integer,Output luas,keliling:integer) Algoritma: input(sisi) Persegi(sisi,luas,keliling) output(sisi,luas,keliling) {Berapa nilai sisinya?}
  • 59. Example of Input/Output Parameter (Pascal) 1 2 3 4 5 6 7 8 9 10 11 12 program HitungPersegi; uses crt; var luas,keliling:integer; procedure persegi(sisi:integer;var luas,keliling:integer); begin luas := sisi * sisi; keliling := 4 * sisi; sisi := sisi + 1; {Lihat apa yang terjadi} end;
  • 60. Example of Input/Output Parameter (Pascal) 13 14 15 16 17 18 19 20 21 22 begin write(‘Masukan sisi persegi= ‘);readln(sisi); persegi(sisi,luas,keliling); writeln(‘Keliling persegi : ‘,keliling); writeln(‘Luas Persegi : ‘,luas); writeln(‘Sisi persegi : ‘,sisi); writeln(); write(‘Tekan sembarang tombol untuk menutup...’); readkey(); end.
  • 62. WhatisFunction Instruction block that was made specially to do specific job and return a value. Such as: F(x)= 2x+4  it will return 6 for x=1.
  • 63. DifferenceBetweenProcedure andFunction Procedure was not made to return a value (only do specific job) but function was made to return a value (More specific than procedure).
  • 64. Format of Function (Algorithm Notation) FUnction NamaFungsi (Parameter jika ada)  tipefungsi {I.S.: Keadaan awal sebelum fungsi dijalankan} {F.S.: Keadaan akhir sesudah fungsi dijalankan} Kamus: {Variabel, konstanta, tipe buatan lokal} Algoritma: {Badan fungsi, Berisi instruksi} return VALUE {tipenya sama dengan tipe fungsi} EndFunction
  • 65. Format of Procedure (Pascal Notation) function NamaFungsi (Parameter jika ada):tipefungsi; {Variabel, konstanta, tipe buatan} begin {Badan Fungsi, Berisi instruksi} NamaFungsi := VALUE; (tipenya sama dengan tipe fungsi} end;
  • 66.
  • 67. Example of Function (Algorithm) 1 2 3 4 5 6 7 8 9 Function LuasPersegi(Input sisi:integer)  integer {I.S: Menerima input berupa sisi} {F.S: Menampilkan luas dan keliling persegi} Kamus: Algoritma: return sisi * sisi EndFunction
  • 68. Example of Function (Algorithm) 1 2 3 4 5 6 7 8 9 10 11 12 Algoritma PanggilLuasPersegi {I.S: Diinputkan sisi oleh pengguna} {F.S: Menampilkan nilai fungsi luas persegi} Kamus: sisi,luas:integer Function LuasPersegi(Input sisi:integer)  integer Algoritma: input(sisi) luas  LuasPersegi(sisi) output(luas)
  • 69. Example of Function (Pascal) 1 2 3 4 5 6 7 8 9 10 11 12 13 14 program HitungPersegi; uses crt; var sisi,luas:integer; function LuasPersegi(sisi:integer):integer; begin LuasPersegi := sisi * sisi; end; begin write(‘Masukan sisi persegi= ‘);readln(sisi); luas := LuasPersegi(sisi); {Pemanggilan Function}
  • 70. Example of Function (Pascal) 15 16 17 18 19 write(‘Luas persegi : ‘,luas); writeln(); write(‘Tekan sembarang tombol untuk menutup...’); readkey(); end.
  • 71. Contact Person: Adam Mukharil Bachtiar Informatics Engineering UNIKOM Jalan Dipati Ukur Nomor. 112-114 Bandung 40132 Email: adfbipotter@gmail.com Blog: http://adfbipotter.wordpress.com Copyright © Adam Mukharil Bachtiar 2011