Assalamu'alaikum Wr. Wb., Selamat Datang, Jumpa Lagi Dengan Saya " ADI SUSANTO "

Jumat, 19 November 2010

PASCAL "Konversi Suhu"


PASCAL “ Konversi Suhu”



{Progam KonversiSuhu}
uses Wincrt;

var InpSuhu           :real;{C=Celcius, R=Reamur, F=Farhenheit, K=Kelvin}
OutC, OutR, OutF, OutK:real;
jenisSuhu              :char;
InpSuhuString          :string; {var penampung input suhu dalam string}
tempSuhu               :real; {var sementarauntuk konver string ke real}
ErrCode                :integer;{var untuk penampung error saat konversi string ke real}

   label 100,200;
{progam utama}
begin
     {menu}
     100:{label 100}

     write ('Masukkan 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 ('Masukkan besar suhu :');
     readln(InpSuhuString);
     val(InpSuhuString,inpSuhu,Errcode);
         if Errcode<>0 then
         begin;
         writeln('Data suhu yang dimasukkan tidak valid, masukkan 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;
         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;
        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;
        if(JenisSuhu= 'K') then {Jika input suhu dalam kelvin}
                begin;
                      OutC:=InpSuhu - 273;
                      OutR:=(InpSuhu - 273) * 4/5;
                      OutF:=((InpSuhu - 2730) * 9/5) + 32;

                      writeln('Suhu dalam Celcius    =',OutC:6:2);
                      writeln('Suhu dalam Reamur     =',OutR:6:2);
                      writeln('Suhu dalam Fahrenheit =',OutK:6:2);
                end;
                    readln;
     end.{end program}






                     

Tidak ada komentar:

Posting Komentar