Tutorial Belajar Pemrograman, membuat game, membuat aplikasi, membuat program, android, game maker, yii, php, CSS, HTML, java, javascript, codeigniter, jquery, Pascal, c++

Saturday, January 14, 2012

Program Pascal Untuk Konversi Desimal ke Romawi ke Biner ke Hexadesimal

Program Pascal Untuk Konversi Desimal ke Romawi ke Biner ke Hexadesimal - kali ini saya melanjutkan program saya sebelumnya yaitu konversi dari desimal ke biner, untuk kali ini saya akan membagi dengan kawan - kawan program konversi dari Desimal > Romawi > Biner > Hexadesimal. namun seperti biasa kawan - kawan jangan terlalu terpaku pada program ini, program ini semata - mata hanya untuk pengetahuan.

Baca juga : Contoh Program Sederhana PHP Untuk Mengitung Bilangan Prima

anda dapat mengetik script program yang panjang ini di bawah atau mengcopy pastenya di program pascal anda. untuk lebih jelasnya lihat script di bawah :

program konversi_desimal_romawi_biner_hexa;
uses crt;
var masukan, i : integer;

{*** Fungsi untuk mengkoversi nilai integer menjadi string ***}

function inttostr(i : longint) : string;
   var
      s: string;
   begin
      str(i, s);
      inttostr := s;
   end;

{*** Fungsi untuk mengkonversi bilangan desimal menjadi angka romawi ***}

function convroman(intangka : integer): string;
   var
      i : integer;
      intseribu, intlimaratus      : integer;
      intseratus, intlimapuluh     : integer;
      intsepuluh, intlima, intsatu  : integer;

      strseribu, strlimaratus      : string;
      strseratus, strlimapuluh     : string;
      strsepuluh, strlima, strsatu : string;
      strromawi                    : string;

   begin
      i:=0;
      strromawi    :='';   strseribu    :='';
      intseribu    := 0;   strlimaratus :='';
      intlimaratus := 0;   strseratus   :='';
      intseratus   := 0;   strlimapuluh :='';
      intlimapuluh := 0;   strsepuluh   :='';
      intsepuluh   := 0;   strlima      :='';
      intlima      := 0;   strsatu      :='';
      intsatu      := 0;

   {==========================================}

   intsatu      := intangka;
   intseribu    := intangka div 1000;
   intsatu      := intsatu - (intseribu * 1000);

   intlimaratus := intsatu div 500;
   intsatu      := intsatu - (intlimaratus * 500);

   intseratus   := intsatu div 100;
   intsatu      := intsatu - (intseratus * 100);

   intlimapuluh := intsatu div 50;
   intsatu      := intsatu - (intlimapuluh * 50);

   intsepuluh   := intsatu div 10;
   intsatu      := intsatu - (intsepuluh * 10);

   intlima      := intsatu div 5;
   intsatu      := intsatu - (intlima * 5);

   {=================================================}

   for i:= 0 to intseribu-1 do
   strseribu := strseribu + 'M';

   if intseratus <> 4 then
   for i:=0 to intlimaratus-1 do
       strlimaratus := strlimaratus + 'D';

   for i:=0 to intseratus-1 do
       strseratus := strseratus + 'C';

   if intseratus = 4 then
      if intlimaratus = 1 then
         strseratus := strromawi + 'CM'
      else
          strseratus := strromawi + 'CD';

   if intsepuluh <> 4 then
   for i:=0 to intlimapuluh -1 do
       strlimapuluh := strlimapuluh + 'L';

   for i:=0 to intsepuluh -1 do
       strsepuluh := strsepuluh + 'X';

   if intsepuluh = 4 then
      if intlimapuluh = 1 then
         strsepuluh := strromawi + 'XC'
      else
         strsepuluh := strromawi + 'XL';

   if intsatu <> 4 then
   for i:=0 to intlima-1 do
       strlima := strlima + 'V';

   for i:=0 to intsatu-1 do
      strsatu := strsatu + 'I';

   if intsatu = 4 then
      if intlima = 1 then
         strsatu := strromawi + 'IX'
      else
         strsatu := strromawi + 'IV';

   strromawi := strseribu + strlimaratus + strseratus + strlimapuluh +
                strsepuluh + strlima + strsatu;

   convroman := strromawi;

   end;

{*** Akhir function konversi romawi ***}
{======================================}

{*** Function untuk konversi desimal ke binear ***}

function binear(intangka : integer): string;

var
   intnilai : longint;
   intlen   : integer;
   j        : integer;
   strhasil : string;
   strend   : string[1];
   strsub   : string;
begin
   strhasil :='';
   strend   :='';
   strsub   :='';
   repeat
         intnilai := intangka mod 2;
         intangka := intangka div 2;
         strhasil := strhasil + inttostr(intnilai);
   until intangka = 1;
   intlen := length(strhasil);
   strend := inttostr(intangka);
   for j := intlen downto 1 do
       strsub := strsub + copy(strhasil, j, 1);
   binear := strend + strsub;
end;
{*** Akhir dari function konversi desimal ke biner ***}
{=====================================================}

{*** Function untuk mengkonversi dari desimal ke hexa desimal ***}

function hexadec(intangka :integer): string;
var
   intnilai : longint;
   intlen   : integer;
   j        : integer;
   strhasil : string;
   strhexa  : string;
   strend   : string[1];
   strsub    : string;
begin
   strhasil :='';
   strhexa  :='';
   strsub   :='';
   strend   :='';

   repeat
         intnilai := intangka mod 16;
         intangka := intangka div 16;

         case intnilai of
         10 : strhexa := 'A';
         11 : strhexa := 'B';
         12 : strhexa := 'C';
         13 : strhexa := 'D';
         14 : strhexa := 'E';
         15 : strhexa := 'F';
         else
             strhexa := inttostr(intnilai);
         end;
             strhasil := strhasil + strhexa;
         until intangka < 16;
         intlen := length(strhasil);
         strend := inttostr(intangka);

         for j := intlen downto 1 do
             strsub := strsub + copy(strhasil, j, 1);
         hexadec := strend + strsub;
end;

{*** Akhir dari Function untuk mengkonversi desimal ke hexadesimal ***}
{=====================================================================}

{*** Program Utama ***}
{=====================================================================}
begin
clrscr;
textcolor(10);
write('Masukan nilai yang akan di konversi :');
read(masukan);
writeln('Romawi : ',convroman(masukan));
writeln('Biner : ',binear(masukan));
writeln('Hexadesimal : ',hexadec(masukan));
for i :=0 to 4 do
writeln(' ');
write('{==========Copyright by @Jin_Toples==========}');
read(masukan);
end.

Program Pascal Untuk Konversi Desimal ke Romawi ke Biner ke Hexadesimal anda sekarang sudah selesai, baca juga tutorial program pascal lainnya.

Terima Kasih Telah Mengunjungi Blog Sederhana Ini.

Di Mohon Apabila Anda Ingin Mengcopas Artikel Pada Blog ini Cantumkan URL Sumber.

Sebagai Pengunjung Yang Baik Anda Dapat Meninggalkan Komentar di Blog Sederhana Ini.

Share this post

0 komentar

:) :) :-) :-) :)) :)) =)) =)) :( :( :-( :-( :(( :(( :d :d :-d :-d @-) @-) :p :p :o :o :>) :>) (o) (o) [-( [-( :-? :-? (p) (p) :-s :-s (m) (m) 8-) 8-) :-t :-t :-b :-b b-( b-( :-# :-# =p~ =p~ :-$ :-$ (b) (b) (f) (f) x-) x-) (k) (k) (h) (h) (c) (c) cheer cheer

 
© Jin Toples Programming
Designed by BlogThietKe Cooperated with Duy Pham
Released under Creative Commons 3.0 CC BY-NC 3.0