Program Terbilang Rekursif untuk membaca angka dengan pascal


program terbilang_rekursi;
uses
wincrt;
function terbilang(x:longint):string;
function bilang(x:longint):string;
begin
case x of
0:bilang:='';
1:bilang:='satu';
2:bilang:='dua';
3:bilang:='tiga';
4:bilang:='empat';
5:bilang:='lima';
6:bilang:='enam';
7:bilang:='tujuh';
8:bilang:='delapan';
9:bilang:='sembilan';
10:bilang:='sepuluh';
11:bilang:='sebelas';
end;
end;

begin
if x<12 then
terbilang := ' ' + bilang(x)

else if x<20 then
terbilang:=terbilang(x-10)+'belas'

else if x<100 then
terbilang:=terbilang(x div 10)+'puluh'+terbilang(x mod 10)
else if x<200 then
terbilang:='seratus'+terbilang(x-100)
else if x<1000 then
terbilang:=terbilang(x div 100)+'ratus'+terbilang(x mod 100)
else if x<2000 then
terbilang:='seribu'+terbilang(x-1000)
else if x<1000000 then
terbilang:=terbilang(x div 1000)+'ribu'+terbilang(x mod 1000)
else if x<1000000000 then
terbilang:=terbilang(x div 1000000)+'juta'+terbilang(x mod 1000000)
else
terbilang:=terbilang(x div 1000000000)+'milyar'+terbilang(x mod 1000000000);
end;
var
i:longint;
lanjut:char;
begin
repeat
write('masukkan angka:');readln(i);
writeln('terbilang:',terbilang(i));
write('Lagi? (Y/T)');readln(lanjut);
until (lanjut='t')or(lanjut='T');
end.


2 komentar:

  1. mantap gan,aku repuest program pascal tentang perulangan terus yang untuk procedure ya gan,please..

    BalasHapus

Diberdayakan oleh Blogger.