SlideShare a Scribd company logo
By Tenia Wahyuningrum, S.Kom
PENGERTIAN
 Ada dua jenis subprogram yaitu
  prosedur dan fungsi.
 Memiliki kegunaan yg sama, yaitu
  melakukan tugas tertentu
 Perbedaannya fungsi selalu
  mengembalikan suatu nilai setelah
  dipanggil sedangkan prosedur tidak
PENGERTIAN
 Mengapa membutuhkan subprogram ?
  Jawabnya karena dalam program yg
  besar, akan lebih baik jika tugas tertentu
  dilakukan oleh subrutin tertentu
 Hal ini menjadikan program lebih mudah
  dibaca
 Juga membuat pelacakan kesalahan
  program menjadi lebih mudah
PROSEDUR
   Bentuk umum prosedur adalah :
    Prosedur nama_prosedur (parameter1, 2, …);
    Begin
      {pernyataan – pernyataan}
    End;
     Parameter1, 2,.. Merupakan informasi yg
      diberikan kepada prosedur atau fungsi
     Untuk memanggil prosedur kita cukup
      menuliskan nama prosedur dan
      parameternya
    nama_prosedur (parameter1, 2, …);
FUNGSI
   Bentuk umum fungsi adalah :
    Function nama_fungsi (parameter1, 2, …):
      tipe_kembalian;
    Begin
      {pernyataan – pernyataan}
    End;
    Tipe kembalian adalah tipe data dari nilai yg
      dikembalikan oleh fungsi
    Untuk memanggil fungsi kita harus
      menyediakan variabel untuk menerima hasil dari
      fungsi
    Nama_variabel:= nama_fungsi (parameter1, 2,
      …);
PARAMETER
   Parameter adalah nilai atau informasi yg
    diberikan ke prosedur atau fungsi
   Untuk melewatkan parameter ada dua cara
    yaitu dengan nilai atau referensi
   Melewatkan dengan nilai, subrutin yg
    dipanggil tidak dapat merubah nilainya
   Sebaliknya bila melewatkan referensinya,
    subrutin dapat mengubah nilainya.
   Untuk melewatkan referensi, tambahkan
    kata var didepan nama parameter
VARIABLE
 Didalam prosedur dan fungsi kita dapat
  mendeklarasikan sebuah variable yg
  bersifat lokal
 Variable lokal hanya berlaku untuk
  prosedur tersebut dan tidak dapat
  digunakan diluar prosedur
Bentuk umum
 Var g,h:integer;

 Procedure hitung(a:integer,var c:byte)
 Var r,s: integer;
 Begin
 ...
 End;

 begin
 Hitung(x,y);
 end
Keterangan

   a dan c merupakan parameter formal
   integer dan byte merupakan tipe parameter
   x dan y merupakan parameter nyata
   pengiriman nilai x ke a disebut pengiriman
    parameter secara nilai (by value)
   pengiriman nilai dari y ke c disebut
    pengiriman parameter secara acuan (by
    reference)
   r dan s merupakan variabel lokal
   g dan h merupakan variabel global
Perbedaan prosedur dan
fungsi
 Fungsi, nilai yang dikirimkan balik
  terdapat pada nama fungsinya.
  Sedangkan Prosedur hanya pada
  parameter yang dikirim secara acuan.
 Fungsi selalu mengembalikan nilai
 Nilai yang dikirim balik berada pada
  nama fungsinya, sehingga nama fungsi
  ini harus digunakan untuk menampung
  hasil yang akan dikirimkan
 Penulisan fungsi harus disertai tipe
  datanya
 Karena nilai balik berada pada nama
  fungsinya, maka fungsi tersebut dapat
  langsung digunakan untuk mencetak
procedure hitung( var a,b,c:integer);
begin
c:=a+b;
writeln('nilai c=',c);
end;

var
x,y,z:integer;
Begin
   x:=2;
   y:=3;
   z:=0;
hitung(x,y,z);
writeln(x,y,z);
end.
function k(a:integer;var b:integer):integer;
   begin
   if a>b then
   k:=(a+b*abs(a-b))div 2 else
   a:=a*b;
   dec(a,4);
   inc(b,a);
   end;

var x,y:integer;
  begin
     x:=6;y:=2;
     writeln(x,' ',y);
     writeln(k(x,y));
     writeln(x,' ',y);
  end.
