program konversi suhu (procedure)

Saya mencoba membuat program konversi suhu menggunakan procedure.
Didalam program ini terdapat percabangan case of else dan perulangan repeat until. Coba pahami kegunaannya.

Program Konversi_Suhu;
Uses WinCrt;

var f,c,r : real;
     a,ul  : char;
procedure farein_celcius;
begin
   Writeln('Program Konversi Fareinheit Ke Celcius');
   Writeln('======================================');
   Writeln;
   Write('Masukan Suhu dalam Farenheit: ');readln(f);
   c:=5/9*(f-32);
   Writeln;
   Writeln('Jadi Suhu Dalam Celcius Adalah: ',c:4:2);
end;

procedure farein_reamur;
begin
   Writeln('Program Konversi Fareinheit Ke Reamur');
   Writeln('=====================================');
   Writeln;
   Write('Masukan Suhu dalam Farenheit: ');readln(f);
   r:=4/9*(f-32);
   Writeln;
   Writeln('Jadi Suhu Dalam Reamur Adalah: ',r:4:2);
end;

procedure celcius_farein;
begin
   Writeln('Program Konversi Celcius Ke Fareinheit');
   Writeln('======================================');
   Writeln;
   Write('Masukan Suhu dalam Celcius: ');readln(c);
   f:=(9/5)*c+32;
   Writeln;
   Writeln('Jadi Suhu Dalam Fareinheit Adalah: ',f:4:2);
end;

procedure celcius_reamur;
begin
   Writeln('Program Konversi Celcius ke Reamur');
   Writeln('==================================');
   Writeln;
   Write('Masukan Suhu dalam Celcius: ');readln(c);
   r:=(4/5)*c;
   Writeln;
   Writeln('Jadi Suhu Dalam Reamur Adalah: ',r:4:2);
end;

procedure reamur_celcius;
begin
   writeln('Program Konversi Reamur ke Celcius');
   Writeln('==================================');
   Writeln;
   Write('Masukan Suhu dalam Reamur: ');readln(r);
   c:=(5/4)*r;
   Writeln;
   Writeln('Jadi Suhu Dalam Celcius Adalah: ',c:4:2);
end;

procedure reamur_farein;
begin
   writeln('Program Konversi Reamur ke Fareinheit');
   Writeln('=====================================');
   Writeln;
   Write('Masukan Suhu dalam Reamur: ');readln(r);
   f:= (9/4)*r+32;
   Writeln;
   Writeln('Jadi Suhu Dalam Fareinheit Adalah: ',f:4:2);
end;

begin
  repeat
  clrscr;
    writeln ('Program konversi suhu');
    writeln;
    writeln ('1. fareinheit - celcius');
    writeln ('2. fareinheit - reamur');
    writeln ('3. celcius -  reamur');
    writeln ('4. celcius - fareinheit');
    writeln ('5. reamur - celcius');
    writeln ('6. reamur - farenheit');
    writeln;

    write ('pilih nomor konversi : '); read (a);
    writeln;
 
case a of
   '1' : farein_celcius;
   '2' : farein_reamur;
   '3' : celcius_reamur;
   '4' : celcius_farein;
   '5' : reamur_celcius;
   '6' : reamur_farein;
else
   writeln ('Nomor yang anda masukkan salah');
end;

   Writeln;Writeln;
   Write('Mau Coba Lagi [Y/T]: ');Readln(ul);
  Until Upcase(ul)'Y';
End.


program konversi suhu ini saya buat menggunakan prosedur supaya mudah dibaca dan dipahami.
variabelnya menggunakan variabel global karana semua variabel di prosedur maupun di program utamasama.
saya menggunakan repeat until di program utama supaya program ini dapat diulang berulangkali sampaipengguna mengetikkan huruf T.
dalam percabangannya saya menggunakan case of karena lebih singkat daripada if then else. kalau menggunakan if then else percabangannya bentuknya seperti ini:

if a=’1′ then
farein_celcius
else
if a=’2′ then
farein_reamur
else
if a=’3′ then
celcius_reamur
else
if a=’4′ then
celcius_farein
else
if a=’5′ then
reamur_celcius
else
if a=’6′ then
reamur_farein;

karena menurutku terlalu panjang, maka saya menggunakan case of untuk percabangan atau pemilihannya.
dalam pemilihannya angka berada diantara petik satu karena variabelnya dalam bentuk char,
bila variabelnya dalam bentuk integer maka angka-angkanya tidak perlu diberi tanda petik, saya menggunakan char karena bitnya lebih rendah.

logikanya.

pertama program akan menampilkan

Program konversi suhu

1. fareinheit – celcius
2. fareinheit – reamur
3. celcius – reamur
4. celcius – fareinheit
5. reamur – celcius
6. reamur – farenheit

pilih nomor konversi :

nomor konversi kita isikan dengan angka 1-6 untuk memilih program konversi
bila kita memasukkan angka 5 maka yang keluar adalah program konversi reamur ke celcius
kerena kita mengetikkan 5 maka program utama memanggil prosedur konversi reamur-celcius
karena dalam percabangan/pemilihan, angka lima adalah prsedur reamur-celcius.

selanjutnya tampilannya seperti ini :

Program konversi suhu

1. fareinheit – celcius
2. fareinheit – reamur
3. celcius – reamur
4. celcius – fareinheit
5. reamur – celcius
6. reamur – farenheit

pilih nomor konversi : 5

Program Konversi Reamur ke Celcius
==================================

Masukan Suhu dalam Reamur : 40

Jadi Suhu Dalam Reamur adalah: 50.00

Mau Coba Lagi [Y/T]:

bila kita ketikkan y, maka program akan mulai lagi seperti yang pertama.

Program konversi suhu

1. fareinheit – celcius
2. fareinheit – reamur
3. celcius – reamur
4. celcius – fareinheit
5. reamur – celcius
6. reamur – farenheit

pilih nomor konversi :

dan kita tinggal memilih program konversi kembali.
bila anda ingin menghentikan program maka ketikkan t. setelah itu program akan
berhenti.

Mau Coba Lagi [Y/T]:
saya menggunakan repeat until supaya program dapat diulang-ulang selama ul tidak samadengan t maka program akan diulangi terus. Ini merupaka salah satu bentuk perulangan.

bila masih kurang mengerti kirim aja @mail di. saipul_bahrie@yahoo.co.id
saya tunggu kritik dan sarannya.
Oh ya, bagi temen-temen yang ingin mencari modul pemrograman pascal ataupun c++ di internet, cari aja di website: ilmukomputer.org
Semoga bermanfaat.

sumber: ilmukomputer.com, kumpulan program pascal. Decky Hendarsyah.
dengan pengembangan sendiri.

Tinggalkan Balasan

Isikan data di bawah atau klik salah satu ikon untuk log in:

Logo WordPress.com

You are commenting using your WordPress.com account. Logout / Ubah )

Gambar Twitter

You are commenting using your Twitter account. Logout / Ubah )

Foto Facebook

You are commenting using your Facebook account. Logout / Ubah )

Foto Google+

You are commenting using your Google+ account. Logout / Ubah )

Connecting to %s

%d blogger menyukai ini: