Program Konversi_Bilangan_Desimal_ke_Biner;
uses wincrt;
var
des,rita :integer;
bin :string;
lagi :char;
begin
repeat
clrscr;
write('Masukkan bilangan Desimal =');read(des);
rita:=des;
bin:=' ';
repeat
if(des mod 2 =0) then
bin:='0'+bin
else
bin:='1'+bin;
des:=des div 2;
until des = 0;
writeln(' (',rita,') desimal =' ,bin,' (biner)');
write('Lagi ...... [Y/T]');lagi:=upcase(readkey);
writeln(lagi);
until lagi <> 'Y';
end.
Program Konversi_Bilangan_Desimal_ke_Heksadesimal;
Uses WinCrt;
Var
des,desi : integer;
Heks,temp : String;
Begin
Write('Masukkan Suatu Bilangan Desimal :');Readln(des);
desi:=des;
Heks:='';
repeat
if (des mod 16 < 10) then Heks:=chr(48+ des mod 16)+Heks
else Heks:=chr(55+ des mod 16)+Heks;
des:=des div 16;
writeln(des:4,Heks:20);
until des=0;
writeln('(',desi,') desimal =',Heks,' (Heksadesimal)');
end.
Program konversi_bilangan_heksadesimal_ke_desimal;
Uses WinCrt;
Var
des,desi : string;
i, z,j,jlh,jlh1,a,z1,a1,K : longint;
x,y : integer;
Begin
Write('Masukkan Bilangan Heksadesimal :');Readln(des);
desi:=des;
writeln(des);
jlh:=0;
K:=0;
for i:= length(des) downto 1 do
begin
if (des[i] in ['A','B','C','D','E','F']) THEN
begin
a:=ord(des[i])-55;
a1:=i-1;
if i= length(des) then z:=a
else
begin
z1:=1;
K:=K+1;
for j:=1 to K do
z1:=z1*16;
z:=z1*a;
writeln(z1);
end;
end
else
begin
val(des[i],x,y);
if i= length(des) then z:=x
else BEGIN
K:=K+1;
if x=0 then z:=0
else
begin
z1:=1;
for j:=1 to K do
z1:=z1*16;
z:=x*z1;
end;
end; END;
Jlh:=jlh+z
end;
writeln('(',desi,') Heksadesimal =',jlh,' (desimal)');
end.
Program konversi_bilangan_desimal_ke_romawi;
Uses WinCrt;
Const
Rom : array [1..13] of String =
('M','CM','D','CD','C','XC','L','XL','X','IX','V','IV','I');
Des : array [1..13] of integer =
(1000,900,500,400,100,90,50,40,10,9,5,4,1);
Var
Bil,i,Bil1 : Integer;
Roma : String;
Begin
Write('Masukkan Suatu Bilangan [1..3999] : ');
Readln(Bil);
Bil1 := Bil;
if (Bil > 0) and (Bil < 4000) then
Begin
For i:=1 to 13 do
Begin
while (Bil >= Des[i]) do
Begin
Bil := Bil - Des[i];
Roma := Roma + Rom[i]
End;
End;
Write('Desimal ',Bil1,' Romawinya ',Roma)
end
else
Writeln('Tidak Diketahui Simbol Romawinya.....');
End.
Program Koversi_nilai;
uses wincrt;
var
nilai :integer;
lagi :char;
begin
repeat
clrscr;
Write('Masukkan nilai :');readln(nilai);
case nilai of
81..100 :writeln('A');
61..80 :writeln('B');
41..60 :writeln('C');
21..40 :writeln('D');
0..20 :writeln('E');
else
writeln('Salah nilai');
end;
write('Lagi.....[Y/T]');lagi:=upcase(readkey);
writeln(lagi);
until lagi <> 'Y';
end.
Tidak ada komentar:
Posting Komentar