function abc(k:integer):integer;
var i,j:integer;
begin
   j:=1;
   for i:=1 to k do
   j:=j*2;
   abc:=j;
end;

 begin
writeln(abc(3));
end.
Function fakto(n:byte):longint;
Begin
  if n=0 then
  fakto:=1;
Else
Fakto:=n*fakto(n-1);
End;
PUSTAKA
   Algoritma dan Pemrograman, Antony
    Pranata
Function xyz(n:byte):integer;
  begin
  if n=1 then xyz:=n
  else xyz:=1+xyz(n-1);
  end;

Begin
a:=xyz(10);
Writeln(a);
End.
Masih berhubungan dengan soal diatas,
Bila statement xyz:=1+xyz(n-1), diganti
   xyz:=n+xyz(n-1) dan dipanggil dengan
   y:=xyz(5) maka, y berharga …..

More Related Content

DOC
Komplikasi efusi pleura
DOCX
Martina patofisiologi sepsis neonatorum
PPTX
Acute limb ischemia
DOCX
Management pasca operasi
DOC
L aporan pendahuluan sepsis desi
DOCX
Cara membuat fungsi dan prosedur pada java
DOCX
modul algoritma Bab 7 record
Komplikasi efusi pleura
Martina patofisiologi sepsis neonatorum
Acute limb ischemia
Management pasca operasi
L aporan pendahuluan sepsis desi
Cara membuat fungsi dan prosedur pada java
modul algoritma Bab 7 record

What's hot (20)

PPTX
Askep colitis ulseratif
PDF
2. Array of Record (Struktur Data)
PPT
Algoritma - prosedur dan fungsi
PPTX
Modul 1 kb 1 konsep kebutuhan dasar manusia
PDF
Askep dic
DOCX
Pengolahan Citra Digital (Resume materi kuliah)
DOCX
Makalah harga diri
PPTX
PPT ARDS
PPTX
Tahap pre intra-post operatif
DOCX
Askep Retinoblastoma
PPTX
Tipe Data, Variabel dan Konstanta
DOCX
Stilah untuk suara nafas
DOCX
Laporan hasil praktikum Alpro I Modul 1 (Pengenalan Pascal)
PDF
Format pengkajian-askep-pada-pasien-hemodialisa
PPTX
2. TERAPI OKSIGEN (O2).pptx
PDF
Pengelolaan pasien pungsi perikardium
PPTX
Kulit rambut dan kuku
PPTX
LP&LK GAGAL JANTUNG.pptx
PPTX
Pushdown Automata - Materi 8 - TBO
Askep colitis ulseratif
2. Array of Record (Struktur Data)
Algoritma - prosedur dan fungsi
Modul 1 kb 1 konsep kebutuhan dasar manusia
Askep dic
Pengolahan Citra Digital (Resume materi kuliah)
Makalah harga diri
PPT ARDS
Tahap pre intra-post operatif
Askep Retinoblastoma
Tipe Data, Variabel dan Konstanta
Stilah untuk suara nafas
Laporan hasil praktikum Alpro I Modul 1 (Pengenalan Pascal)
Format pengkajian-askep-pada-pasien-hemodialisa
2. TERAPI OKSIGEN (O2).pptx
Pengelolaan pasien pungsi perikardium
Kulit rambut dan kuku
LP&LK GAGAL JANTUNG.pptx
Pushdown Automata - Materi 8 - TBO
Ad

Similar to 6. subrutin (20)

PPT
Materi Pertemua 3 procedure dan function.ppt
PPT
Pemrograman Modular
PDF
Struktur data chapter_10
PDF
Struktur data chapter_09
DOCX
Prosedur dan fungsi
PDF
Materi 5
DOCX
Modul3 algoritma dan pemrograman procedure dan_function
PDF
Makalah prosedur dan fungsi
PPT
Pengantar Algoritma Pemrograman II
PPTX
Pbd function
PDF
Algoritma dan Pemrograman I - Prosedur.pdf
PDF
5 prosedur dan fungsi
DOC
Dasar Pemrograman materi kuliah
DOCX
Laporan Praktikum ALPRO-Berhitung Rumus Statistika
PPTX
materi bahasa Function dengan Pascal.pptx
DOCX
Pendahuluan 2
PPTX
Pertemuan vi (Function Java)
PDF
Pascal - Prosedur.txt - Notepad.pdf
PPTX
Topik 10 Fungsi
PDF
pengumuman kegiatan dan contoh sikap sekolah.pdf
Materi Pertemua 3 procedure dan function.ppt
Pemrograman Modular
Struktur data chapter_10
Struktur data chapter_09
Prosedur dan fungsi
Materi 5
Modul3 algoritma dan pemrograman procedure dan_function
Makalah prosedur dan fungsi
Pengantar Algoritma Pemrograman II
Pbd function
Algoritma dan Pemrograman I - Prosedur.pdf
5 prosedur dan fungsi
Dasar Pemrograman materi kuliah
Laporan Praktikum ALPRO-Berhitung Rumus Statistika
materi bahasa Function dengan Pascal.pptx
Pendahuluan 2
Pertemuan vi (Function Java)
Pascal - Prosedur.txt - Notepad.pdf
Topik 10 Fungsi
pengumuman kegiatan dan contoh sikap sekolah.pdf
Ad

More from Tenia Wahyuningrum (20)

PPTX
Measuring User Experience
PPTX
Populasi dan sampel dalam penelitian HCI
PPTX
10th heuristic evaluation
PPTX
Good vs bad design
PPTX
Media sosial untuk pembelajaran
PPTX
4th human factors (2)
PPTX
Human factors
PPTX
Historical Context of HCI
PPTX
Trends in Human Computer Interaction
PPTX
Good data, for better life
PPTX
PPTX
Plagiarisme
PPTX
Struktur data & computer trends 2015 2016
PPTX
Pengujian hipotesis
PPTX
Research method
PPTX
Basic research
PPTX
Pengenalan android
PPTX
Mobile programming pendahuluan
PPTX
Pertemuan 1
PPTX
Public speaking
Measuring User Experience
Populasi dan sampel dalam penelitian HCI
10th heuristic evaluation
Good vs bad design
Media sosial untuk pembelajaran
4th human factors (2)
Human factors
Historical Context of HCI
Trends in Human Computer Interaction
Good data, for better life
Plagiarisme
Struktur data & computer trends 2015 2016
Pengujian hipotesis
Research method
Basic research
Pengenalan android
Mobile programming pendahuluan
Pertemuan 1
Public speaking

Recently uploaded (12)

PPTX
Introduction Financial Consolidatioan Multi currency integration to all ERP o...
PDF
Struktur Data - 1 Kontrak Perkuliahan
PDF
Struktur Data - 3 Array: Konsep & Implementasi
PPTX
BAHASA MELAYU STANDARD kwjekqjeljwqelkqw
PPTX
CARA AKSES KE INTERNET MELALUI WIFI ATAU LAN
PDF
Berpikir Komputasional dan Penerapannya_3.pdf
PPTX
Fiber_expert_development_program_rev.1.pptx
PPTX
Pengantar Kriptografi - Keamanan dan Data Privasi
PPTX
Materi-1 Pengantar Infrastruktur Sistem Informasi.pptx
PDF
Struktur Data - 2 Pengantar Struktur Data
PDF
Struktur Data - 4 Pointer & Linked List
PPTX
Materi Workshop Keuangan Digital 2025.pptx
Introduction Financial Consolidatioan Multi currency integration to all ERP o...
Struktur Data - 1 Kontrak Perkuliahan
Struktur Data - 3 Array: Konsep & Implementasi
BAHASA MELAYU STANDARD kwjekqjeljwqelkqw
CARA AKSES KE INTERNET MELALUI WIFI ATAU LAN
Berpikir Komputasional dan Penerapannya_3.pdf
Fiber_expert_development_program_rev.1.pptx
Pengantar Kriptografi - Keamanan dan Data Privasi
Materi-1 Pengantar Infrastruktur Sistem Informasi.pptx
Struktur Data - 2 Pengantar Struktur Data
Struktur Data - 4 Pointer & Linked List
Materi Workshop Keuangan Digital 2025.pptx

