Senin, 21 Desember 2015

Program procedure Dan Function


Procedure dan Fungsi pada Pascal

Baik kali ini kita masuk kebagian procedure dan fungsi di pascal.
tapi sebelum membahas lebih jauh kita kenali dulu kira-kira apa sih perbedaan procedure dan fungsi di pascal.
perbedaannya yaitu.
1. Prosedur diawali dengan dengan kata procedure untuk mendeklarasikannya
contoh : procedure hitung_angka;
kalau fungsi di awali dengan kata function
function hitung_bilangan: integer;
2. Procedure tidak mengembalikan nilai ke program utama, sedangkan fungsi akan mengembalikan nilai ke program utama, itu sebabnya fungsi harus ada tipe datanya (integer, char atau string).
3. Procedure outputnya diletakkan di dalam procedure, kalau fungsi outputnya di letakkan di program utama.
4. Prosedur di panggil diprogram utama dengan menuliskan nama procedure tersebut di program utama. contoh :hitung_bilangan;
Fungsi di panggil dengan memasukkan ke suatu variabel. atau bisa juga dengan langsung menuliskannya di program utama.
contoh. hasil:= hitung_bilangan(a,b);
atau write(‘hasilnya adalah ‘, hitng_bilangan(a,b));
baik langsung saja ke contoh..
</pre>
<blockquote>program aritha_pascal;
uses wincrt;

procedure nama;
var nm: string;

begin
write('masukkan nama anda ');
readln(nm);
write('haloo ', nm);
end;

begin
 writeln('-======Program Procedure Input Nama======-');
nama;
 end.</blockquote>
<pre>

Procedure dengan parameter Input dan parameter Output

kalau kita lihat contoh program sebelumnya perintah input read(nama); dan output write(nama); berada di procedure yang sama. nah bagai mana caranya apabila kita membaca input di procedure a. kemudian menampilkannya di procedure b.
untuk melakukan itu kita membutuhkan yang namanya parameter. parameter ada 2 parameter input yang berfungsi sebagai inputan untuk procedure tesebut. dan yang kedua adalah parameter output. yang berufngsi untuk memberikan output pada variabel yang di parameterkan.
</pre>
<blockquote>program widy_pascal;

uses wincrt;

procedure inputnama <span style="color: red;" color="red">(var nm:string)</span>;
begin
write('masukkan nama anda ');
readln(nm);
end;

procedure tampilnama <span style="color: blue;" color="blue">(nm:string)</span>;
begin
write('haloo ',nm);
end;


var nama:string;
begin
 writeln('-======Program Procedure Input Nama======-');
inputnama(nama);
tampilnama(nama);

 end.</blockquote>
<pre>
pada prosedur inputnama tulisan yang berwana merah (var nm:string) adalah parameter output (parameter by reference). dimana nama yang di inputkan di dalam procedur akan menjadi output pada program utama sehingga di program utama nama yang telah di inpukan tadi bisa digunakan. ciri2 parameter output adalah dengan adanya var pada (var nm:string)
sedangkan untuk parameter input tidak menggunakan var. lihat coding di procedure tampilnama yang berwana biru (nm:string) nah in adalah contoh parameter input (parameter by value)
contoh lain
</pre>
<blockquote>program aritha_pascal;
uses wincrt;

procedure inputan(alas: integer; tinggi:integer; var luas:real);
begin
write('masukkan nilai alas : '); readln(alas);
write('masukkan nilai tinggi : '); readln(tinggi);
luas:= alas*tinggi/2;
end;

var a,t:integer;
luas : real;
begin
 writeln('-======Program Procedure Luas segitiga======-');
 writeln;
 inputan(a,t,luas);
 write('luas segitiga adalah : ', luas:0:2);
 end.</blockquote>
<blockquote>

Fungsi

</pre>
<blockquote>program aritha_pascal;
uses wincrt;

function luassegitiga(alas: integer; tinggi:integer) : real;
var luas:real;
begin
luas:= alas*tinggi/2;
luassegitiga:= luas;
end;


var a,t:integer;
luas : real;

begin
 writeln('-======Program Fungsi Luas segitiga======-');
 writeln;
 write('masukkan nilai alas : '); readln(a);
 write('masukkan nilai tinggi : '); readln(t);

 write('luas segitiga adalah : ', <span style="color: red;" color="red">luassegitiga(a,t):0:2</span>);

 end.</blockquote>
<pre>
tulisan yang berwarna merah adalah pemanggilan fungsi yang memberikan nilai luas dari segitiga.
kayaknya segitu aja deh ya contoh buat fungsi dan procedure. semoga bermanfaat :)

Artikel Terkait



0 komentar:

Posting Komentar

Silahkan Isikan Komentar anda karena komentar anda bisa membantu saya !!!