Sabtu, 19 Mei 2012

PROGRAM KONVERSI SUHU

Kali ini saya akan memberikan suatu program TPW Konversi suhu. Seperti cara menghitung suhu yang telah dipelajari pada SD, SMP atau pun SMA, program ini hanya membantu untuk menghitung suhu saja.

Program KonversiSuhu;
uses wincrt;
var InpSuhu:real; {C=Celcius, R=Reamur, F=Fahrenheit, K=Kelvin}
    OutC, OutR, OutF, OutK:real;
    JenisSuhu:char;
    InpSuhuString:string; {var penampung input suhu dalam string}
    tempSuhu:real;        {var sementara untuk konver string ke real}
    ErrCode:integer;      {var untuk menampung error saat konversi string ke real}

label 100,200;

{program utama}
begin
     {menu}
     100: {label 100}
     write('Masukan jenis suhu C/R/F/K  : ');
     readln(JenisSuhu);
     JenisSuhu:=upcase(JenisSuhu); {mengubah jenis suhu ke upper case}

     if (JenisSuhu <> 'C') then
        if (JenisSuhu <> 'R' )  then
           if (JenisSuhu <> 'F' ) then
              if (JenisSuhu <> 'K' ) then
              begin
                 writeln ('Jenis suhu salah, silahkan ulangi!');
                 writeln;
                 goto 100;
              end;

     200: {label 200}
     write('Masukan besar suhu          : ');
     readln(InpSuhuString);
     val(InpSuhuString,inpSuhu,ErrCode);
     if ErrCode <> 0 then
     begin
        writeln('Data suhu yang dimasukan tidak valid, masukan data numerik!');
        writeln;
        goto 200;
     end;

     writeln;

     { hitung konversi suhu}

     writeln('Hasil Konversi Suhu, Untuk Suhu ', inpSuhu:6:2,' ',JenisSuhu);
     writeln('--------------------------------------');
     if (JenisSuhu = 'C') then {jika input suhu dalam celcius}
     begin
          OutR:=InpSuhu * 4/5;
          OutF:=(InpSuhu *9/5) + 32;
          OutK:=InpSuhu + 273;

          writeln('Suhu dalam Reamur      = ', OutR:6:2);
          writeln('Suhu dalam Fahrenheit  = ', OutF:6:2);
          writeln('Suhu dalam Kelvin      = ', OutK:6:2);
     end
     else if (JenisSuhu = 'R')  then  {jika input suhu dalam reamur}
     begin
          OutC:=InpSuhu * 5/4;
          OutF:=(InpSuhu * 9/4) + 32;
          OutK:=(InpSuhu * 5/4) + 273;

          writeln('Suhu dalam Celcius     = ', OutC:6:2);
          writeln('Suhu dalam Fahrenheit  = ', OutF:6:2);
          writeln('Suhu dalam Kelvin      = ', OutK:6:2);
     end
     else if (JenisSuhu = 'F') then  {jika input suhu dalam fahrenheit}
     begin
          OutC:=InpSuhu * 5/9;
          OutR:=(InpSuhu * 4/9) + 32;
          OutK:=(InpSuhu * 5/9) + 273;

          writeln('Suhu dalam Celcius     = ', OutC:6:2);
          writeln('Suhu dalam Reamur      = ', OutR:6:2);
          writeln('Suhu dalam Kelvin      = ', OutK:6:2);
     end
     else if (JenisSuhu = 'K') then  {jika input suhu dalam kelvin}
     begin
          OutC:=InpSuhu - 273;
          OutR:=(InpSuhu - 273) * 4/5;
          OutF:=((InpSuhu - 273) * 9/5) + 32;

          writeln('Suhu dalam Celcius     = ', OutC:6:2);
          writeln('Suhu dalam Reamur      = ', OutR:6:2);
          writeln('Suhu dalam Fahrenheit  = ', OutF:6:2);
     end;
     readln;
end.
Maka hasilnya akan seperti berikut

Cara kerja program ini sama seperti penghitung suhu yang diajarkan disekolah, namun ini sangat membantu anda untung hitung suhu dan sangat cocok untuk anda yang suka menghitung suhu dengan cepat

Tidak ada komentar:

Posting Komentar

Tulis pertanyaan dan komentar anda disini