6. subrutin

  • 2. PENGERTIAN  Ada dua jenis subprogram yaitu prosedur dan fungsi.  Memiliki kegunaan yg sama, yaitu melakukan tugas tertentu  Perbedaannya fungsi selalu mengembalikan suatu nilai setelah dipanggil sedangkan prosedur tidak
  • 3. PENGERTIAN  Mengapa membutuhkan subprogram ? Jawabnya karena dalam program yg besar, akan lebih baik jika tugas tertentu dilakukan oleh subrutin tertentu  Hal ini menjadikan program lebih mudah dibaca  Juga membuat pelacakan kesalahan program menjadi lebih mudah
  • 4. PROSEDUR  Bentuk umum prosedur adalah : Prosedur nama_prosedur (parameter1, 2, …); Begin {pernyataan – pernyataan} End;  Parameter1, 2,.. Merupakan informasi yg diberikan kepada prosedur atau fungsi  Untuk memanggil prosedur kita cukup menuliskan nama prosedur dan parameternya nama_prosedur (parameter1, 2, …);
  • 5. FUNGSI  Bentuk umum fungsi adalah : Function nama_fungsi (parameter1, 2, …): tipe_kembalian; Begin {pernyataan – pernyataan} End; Tipe kembalian adalah tipe data dari nilai yg dikembalikan oleh fungsi Untuk memanggil fungsi kita harus menyediakan variabel untuk menerima hasil dari fungsi Nama_variabel:= nama_fungsi (parameter1, 2, …);
  • 6. PARAMETER  Parameter adalah nilai atau informasi yg diberikan ke prosedur atau fungsi  Untuk melewatkan parameter ada dua cara yaitu dengan nilai atau referensi  Melewatkan dengan nilai, subrutin yg dipanggil tidak dapat merubah nilainya  Sebaliknya bila melewatkan referensinya, subrutin dapat mengubah nilainya.  Untuk melewatkan referensi, tambahkan kata var didepan nama parameter
  • 7. VARIABLE  Didalam prosedur dan fungsi kita dapat mendeklarasikan sebuah variable yg bersifat lokal  Variable lokal hanya berlaku untuk prosedur tersebut dan tidak dapat digunakan diluar prosedur
  • 8. Bentuk umum Var g,h:integer; Procedure hitung(a:integer,var c:byte) Var r,s: integer; Begin ... End; begin Hitung(x,y); end
  • 9. Keterangan  a dan c merupakan parameter formal  integer dan byte merupakan tipe parameter  x dan y merupakan parameter nyata  pengiriman nilai x ke a disebut pengiriman parameter secara nilai (by value)  pengiriman nilai dari y ke c disebut pengiriman parameter secara acuan (by reference)  r dan s merupakan variabel lokal  g dan h merupakan variabel global
  • 10. Perbedaan prosedur dan fungsi  Fungsi, nilai yang dikirimkan balik terdapat pada nama fungsinya. Sedangkan Prosedur hanya pada parameter yang dikirim secara acuan.  Fungsi selalu mengembalikan nilai  Nilai yang dikirim balik berada pada nama fungsinya, sehingga nama fungsi ini harus digunakan untuk menampung hasil yang akan dikirimkan
  • 11.  Penulisan fungsi harus disertai tipe datanya  Karena nilai balik berada pada nama fungsinya, maka fungsi tersebut dapat langsung digunakan untuk mencetak
  • 12. procedure hitung( var a,b,c:integer); begin c:=a+b; writeln('nilai c=',c); end; var x,y,z:integer; Begin x:=2; y:=3; z:=0; hitung(x,y,z); writeln(x,y,z); end.
  • 13. function k(a:integer;var b:integer):integer; begin if a>b then k:=(a+b*abs(a-b))div 2 else a:=a*b; dec(a,4); inc(b,a); end; var x,y:integer; begin x:=6;y:=2; writeln(x,' ',y); writeln(k(x,y)); writeln(x,' ',y); end.
  • 14. function abc(k:integer):integer; var i,j:integer; begin j:=1; for i:=1 to k do j:=j*2; abc:=j; end; begin writeln(abc(3)); end.
  • 15. Function fakto(n:byte):longint; Begin if n=0 then fakto:=1; Else Fakto:=n*fakto(n-1); End;
  • 16. PUSTAKA  Algoritma dan Pemrograman, Antony Pranata
  • 17. Function xyz(n:byte):integer; begin if n=1 then xyz:=n else xyz:=1+xyz(n-1); end; Begin a:=xyz(10); Writeln(a); End.
  • 18. Masih berhubungan dengan soal diatas, Bila statement xyz:=1+xyz(n-1), diganti xyz:=n+xyz(n-1) dan dipanggil dengan y:=xyz(5) maka, y berharga …..