Contoh:
float Jumlah(float a, float b);
1. Kalau tipe fungsi tidak disebutkan, maka akan dianggap sebagai fungsi
dengan nilai keluaran bertipe integer.
2. Untuk fungsi yang memiliki keluaran bertipe bukan integer, maka
diperlukan pendefinisian penentu tipe fungsi.
3. Untuk fungsi yang tidak mempunyai nilai keluaran maka dimasukkan
ke dalam tipe void.
4. Pernyataan yang diberikan untuk memberikan nilai akhir fungsi berupa
pernyataan return.
5. Suatu fungsi dapat menghasilkan nilai balik bagi pemanggilnya.
6. Fungsi yang mempunyai parameter, maka banyaknya parameter harus
sama, parameter aktual yang bersesuaian dengan parameter formal
harus mempunyai tipe data yang sama dan nama parameter tidak
harus sama.
Parameter
Aturannya :
Jumlah parameter actual pada pemanggilan
prosedur harus sama dengan jumlah parameter
formal pada deklarasi prosedurnya.
Tiap parameter actual harus bertipe sama
dengan tipe parameter formal yang bersesuaian.
Tiap parameter actual harus diekspresikan
dalam cara yang taat-asas dengan parameter
formal yang bersesuaian, bergantung pada jenis
parameter formal.
3 Jenis Parameter formal
deskripsi
Contoh:
#include <iostream>
#include <conio.h>
void Hitung(){
int a,b,c;
cout<<"Nilai a: ";cin>>a;
cout<<"Nilai b: ";cin>>b;
c=a+b;
cout<<"Hasil penjumlahan= "<<c<<endl;
}
int main()
{
Hitung();
getch();
}
Prosedur Dengan Parameter Masukan Pada
Algoritma
deskripsi
Contoh:
#include <iostream>
#include <conio.h>
int main()
{
int x,y;
x=6;
y=7;
Hitung(x,y);
getch();
}
Prosedur Dengan Parameter Keluaran
Pada Algoritma
deskripsi
Contoh:
#include <iostream>
#include <conio.h>
int main()
{
int x,y,z;
Hitung(x,y,z);
getch();
}
Prosedur Dengan Parameter Masukan/Keluaran
Pada Algoritma
1. Cara memanggil (dari algoritma/program utama)
DEKLARASI
Procedure namaprosedur(input/output namaparameter
: type)
DESKRIPSI
namaprosedur(namaparameter)
2. Cara mendifinisikan:
Procedure namaprosedur(input/output namaparameter :
type)
{ kondisi awal : … }
{ kondisi akhir : … }
deklarasi lokal
deskripsi
Contoh:
#include<iostream>
#include<conio.h>
procedure HitungLuasSegitiga
{ Menghitung luas segitiga dengan rumus L = (alas x tinggi)/2 }
{ K.Awal : sembarang }
{ K.Akhir : luas segitiga tercetak. }
DEKLARASI
alas : real { panjang alas segitiga, dalam cm }
tinggi : real { tinggi segitiga, dalam cm }
luas : real { luas segitiga, dalam cm2 }
DESKRIPSI
read(alas,tinggi)
luas (alas * tinggi)/2
write(luas)
1.Contoh translasi prosedur tanpa parameter
Algoritma :
Program utama
Algoritma Segitiga
{ Menghitung luas N buah segitiga. }
DEKLARASI
i, N : integer
procedure HitungLuasSegitiga
{ Menghitung luas segitiga dengan rumus L =(alas x tinggi)/2 }
DESKRIPSI:
read(N) { tentukan banyaknya segitiga }
for i 1 to N do
HitungLuasSegitiga
endfor
1.Contoh translasi prosedur tanpa parameter
ALGORITMA :
Prosedur
DEKLARASI
{ tidak ada }
DESKRIPSI
luas (alas * tinggi)/2
3. Contoh translasi prosedur dengan parameter keluaran
#include <iostream>
#include <conio.h>
DEKLARASI
temp : integer { peubah Bantu }
DESKRIPSI
temp A { simpan nilai A ke dalam temp }
AB { isikan nilai B ke dalam A }
B temp { isikan nilai temp ke dalam B }
4. Contoh translasi prosedur dengan parameter
masukan / keluaran
Call by Value
#include<iostream>
#include<conio.h>
Call by reference
#include<iostream>
#include<conio.h>