Chỉ tính số dương
program bai_giai;
uses crt;
var n:longint;
{---HAM-KT---}
function kt(k:longint):boolean;
var t,i:byte;
begin
t:=0;
while k>0 do
begin
i:=k mod 10;
t:=t+i;
k:=k div 10;
end;
if t=10 then kt:=true else kt:=false;
end;
{---CT-chinh---}
BEGIN
clrscr;
write('Nhap N= '); readln(n);
n:=n-1;
while (kt(n)=false) and (n>=19) do n:=n-1;
if n<19 then write('Khong co so nao hop le')
else write('So thoa man la: ',n);
readln;
end.
Tính cả số âm
program bai_giai;
uses crt;
var n:longint;
{---HAM-KT---}
function kt(k:longint):boolean;
var t,i:byte;
begin
t:=0;
while k>0 do
begin
i:=k mod 10;
t:=t+i;
k:=k div 10;
end;
if t=10 then kt:=true else kt:=false;
end;
{---CT-chinh---}
BEGIN
clrscr;
write('Nhap N= '); readln(n);
n:=n-1;
while (kt(n)=false) do n:=n-1;
write('So thoa man la: ',n);
readln;
end.