mình mới thử vài test thôi :)) bạn copy vô Pascal rồi thử kỹ lại dùm mình nha :v :v
var n,hc:integer;
function chuyen(x:byte):string;
begin
chuyen:='';
if x=1 then chuyen:='mot'; if x=4 then chuyen:='bon'; if x=7 then chuyen:='bay';
if x=2 then chuyen:='hai'; if x=5 then chuyen:='nam'; if x=8 then chuyen:='tam';
if x=3 then chuyen:='ba'; if x=6 then chuyen:='sau'; if x=9 then chuyen:='chin';
end;
begin
readln(n);
hc:= ((n mod 100)-(n mod 10)) div 10;
if n mod 100 >= 10 then
if n mod 10 = 0 then
write(chuyen(n div 100),' tram ',chuyen(hc),' muoi ')
else if hc >1 then write(chuyen(n div 100),' tram ', chuyen(hc),' muoi ',chuyen(n mod 10))
else write (chuyen(n div 100),' tram muoi ',chuyen(n mod 10));
if n mod 100=0 then write(chuyen(n div 100),' tram');
if (n mod 100<10) and (n mod 100>0) then write(chuyen(n div 100),' tram linh ' ,chuyen(n mod 10));
end.